{"id":"bd724f03855dd49b7d90a3a18df67c0f","_format":"hh-sol-build-info-1","solcVersion":"0.8.7","solcLongVersion":"0.8.7+commit.e28d00a7","input":{"language":"Solidity","sources":{"ado-contracts/contracts/interfaces/IERC2362.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.5.0 <0.9.0;\n\n/**\n* @dev EIP2362 Interface for pull oracles\n* https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md\n*/\ninterface IERC2362\n{\n\t/**\n\t * @dev Exposed function pertaining to EIP standards\n\t * @param _id bytes32 ID of the query\n\t * @return int,uint,uint returns the value, timestamp, and status code of query\n\t */\n\tfunction valueFor(bytes32 _id) external view returns(int256,uint256,uint256);\n}"},"contracts/supra-oracles/SupraValueFeedExample.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity ^0.8.7;\n\ninterface ISupraSValueFeed {\n    function checkPrice(\n        string memory marketPair\n    ) external view returns (int256 price, uint256 timestamp);\n}\n\ncontract SupraValueFeedExample {\n    ISupraSValueFeed internal sValueFeed;\n\n    constructor() {\n        sValueFeed = ISupraSValueFeed(0x7f003178060af3904b8b70fEa066AEE28e85043E);\n    }\n\n    function getPrice(string memory marketPair) external view returns (int) {\n        (int price /* uint timestamp */, ) = sValueFeed.checkPrice(marketPair);\n        return price;\n    }\n}\n"},"contracts/test/MockWitnetRandomness.sol":{"content":"//SPDX-License-Identifier: MIT\npragma solidity >=0.5.0 <0.9.0;\n\nimport \"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol\";\n"},"contracts/test/MockWitnetRouter.sol":{"content":"//SPDX-License-Identifier: MIT\npragma solidity >=0.5.0 <0.9.0;\n\ncontract MockWitnetRouter {\n    function valueFor(bytes32 _id) public view returns (int256,uint256,uint256) {\n        return (10, 10, 10);\n    }\n}"},"contracts/witnet-requests/coinPrice.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n// For the Witnet Request Board OVM-compatible (Optimism) \"trustable\" implementation (e.g. BOBA network),\n// replace the next import line with:\n// import \"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBoba.sol\";\nimport \"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\";\nimport \"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\";\n\n// The bytecode of the klayPrice query that will be sent to Witnet\ncontract coinPriceRequest is WitnetRequestInitializableBase {\n  function initialize() public {\n    WitnetRequestInitializableBase.initialize(hex\"0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01\");\n  }\n}\n"},"contracts/witnet-requests/postAPI.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n// For the Witnet Request Board OVM-compatible (Optimism) \"trustable\" implementation (e.g. BOBA network),\n// replace the next import line with:\n// import \"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBoba.sol\";\nimport \"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\";\nimport \"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\";\n\n// The bytecode of the postAPIExample query that will be sent to Witnet\ncontract postAPIRequest is WitnetRequestInitializableBase {\n  function initialize() public {\n    WitnetRequestInitializableBase.initialize(hex\"0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01\");\n  }\n}\n"},"contracts/WitnetPriceFeed.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity >=0.5.0 <0.9.0;\n\nimport \"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol\";\n\ncontract WitnetPriceFeed {\n    IWitnetPriceRouter public immutable witnetPriceRouter;\n\n    /*\n     * Network: Kaia Kairos\n     * WitnetPriceRouter: 0xeD074DA2A76FD2Ca90C1508930b4FB4420e413B0\n     **/\n    constructor(IWitnetPriceRouter _router) {\n        witnetPriceRouter = _router;\n    }\n\n    /*\n    * @param _id4 - pricefeed id. \n    * id4 can be found here https://docs.witnet.io/smart-contracts/witnet-data-feeds/addresses/kaia-price-feeds\n    * \n    **/\n    function getPrice(bytes4 _id4) public view returns (int256 _lastPrice, uint256 _lastTimestamp) {\n        (_lastPrice, _lastTimestamp,) = witnetPriceRouter.valueFor(_id4);\n    }\n}"},"contracts/WitnetRandom.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity >=0.5.0 <0.9.0;\n\nimport \"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\";\n\ncontract WitnetRandom {\n    uint32 public randomness;\n    uint256 public latestRandomizingBlock;\n    IWitnetRandomness public immutable witnetRandomness;\n\n    /*\n     * Network: Kaia Kairos\n     * WitnetRandomness: 0xb4b2e2e00e9d6e5490d55623e4f403ec84c6d33f\n     **/\n    constructor(IWitnetRandomness _witnetRandomness) {\n        assert(address(_witnetRandomness) != address(0));\n        witnetRandomness = _witnetRandomness;\n    }\n\n    receive() external payable {}\n\n    function requestRandomness() external payable {\n        latestRandomizingBlock = block.number;\n        uint _usedFunds = witnetRandomness.randomize{ value: msg.value }();\n        if (_usedFunds < msg.value) {\n            payable(msg.sender).transfer(msg.value - _usedFunds);\n        }\n    }\n\n    function fetchRandomNumber() external {\n        assert(latestRandomizingBlock > 0);\n        randomness =  witnetRandomness.random(type(uint32).max, 0, latestRandomizingBlock);\n    }\n}"},"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../UsingWitnet.sol\";\nimport \"../interfaces/IWitnetRandomness.sol\";\nimport \"../requests/WitnetRequestRandomness.sol\";\n\n/// @title WitnetRandomness: A trustless randomness generator and registry, based on the Witnet oracle. \n/// @author Witnet Foundation.\ncontract WitnetRandomness\n    is\n        IWitnetRandomness,\n        UsingWitnet,\n        Clonable\n{\n    WitnetRequestRandomness public witnetRandomnessRequest;\n    uint256 public override latestRandomizeBlock;\n\n    mapping (uint256 => RandomizeData) internal __randomize_;\n    struct RandomizeData {\n        address from;\n        uint256 prevBlock;\n        uint256 nextBlock;\n        uint256 witnetQueryId;\n    }\n\n    /// Include an address to specify the immutable WitnetRequestBoard entrypoint address.\n    /// @param _wrb The WitnetRequestBoard immutable entrypoint address.\n    constructor(WitnetRequestBoard _wrb)\n        UsingWitnet(_wrb)\n    {\n        witnetRandomnessRequest = new WitnetRequestRandomness();\n        witnetRandomnessRequest.transferOwnership(msg.sender);\n    }\n\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \n    /// transaction gas price as the one given.\n    function estimateRandomizeFee(uint256 _gasPrice)\n        public view\n        virtual override\n        returns (uint256)\n    {\n        return _witnetEstimateReward(_gasPrice);\n    }\n\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\n    /// @param _block Block number whose randomness request is being queried for.\n    /// @return _from Address from which the latest randomness request was posted.\n    /// @return _id Unique request identifier as provided by the WRB.\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\n    function getRandomizeData(uint256 _block)\n        external view\n        virtual override\n        returns (\n            address _from,\n            uint256 _id,\n            uint256 _prevBlock,\n            uint256 _nextBlock\n        )\n    {\n        RandomizeData storage _data = __randomize_[_block];\n        _id = _data.witnetQueryId;\n        _from = _data.from;\n        _prevBlock = _data.prevBlock;\n        _nextBlock = _data.nextBlock;\n    }\n\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \n    /// will recursively try to return randomness from the next non-faulty randomization request found \n    /// in storage, if any. \n    /// @dev Fails if:\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\n    /// @dev   iii. all requests in/after the given block were solved with errors.\n    /// @param _block Block number from which the search will start.\n    function getRandomnessAfter(uint256 _block)\n        public view\n        virtual override\n        returns (bytes32)\n    {\n        if (__randomize_[_block].from == address(0)) {\n            _block = getRandomnessNextBlock(_block);\n        }\n        uint256 _queryId = __randomize_[_block].witnetQueryId;\n        require(_queryId != 0, \"WitnetRandomness: not randomized\");\n        require(_witnetCheckResultAvailability(_queryId), \"WitnetRandomness: pending randomize\");\n        Witnet.Result memory _witnetResult = _witnetReadResult(_queryId);\n        if (witnet.isOk(_witnetResult)) {\n            return witnet.asBytes32(_witnetResult);\n        } else {\n            uint256 _nextRandomizeBlock = __randomize_[_block].nextBlock;\n            require(_nextRandomizeBlock != 0, \"WitnetRandomness: faulty randomize\");\n            return getRandomnessAfter(_nextRandomizeBlock);\n        }\n    }\n\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \n    /// @param _block Block number from which the search will start.\n    /// @return Number of the first block found after the given one, or `0` otherwise.\n    function getRandomnessNextBlock(uint256 _block)\n        public view\n        virtual override\n        returns (uint256)\n    {\n        return ((__randomize_[_block].from != address(0))\n            ? __randomize_[_block].nextBlock\n            // start search from the latest block\n            : _searchNextBlock(_block, latestRandomizeBlock)\n        );\n    }\n\n    /// Gets previous block in which a randomness request was posted before the given one.\n    /// @param _block Block number from which the search will start. Cannot be zero.\n    /// @return First block found before the given one, or `0` otherwise.\n    function getRandomnessPrevBlock(uint256 _block)\n        public view\n        virtual override\n        returns (uint256)\n    {\n        assert(_block > 0);\n        uint256 _latest = latestRandomizeBlock;\n        return ((_block > _latest)\n            ? _latest\n            // start search from the latest block\n            : _searchPrevBlock(_block, __randomize_[_latest].prevBlock)\n        );\n    }\n\n    /// Returns `true` only when the randomness request that got posted within given block was already\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\n    function isRandomized(uint256 _block)\n        public view\n        virtual override\n        returns (bool)\n    {\n        RandomizeData storage _data = __randomize_[_block];\n        return (\n            _data.witnetQueryId != 0 \n                && _witnetCheckResultAvailability(_data.witnetQueryId)\n        );\n    }\n\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n    /// @param _block Block number from which the search will start.\n    function random(uint32 _range, uint256 _nonce, uint256 _block)\n        external view\n        virtual override\n        returns (uint32)\n    {\n        return random(\n            _range,\n            _nonce,\n            keccak256(\n                abi.encode(\n                    msg.sender,\n                    getRandomnessAfter(_block)\n                )\n            )\n        );\n    }\n\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n    /// @param _seed Seed value used as entropy source.\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed)\n        public pure\n        virtual override\n        returns (uint32)\n    {\n        uint8 _flagBits = uint8(255 - _msbDeBruijn32(_range));\n        uint256 _number = uint256(\n                keccak256(\n                    abi.encode(_seed, _nonce)\n                )\n            ) & uint256(2 ** _flagBits - 1);\n        return uint32((_number * _range) >> _flagBits);\n    }\n\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \n    /// Only one randomness request per block will be actually posted to the WRB. Should there \n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \n    /// block randomness request according to current gas price. In both cases, all unused funds shall \n    /// be transfered back to the tx sender.\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\n    function randomize()\n        external payable\n        virtual override\n        returns (uint256 _usedFunds)\n    {\n        if (latestRandomizeBlock < block.number) {\n            // Post the Witnet Randomness request:\n            uint _queryId;\n            (_queryId, _usedFunds) = _witnetPostRequest(witnetRandomnessRequest);\n            // Keep Randomize data in storage:\n            RandomizeData storage _data = __randomize_[block.number];\n            _data.witnetQueryId = _queryId;\n            _data.from = msg.sender;\n            // Update block links:\n            uint256 _prevBlock = latestRandomizeBlock;\n            _data.prevBlock = _prevBlock;\n            __randomize_[_prevBlock].nextBlock = block.number;\n            latestRandomizeBlock = block.number;\n            // Throw event:\n            emit Randomized(\n                msg.sender,\n                _prevBlock,\n                _queryId,\n                witnetRandomnessRequest.hash()\n            );\n            // Transfer back unused tx value:\n            if (_usedFunds < msg.value) {\n                payable(msg.sender).transfer(msg.value - _usedFunds);\n            }\n        } else {\n            return upgradeRandomizeFee(block.number);\n        }\n    }\n\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \n    /// request was posted. All unused funds shall be transferred back to the tx sender.\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\n    function upgradeRandomizeFee(uint256 _block)\n        public payable\n        virtual override\n        returns (uint256 _usedFunds)\n    {\n        RandomizeData storage _data = __randomize_[_block];\n        if (_data.witnetQueryId != 0) {\n            _usedFunds = _witnetUpgradeReward(_data.witnetQueryId);\n        }\n        if (_usedFunds < msg.value) {\n            payable(msg.sender).transfer(msg.value - _usedFunds);\n        }\n    }\n\n\n    // ================================================================================================================\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\n\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\n    /// behaviour while using its own EVM storage.\n    /// @dev This function should always provide a new address, no matter how many times \n    /// @dev is actually called from the same `msg.sender`.\n    function clone()\n        public\n        virtual override\n        returns (Clonable _newInstance)\n    {\n        _newInstance = super.clone();\n        _clone(_newInstance);\n    }\n\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \n    /// behaviour while using its own EVM storage.\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\n    /// @dev no contract can be deployed more than once at the same address.\n    function cloneDeterministic(bytes32 _salt)\n        public\n        virtual override\n        returns (Clonable _newInstance)\n    {\n        _newInstance = super.cloneDeterministic(_salt);\n        _clone(_newInstance);\n    }\n\n\n    // ================================================================================================================\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\n\n    /// @dev Initializes contract's storage context.\n    function initialize(bytes memory _initData)\n        public\n        virtual override\n    {\n        require(address(witnetRandomnessRequest) == address(0), \"WitnetRandomness: already initialized\");\n        witnetRandomnessRequest = WitnetRequestRandomness(\n            abi.decode(\n                _initData,\n                (address)\n            )\n        );\n    }\n\n\n    // ================================================================================================================\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------\n\n    /// @dev Common steps for both deterministic and non-deterministic cloning.\n    function _clone(Clonable _instance) internal {\n        address _request = address(witnetRandomnessRequest.clone());\n        Ownable(_request).transferOwnership(msg.sender);\n        _instance.initialize(abi.encode(_request));\n    }\n\n    /// @dev Returns index of the Most Significant Bit of the given number, applying De Bruijn O(1) algorithm.\n    function _msbDeBruijn32(uint32 _v)\n        internal pure\n        returns (uint8)\n    {\n        uint8[32] memory _bitPosition = [\n                0, 9, 1, 10, 13, 21, 2, 29,\n                11, 14, 16, 18, 22, 25, 3, 30,\n                8, 12, 20, 28, 15, 17, 24, 7,\n                19, 27, 23, 6, 26, 5, 4, 31\n            ];\n        _v |= _v >> 1;\n        _v |= _v >> 2;\n        _v |= _v >> 4;\n        _v |= _v >> 8;\n        _v |= _v >> 16;\n        return _bitPosition[\n            uint32(_v * uint256(0x07c4acdd)) >> 27\n        ];\n    }\n\n    /// @dev Recursively searches for the number of the first block after the given one in which a Witnet randomization request was posted.\n    /// @dev Returns 0 if none found.\n    function _searchNextBlock(uint256 _target, uint256 _latest) internal view returns (uint256) {\n        return ((_target >= _latest) \n            ? __randomize_[_latest].nextBlock\n            : _searchNextBlock(_target, __randomize_[_latest].prevBlock)\n        );\n    }\n\n    /// @dev Recursively searches for the number of the first block before the given one in which a Witnet randomization request was posted.\n    /// @dev Returns 0 if none found.\n\n    function _searchPrevBlock(uint256 _target, uint256 _latest) internal view returns (uint256) {\n        return ((_target > _latest)\n            ? _latest\n            : _searchPrevBlock(_target, __randomize_[_latest].prevBlock)\n        );\n    }\n}\n"},"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"../libs/Witnet.sol\";\n\n/// @title Witnet Request Board base data model. \n/// @author The Witnet Foundation.\nabstract contract WitnetBoardData {  \n\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\n        /* keccak256(\"io.witnet.boards.data\") */\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\n\n    struct WitnetBoardState {\n        address base;\n        address owner;    \n        uint256 numQueries;\n        mapping (uint => Witnet.Query) queries;\n    }\n\n    constructor() {\n        _state().owner = msg.sender;\n    }\n\n    /// Asserts the given query is currently in the given status.\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\n      require(\n          _getQueryStatus(_queryId) == _status,\n          _getQueryStatusRevertMessage(_status)\n        );\n      _;\n    }\n\n    /// Asserts the given query was previously posted and that it was not yet deleted.\n    modifier notDeleted(uint256 _queryId) {\n        require(_queryId > 0 && _queryId <= _state().numQueries, \"WitnetBoardData: not yet posted\");\n        require(_getRequester(_queryId) != address(0), \"WitnetBoardData: deleted\");\n        _;\n    }\n\n    /// Asserts caller corresponds to the current owner. \n    modifier onlyOwner {\n        require(msg.sender == _state().owner, \"WitnetBoardData: only owner\");\n        _;    \n    }\n\n    /// Asserts the give query was actually posted before calling this method.\n    modifier wasPosted(uint256 _queryId) {\n        require(_queryId > 0 && _queryId <= _state().numQueries, \"WitnetBoardData: not yet posted\");\n        _;\n    }\n\n    // ================================================================================================================\n    // --- Internal functions -----------------------------------------------------------------------------------------\n\n    /// Gets current status of given query.\n    function _getQueryStatus(uint256 _queryId)\n      internal view\n      returns (Witnet.QueryStatus)\n    {\n      if (_queryId == 0 || _queryId > _state().numQueries) {\n        // \"Unknown\" status if queryId is out of range:\n        return Witnet.QueryStatus.Unknown;\n      }\n      else {\n        Witnet.Query storage _query = _state().queries[_queryId];\n        if (_query.response.drTxHash != 0) {\n          // Query is in \"Reported\" status as soon as the hash of the\n          // Witnet transaction that solved the query is reported\n          // back from a Witnet bridge:\n          return Witnet.QueryStatus.Reported;\n        }\n        else if (_query.from != address(0)) {\n          // Otherwise, while address from which the query was posted\n          // is kept in storage, the query remains in \"Posted\" status:\n          return Witnet.QueryStatus.Posted;\n        }\n        else {\n          // Requester's address is removed from storage only if\n          // the query gets \"Deleted\" by its requester.\n          return Witnet.QueryStatus.Deleted;\n        }\n      }\n    }\n\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\n      internal pure\n      returns (string memory)\n    {\n      if (_status == Witnet.QueryStatus.Posted) {\n        return \"WitnetBoardData: not in Posted status\";\n      } else if (_status == Witnet.QueryStatus.Reported) {\n        return \"WitnetBoardData: not in Reported status\";\n      } else if (_status == Witnet.QueryStatus.Deleted) {\n        return \"WitnetBoardData: not in Deleted status\";\n      } else {\n        return \"WitnetBoardData: bad mood\";\n      }\n    }\n\n    /// Gets from of a given query.\n    function _getRequester(uint256 _queryId)\n      internal view\n      returns (address)\n    {\n      return _state().queries[_queryId].from;\n    }\n\n    /// Gets the Witnet.Request part of a given query.\n    function _getRequestData(uint256 _queryId)\n      internal view\n      returns (Witnet.Request storage)\n    {\n        return _state().queries[_queryId].request;\n    }\n\n    /// Gets the Witnet.Result part of a given query.\n    function _getResponseData(uint256 _queryId)\n      internal view\n      returns (Witnet.Response storage)\n    {\n        return _state().queries[_queryId].response;\n    }\n\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\n    function _state()\n      internal pure\n      returns (WitnetBoardState storage _ptr)\n    {\n        assembly {\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\n        }\n    }\n\n}\n"},"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./WitnetBoardData.sol\";\n\n/// @title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\n/// @author The Witnet Foundation.\nabstract contract WitnetBoardDataACLs\n    is\n        WitnetBoardData\n{\n    bytes32 internal constant _WITNET_BOARD_ACLS_SLOTHASH =\n        /* keccak256(\"io.witnet.boards.data.acls\") */\n        0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd;\n\n    struct WitnetBoardACLs {\n        mapping (address => bool) isReporter_;\n    }\n\n    constructor() {\n        _acls().isReporter_[msg.sender] = true;\n    }\n\n    modifier onlyReporters {\n        require(\n            _acls().isReporter_[msg.sender],\n            \"WitnetBoardDataACLs: unauthorized reporter\"\n        );\n        _;\n    } \n\n    // ================================================================================================================\n    // --- Internal functions -----------------------------------------------------------------------------------------\n\n    function _acls() internal pure returns (WitnetBoardACLs storage _struct) {\n        assembly {\n            _struct.slot := _WITNET_BOARD_ACLS_SLOTHASH\n        }\n    }\n}\n"},"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../WitnetRequestBoardUpgradableBase.sol\";\nimport \"../../data/WitnetBoardDataACLs.sol\";\nimport \"../../interfaces/IWitnetRequestBoardAdmin.sol\";\nimport \"../../interfaces/IWitnetRequestBoardAdminACLs.sol\";\nimport \"../../libs/WitnetParserLib.sol\";\nimport \"../../patterns/Payable.sol\";\n\n/// @title Witnet Request Board \"trustable\" base implementation contract.\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\n/// @author The Witnet Foundation\nabstract contract WitnetRequestBoardTrustableBase\n    is \n        Payable,\n        IWitnetRequestBoardAdmin,\n        IWitnetRequestBoardAdminACLs,        \n        WitnetBoardDataACLs,\n        WitnetRequestBoardUpgradableBase        \n{\n    using Witnet for bytes;\n    using WitnetParserLib for Witnet.Result;\n    \n    constructor(bool _upgradable, bytes32 _versionTag, address _currency)\n        Payable(_currency)\n        WitnetRequestBoardUpgradableBase(_upgradable, _versionTag)\n    {}\n\n\n    // ================================================================================================================\n    // --- Overrides 'Upgradable' -------------------------------------------------------------------------------------\n\n    /// Initialize storage-context when invoked as delegatecall. \n    /// @dev Must fail when trying to initialize same instance more than once.\n    function initialize(bytes memory _initData) virtual external override {\n        address _owner = _state().owner;\n        if (_owner == address(0)) {\n            // set owner if none set yet\n            _owner = msg.sender;\n            _state().owner = _owner;\n        } else {\n            // only owner can initialize:\n            require(msg.sender == _owner, \"WitnetRequestBoardTrustableBase: only owner\");\n        }        \n\n        if (_state().base != address(0)) {\n            // current implementation cannot be initialized more than once:\n            require(_state().base != base(), \"WitnetRequestBoardTrustableBase: already initialized\");\n        }        \n        _state().base = base();\n\n        emit Upgraded(msg.sender, base(), codehash(), version());\n\n        // Do actual base initialization:\n        setReporters(abi.decode(_initData, (address[])));\n    }\n\n    /// Tells whether provided address could eventually upgrade the contract.\n    function isUpgradableFrom(address _from) external view override returns (bool) {\n        address _owner = _state().owner;\n        return (\n            // false if the WRB is intrinsically not upgradable, or `_from` is no owner\n            isUpgradable()\n                && _owner == _from\n        );\n    }\n\n\n    // ================================================================================================================\n    // --- Full implementation of 'IWitnetRequestBoardAdmin' ----------------------------------------------------------\n\n    /// Gets admin/owner address.\n    function owner()\n        public view\n        override\n        returns (address)\n    {\n        return _state().owner;\n    }\n\n    /// Transfers ownership.\n    function transferOwnership(address _newOwner)\n        external\n        virtual override\n        onlyOwner\n    {\n        address _owner = _state().owner;\n        if (_newOwner != _owner) {\n            _state().owner = _newOwner;\n            emit OwnershipTransferred(_owner, _newOwner);\n        }\n    }\n\n\n    // ================================================================================================================\n    // --- Full implementation of 'IWitnetRequestBoardAdminACLs' ------------------------------------------------------\n\n    /// Tells whether given address is included in the active reporters control list.\n    /// @param _reporter The address to be checked.\n    function isReporter(address _reporter) public view override returns (bool) {\n        return _acls().isReporter_[_reporter];\n    }\n\n    /// Adds given addresses to the active reporters control list.\n    /// @dev Can only be called from the owner address.\n    /// @dev Emits the `ReportersSet` event. \n    /// @param _reporters List of addresses to be added to the active reporters control list.\n    function setReporters(address[] memory _reporters)\n        public\n        override\n        onlyOwner\n    {\n        for (uint ix = 0; ix < _reporters.length; ix ++) {\n            address _reporter = _reporters[ix];\n            _acls().isReporter_[_reporter] = true;\n        }\n        emit ReportersSet(_reporters);\n    }\n\n    /// Removes given addresses from the active reporters control list.\n    /// @dev Can only be called from the owner address.\n    /// @dev Emits the `ReportersUnset` event. \n    /// @param _exReporters List of addresses to be added to the active reporters control list.\n    function unsetReporters(address[] memory _exReporters)\n        public\n        override\n        onlyOwner\n    {\n        for (uint ix = 0; ix < _exReporters.length; ix ++) {\n            address _reporter = _exReporters[ix];\n            _acls().isReporter_[_reporter] = false;\n        }\n        emit ReportersUnset(_exReporters);\n    }\n\n\n    // ================================================================================================================\n    // --- Full implementation of 'IWitnetRequestBoardReporter' -------------------------------------------------------\n\n    /// Reports the Witnet-provided result to a previously posted request. \n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\n    /// @dev Fails if:\n    /// @dev - the `_queryId` is not in 'Posted' status.\n    /// @dev - provided `_drTxHash` is zero;\n    /// @dev - length of provided `_result` is zero.\n    /// @param _queryId The unique identifier of the data request.\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\n    /// @param _cborBytes The result itself as bytes.\n    function reportResult(\n            uint256 _queryId,\n            bytes32 _drTxHash,\n            bytes calldata _cborBytes\n        )\n        external\n        override\n        onlyReporters\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\n    {\n        require(_drTxHash != 0, \"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\");\n        // Ensures the result bytes do not have zero length\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\n        require(_cborBytes.length != 0, \"WitnetRequestBoardTrustableDefault: result cannot be empty\");\n        // solhint-disable not-rely-on-time\n        _safeTransferTo(\n            payable(msg.sender),\n            __reportResult(\n                _queryId,\n                block.timestamp,\n                _drTxHash,\n                _cborBytes\n            )\n        );\n        emit PostedResult(_queryId, msg.sender);\n    }\n\n    /// Reports the Witnet-provided result to a previously posted request.\n    /// @dev Fails if:\n    /// @dev - called from unauthorized address;\n    /// @dev - the `_queryId` is not in 'Posted' status.\n    /// @dev - provided `_drTxHash` is zero;\n    /// @dev - length of provided `_result` is zero.\n    /// @param _queryId The unique query identifier\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\n    /// @param _cborBytes The result itself as bytes.\n    function reportResult(\n            uint256 _queryId,\n            uint256 _timestamp,\n            bytes32 _drTxHash,\n            bytes calldata _cborBytes\n        )\n        external\n        override\n        onlyReporters\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\n    {\n        require(_timestamp <= block.timestamp, \"WitnetRequestBoardTrustableDefault: bad timestamp\");\n        require(_drTxHash != 0, \"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\");\n        // Ensures the result bytes do not have zero length\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\n        require(_cborBytes.length != 0, \"WitnetRequestBoardTrustableDefault: result cannot be empty\");\n        _safeTransferTo(\n            payable(msg.sender),\n            __reportResult(\n                _queryId,\n                _timestamp,\n                _drTxHash,\n                _cborBytes\n            )\n        );\n        emit PostedResult(_queryId, msg.sender);\n    }\n\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\n    /// @dev Fails if called from unauthorized address.\n    /// @dev Emits a PostedResult event for every succesfully reported result, if any.\n    /// @param _batchResults Array of BatchedResult structs, every one containing:\n    ///         - unique query identifier;\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\n    ///         - data request result in raw bytes.\n    /// @param _verbose If true, emits a BatchReportError event for every failing report, if any. \n    function reportResultBatch(\n            BatchResult[] memory _batchResults,\n            bool _verbose\n        )\n        external\n        override\n        onlyReporters\n    {\n        uint _batchReward;\n        uint _batchSize = _batchResults.length;\n        for ( uint _i = 0; _i < _batchSize; _i ++) {\n            BatchResult memory _result = _batchResults[_i];\n            if (_getQueryStatus(_result.queryId) != Witnet.QueryStatus.Posted) {\n                if (_verbose) {\n                    emit BatchReportError(\n                        _result.queryId,\n                        \"WitnetRequestBoardTrustableBase: bad queryId\"\n                    );\n                }\n            } else if (_result.drTxHash == 0) {\n                if (_verbose) {\n                    emit BatchReportError(\n                        _result.queryId,\n                        \"WitnetRequestBoardTrustableBase: bad drTxHash\"\n                    );\n                }\n            } else if (_result.cborBytes.length == 0) {\n                if (_verbose) {\n                    emit BatchReportError(\n                        _result.queryId, \n                        \"WitnetRequestBoardTrustableBase: bad cborBytes\"\n                    );\n                }\n            } else if (_result.timestamp > 0 && _result.timestamp > block.timestamp) {\n                if (_verbose) {\n                    emit BatchReportError(\n                        _result.queryId,\n                        \"WitnetRequestBoardTrustableBase: bad timestamp\"\n                    );\n                }\n            } else {\n                _batchReward += __reportResult(\n                    _result.queryId,\n                    _result.timestamp == 0 ? block.timestamp : _result.timestamp,\n                    _result.drTxHash,\n                    _result.cborBytes\n                );\n                emit PostedResult(\n                    _result.queryId,\n                    msg.sender\n                );\n            }\n        }   \n        // Transfer all successful rewards in one single shot to the authorized reporter, if any:\n        if (_batchReward > 0) {\n            _safeTransferTo(\n                payable(msg.sender),\n                _batchReward\n            );\n        }\n    }\n    \n\n    // ================================================================================================================\n    // --- Full implementation of 'IWitnetRequestBoardRequestor' ------------------------------------------------------\n\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\n    /// @dev the one that actually posted the given request.\n    /// @param _queryId The unique query identifier.\n    function deleteQuery(uint256 _queryId)\n        public\n        virtual override\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\n        returns (Witnet.Response memory _response)\n    {\n        Witnet.Query storage __query = _state().queries[_queryId];\n        require(\n            msg.sender == __query.from,\n            \"WitnetRequestBoardTrustableBase: only requester\"\n        );\n        _response = __query.response;\n        delete _state().queries[_queryId];\n        emit DeletedQuery(_queryId, msg.sender);\n    }\n\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \n    /// result to this request.\n    /// @dev Fails if:\n    /// @dev - provided reward is too low.\n    /// @dev - provided script is zero address.\n    /// @dev - provided script bytecode is empty.\n    /// @param _addr The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\n    /// @return _queryId An unique query identifier.\n    function postRequest(IWitnetRequest _addr)\n        public payable\n        virtual override\n        returns (uint256 _queryId)\n    {\n        uint256 _value = _getMsgValue();\n        uint256 _gasPrice = _getGasPrice();\n\n        // Checks the tally reward is covering gas cost\n        uint256 minResultReward = estimateReward(_gasPrice);\n        require(_value >= minResultReward, \"WitnetRequestBoardTrustableBase: reward too low\");\n\n        // Validates provided script:\n        require(address(_addr) != address(0), \"WitnetRequestBoardTrustableBase: null script\");\n        bytes memory _bytecode = _addr.bytecode();\n        require(_bytecode.length > 0, \"WitnetRequestBoardTrustableBase: empty script\");\n\n        _queryId = ++ _state().numQueries;\n        _state().queries[_queryId].from = msg.sender;\n\n        Witnet.Request storage _request = _getRequestData(_queryId);\n        _request.addr = _addr;\n        _request.hash = _bytecode.hash();\n        _request.gasprice = _gasPrice;\n        _request.reward = _value;\n\n        // Let observers know that a new request has been posted\n        emit PostedRequest(_queryId, msg.sender);\n    }\n    \n    /// Increments the reward of a previously posted request by adding the transaction value to it.\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \n    /// @dev gas price value than the one used in previous calls to `postRequest` or\n    /// @dev `upgradeReward`. \n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \n    /// @dev reward value gets below new recalculated threshold. \n    /// @param _queryId The unique query identifier.\n    function upgradeReward(uint256 _queryId)\n        public payable\n        virtual override      \n        inStatus(_queryId, Witnet.QueryStatus.Posted)\n    {\n        Witnet.Request storage _request = _getRequestData(_queryId);\n\n        uint256 _newReward = _request.reward + _getMsgValue();\n        uint256 _newGasPrice = _getGasPrice();\n\n        // If gas price is increased, then check if new rewards cover gas costs\n        if (_newGasPrice > _request.gasprice) {\n            // Checks the reward is covering gas cost\n            uint256 _minResultReward = estimateReward(_newGasPrice);\n            require(\n                _newReward >= _minResultReward,\n                \"WitnetRequestBoardTrustableBase: reward too low\"\n            );\n            _request.gasprice = _newGasPrice;\n        }\n        _request.reward = _newReward;\n    }\n\n\n    // ================================================================================================================\n    // --- Full implementation of 'IWitnetRequestBoardView' -----------------------------------------------------------\n\n    /// Estimates the amount of reward we need to insert for a given gas price.\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\n    function estimateReward(uint256 _gasPrice)\n        public view\n        virtual override\n        returns (uint256);\n\n    /// Returns next request id to be generated by the Witnet Request Board.\n    function getNextQueryId()\n        external view \n        override\n        returns (uint256)\n    {\n        return _state().numQueries + 1;\n    }\n\n    /// Gets the whole Query data contents, if any, no matter its current status.\n    function getQueryData(uint256 _queryId)\n      external view\n      override\n      returns (Witnet.Query memory)\n    {\n        return _state().queries[_queryId];\n    }\n\n    /// Gets current status of given query.\n    function getQueryStatus(uint256 _queryId)\n        external view\n        override\n        returns (Witnet.QueryStatus)\n    {\n        return _getQueryStatus(_queryId);\n\n    }\n\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\n    /// @dev or deleted.\n    /// @param _queryId The unique identifier of a previously posted query.\n    function readRequest(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\n        returns (Witnet.Request memory _request)\n    {\n        Witnet.Query storage __query = _state().queries[_queryId];\n        _request = __query.request;\n        if (__query.from != address(0)) {\n            _request.requester = __query.from;\n        }\n    }\n    \n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \n    /// @dev got changed after being posted. Returns empty array once it gets reported, \n    /// @dev or deleted.\n    /// @param _queryId The unique query identifier.\n    function readRequestBytecode(uint256 _queryId)\n        external view\n        override\n        returns (bytes memory _bytecode)\n    {\n        require(\n            _getQueryStatus(_queryId) != Witnet.QueryStatus.Unknown,\n            \"WitnetRequestBoardTrustableBase: not yet posted\"\n        );\n        Witnet.Request storage _request = _getRequestData(_queryId);\n        if (address(_request.addr) != address(0)) {\n            // if DR's request contract address is not zero,\n            // we assume the DR has not been deleted, so\n            // DR's bytecode can still be fetched:\n            _bytecode = _request.addr.bytecode();\n            require(\n                _bytecode.hash() == _request.hash,\n                \"WitnetRequestBoardTrustableBase: bytecode changed after posting\"\n            );\n        } \n    }\n\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \n    /// result to a previously posted Witnet data request.\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \n    /// @dev reported, or deleted. \n    /// @param _queryId The unique query identifier\n    function readRequestGasPrice(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\n        returns (uint256)\n    {\n        return _state().queries[_queryId].request.gasprice;\n    }\n\n    /// Retrieves the reward currently set for a previously posted request.\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \n    /// @dev reported, or deleted. \n    /// @param _queryId The unique query identifier\n    function readRequestReward(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\n        returns (uint256)\n    {\n        return _state().queries[_queryId].request.reward;\n    }\n\n    /// Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier\n    function readResponse(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\n        returns (Witnet.Response memory _response)\n    {\n        return _getResponseData(_queryId);\n    }\n\n    /// Retrieves the hash of the Witnet transaction that actually solved the referred query.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponseDrTxHash(uint256 _queryId)\n        external view        \n        override\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\n        returns (bytes32)\n    {\n        return _getResponseData(_queryId).drTxHash;\n    }\n\n    /// Retrieves the address that reported the result to a previously-posted request.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier\n    function readResponseReporter(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\n        returns (address)\n    {\n        return _getResponseData(_queryId).reporter;\n    }\n\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier\n    function readResponseResult(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\n        returns (Witnet.Result memory)\n    {\n        Witnet.Response storage _response = _getResponseData(_queryId);\n        return WitnetParserLib.resultFromCborBytes(_response.cborBytes);\n    }\n\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponseTimestamp(uint256 _queryId)\n        external view\n        override\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\n        returns (uint256)\n    {\n        return _getResponseData(_queryId).timestamp;\n    }\n\n\n    // ================================================================================================================\n    // --- Full implementation of 'IWitnetRequestParser' interface ----------------------------------------------------\n\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\n    /// @return A `Witnet.Result` instance.\n    function resultFromCborBytes(bytes memory _cborBytes)\n        external pure\n        override\n        returns (Witnet.Result memory)\n    {\n        return WitnetParserLib.resultFromCborBytes(_cborBytes);\n    }\n\n    /// Decode a CBOR value into a Witnet.Result instance.\n    /// @param _cborValue An instance of `Witnet.CBOR`.\n    /// @return A `Witnet.Result` instance.\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\n        external pure\n        override\n        returns (Witnet.Result memory)\n    {\n        return WitnetParserLib.resultFromCborValue(_cborValue);\n    }\n\n    /// Tell if a Witnet.Result is successful.\n    /// @param _result An instance of Witnet.Result.\n    /// @return `true` if successful, `false` if errored.\n    function isOk(Witnet.Result memory _result)\n        external pure\n        override\n        returns (bool)\n    {\n        return _result.isOk();\n    }\n\n    /// Tell if a Witnet.Result is errored.\n    /// @param _result An instance of Witnet.Result.\n    /// @return `true` if errored, `false` if successful.\n    function isError(Witnet.Result memory _result)\n        external pure\n        override\n        returns (bool)\n    {\n        return _result.isError();\n    }\n\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bytes` decoded from the Witnet.Result.\n    function asBytes(Witnet.Result memory _result)\n        external pure\n        override\n        returns (bytes memory)\n    {\n        return _result.asBytes();\n    }\n\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bytes32` decoded from the Witnet.Result.\n    function asBytes32(Witnet.Result memory _result)\n        external pure\n        override\n        returns (bytes32)\n    {\n        return _result.asBytes32();\n    }\n\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\n    function asErrorCode(Witnet.Result memory _result)\n        external pure\n        override\n        returns (Witnet.ErrorCodes)\n    {\n        return _result.asErrorCode();\n    }\n\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\n    function asErrorMessage(Witnet.Result memory _result)\n        external pure\n        override\n        returns (Witnet.ErrorCodes, string memory)\n    {\n        try _result.asErrorMessage() returns (Witnet.ErrorCodes _code, string memory _message) {\n            return (_code, _message);\n        } \n        catch Error(string memory _reason) {\n            return (Witnet.ErrorCodes.Unknown, _reason);\n        }\n        catch (bytes memory) {\n            return (Witnet.ErrorCodes.UnhandledIntercept, \"WitnetRequestBoardTrustableBase: failing assert\");\n        }\n    }\n\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\n    function asRawError(Witnet.Result memory _result)\n        external pure\n        override\n        returns(uint64[] memory)\n    {\n        return _result.asRawError();\n    }\n\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bool` decoded from the Witnet.Result.\n    function asBool(Witnet.Result memory _result)\n        external pure\n        override\n        returns (bool)\n    {\n        return _result.asBool();\n    }\n\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128` decoded from the Witnet.Result.\n    function asFixed16(Witnet.Result memory _result)\n        external pure\n        override\n        returns (int32)\n    {\n        return _result.asFixed16();\n    }\n\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128[]` decoded from the Witnet.Result.\n    function asFixed16Array(Witnet.Result memory _result)\n        external pure\n        override\n        returns (int32[] memory)\n    {\n        return _result.asFixed16Array();\n    }\n\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128` decoded from the Witnet.Result.\n    function asInt128(Witnet.Result memory _result)\n        external pure\n        override\n        returns (int128)\n    {\n        return _result.asInt128();\n    }\n\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128[]` decoded from the Witnet.Result.\n    function asInt128Array(Witnet.Result memory _result)\n        external pure\n        override\n        returns (int128[] memory)\n    {\n        return _result.asInt128Array();\n    }\n\n    /// Decode a string value from a Witnet.Result as a `string` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `string` decoded from the Witnet.Result.\n    function asString(Witnet.Result memory _result)\n        external pure\n        override\n        returns (string memory)\n    {\n        return _result.asString();\n    }\n\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `string[]` decoded from the Witnet.Result.\n    function asStringArray(Witnet.Result memory _result)\n        external pure\n        override\n        returns (string[] memory)\n    {\n        return _result.asStringArray();\n    }\n\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `uint64` decoded from the Witnet.Result.\n    function asUint64(Witnet.Result memory _result)\n        external pure \n        override\n        returns(uint64)\n    {\n        return _result.asUint64();\n    }\n\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `uint64[]` decoded from the Witnet.Result.\n    function asUint64Array(Witnet.Result memory _result)\n        external pure\n        override\n        returns (uint64[] memory)\n    {\n        return _result.asUint64Array();\n    }\n\n\n    // ================================================================================================================\n    // --- Internal functions -----------------------------------------------------------------------------------------\n\n    function __reportResult(\n            uint256 _queryId,\n            uint256 _timestamp,\n            bytes32 _drTxHash,\n            bytes memory _cborBytes\n        )\n        internal\n        returns (uint256 _reward)\n    {\n        Witnet.Query storage __query = _state().queries[_queryId];\n        Witnet.Request storage __request = __query.request;\n        Witnet.Response storage __response = __query.response;\n\n        // solhint-disable not-rely-on-time\n        __response.timestamp = _timestamp;\n        __response.drTxHash = _drTxHash;\n        __response.reporter = msg.sender;\n        __response.cborBytes = _cborBytes;\n\n        // return request latest reward\n        _reward = __request.reward;\n\n        // Request data won't be needed anymore, so it can just get deleted right now:  \n        delete __query.request;\n    }\n}\n"},"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol":{"content":"// SPDX-License-Identifier: MIT\n\n/* solhint-disable var-name-mixedcase */\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"./WitnetRequestBoardTrustableBase.sol\";\nimport \"../../patterns/Destructible.sol\";\n\n/// @title Witnet Request Board \"trustable\" implementation contract.\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\n/// @author The Witnet Foundation\ncontract WitnetRequestBoardTrustableDefault\n    is \n        Destructible,\n        WitnetRequestBoardTrustableBase\n{  \n    uint256 internal immutable _ESTIMATED_REPORT_RESULT_GAS;\n\n    constructor(\n        bool _upgradable,\n        bytes32 _versionTag,\n        uint256 _reportResultGasLimit\n    )\n        WitnetRequestBoardTrustableBase(_upgradable, _versionTag, address(0))\n    {\n        _ESTIMATED_REPORT_RESULT_GAS = _reportResultGasLimit;\n    }\n\n\n    // ================================================================================================================\n    // --- Overrides implementation of 'IWitnetRequestBoardView' ------------------------------------------------------\n\n    /// Estimates the amount of reward we need to insert for a given gas price.\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\n    function estimateReward(uint256 _gasPrice)\n        public view\n        virtual override\n        returns (uint256)\n    {\n        return _gasPrice * _ESTIMATED_REPORT_RESULT_GAS;\n    }\n\n\n    // ================================================================================================================\n    // --- Overrides 'Destructible' -----------------------------------------------------------------------------------\n\n    /// Destroys current instance. Only callable by the owner.\n    function destruct() external override onlyOwner {\n        selfdestruct(payable(msg.sender));\n    }\n\n\n    // ================================================================================================================\n    // --- Overrides 'Payable' ----------------------------------------------------------------------------------------\n\n    /// Gets current transaction price.\n    function _getGasPrice()\n        internal view\n        override\n        returns (uint256)\n    {\n        return tx.gasprice;\n    }\n\n    /// Gets current payment value.\n    function _getMsgValue()\n        internal view\n        override\n        returns (uint256)\n    {\n        return msg.value;\n    }\n\n    /// Transfers ETHs to given address.\n    /// @param _to Recipient address.\n    /// @param _amount Amount of ETHs to transfer.\n    function _safeTransferTo(address payable _to, uint256 _amount)\n        internal\n        override\n    {\n        payable(_to).transfer(_amount);\n    }   \n}\n"},"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../patterns/Upgradable.sol\";\n\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \n/// @author The Witnet Foundation.\ncontract WitnetProxy {\n\n    struct WitnetProxySlot {\n        address implementation;\n    }\n\n    /// Event emitted every time the implementation gets updated.\n    event Upgraded(address indexed implementation);  \n\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\n    constructor () {}\n\n    /// WitnetProxies will never accept direct transfer of ETHs.\n    receive() external payable {\n        revert(\"WitnetProxy: no transfers accepted\");\n    }\n\n    /// Payable fallback accepts delegating calls to payable functions.  \n    fallback() external payable { /* solhint-disable no-complex-fallback */\n        address _implementation = implementation();\n\n        assembly { /* solhint-disable avoid-low-level-calls */\n            // Gas optimized delegate call to 'implementation' contract.\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \n            //       to actual implementation of `msg.sig` within `implementation` contract.\n            let ptr := mload(0x40)\n            calldatacopy(ptr, 0, calldatasize())\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\n            let size := returndatasize()\n            returndatacopy(ptr, 0, size)\n            switch result\n                case 0  { \n                    // pass back revert message:\n                    revert(ptr, size) \n                }\n                default {\n                  // pass back same data as returned by 'implementation' contract:\n                  return(ptr, size) \n                }\n        }\n    }\n\n    /// Returns proxy's current implementation address.\n    function implementation() public view returns (address) {\n        return _proxySlot().implementation;\n    }\n\n    /// Upgrades the `implementation` address.\n    /// @param _newImplementation New implementation address.\n    /// @param _initData Raw data with which new implementation will be initialized.\n    /// @return Returns whether new implementation would be further upgradable, or not.\n    function upgradeTo(address _newImplementation, bytes memory _initData)\n        public returns (bool)\n    {\n        // New implementation cannot be null:\n        require(_newImplementation != address(0), \"WitnetProxy: null implementation\");\n\n        address _oldImplementation = implementation();\n        if (_oldImplementation != address(0)) {\n            // New implementation address must differ from current one:\n            require(_newImplementation != _oldImplementation, \"WitnetProxy: nothing to upgrade\");\n\n            // Assert whether current implementation is intrinsically upgradable:\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\n                require(_isUpgradable, \"WitnetProxy: not upgradable\");\n            } catch {\n                revert(\"WitnetProxy: unable to check upgradability\");\n            }\n\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\n                abi.encodeWithSignature(\n                    \"isUpgradableFrom(address)\",\n                    msg.sender\n                )\n            );\n            require(_wasCalled, \"WitnetProxy: not compliant\");\n            require(abi.decode(_result, (bool)), \"WitnetProxy: not authorized\");\n            require(\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\n                \"WitnetProxy: proxiableUUIDs mismatch\"\n            );\n        }\n\n        // Initialize new implementation within proxy-context storage:\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\n            abi.encodeWithSignature(\n                \"initialize(bytes)\",\n                _initData\n            )\n        );\n        require(_wasInitialized, \"WitnetProxy: unable to initialize\");\n\n        // If all checks and initialization pass, update implementation address:\n        _proxySlot().implementation = _newImplementation;\n        emit Upgraded(_newImplementation);\n\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\n            return _isUpgradable;\n        }\n        catch {\n            revert (\"WitnetProxy: not compliant\");\n        }\n    }\n\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\n        assembly {\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\n        }\n    }\n\n}\n"},"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\n/* solhint-disable var-name-mixedcase */\n\n// Inherits from:\nimport \"../WitnetRequestBoard.sol\";\nimport \"../patterns/Proxiable.sol\";\nimport \"../patterns/Upgradable.sol\";\n\n// Eventual deployment dependencies:\nimport \"./WitnetProxy.sol\";\n\n/// @title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\n/// @author The Witnet Foundation.\nabstract contract WitnetRequestBoardUpgradableBase\n    is\n        Proxiable,\n        Upgradable,\n        WitnetRequestBoard\n{\n    bytes32 internal immutable _VERSION;\n\n    constructor(\n            bool _upgradable,\n            bytes32 _versionTag\n        )\n        Upgradable(_upgradable)\n    {\n        _VERSION = _versionTag;\n    }\n\n    /// @dev Reverts if proxy delegatecalls to unexistent method.\n    fallback() external payable {\n        revert(\"WitnetRequestBoardUpgradableBase: not implemented\");\n    }\n\n    // ================================================================================================================\n    // --- Overrides 'Proxiable' --------------------------------------------------------------------------------------\n\n    /// @dev Gets immutable \"heritage blood line\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\n    ///      If implemented as an Upgradable touch, upgrading this contract to another one with a different \n    ///      `proxiableUUID()` value should fail.\n    function proxiableUUID() external pure override returns (bytes32) {\n        return (\n            /* keccak256(\"io.witnet.proxiable.board\") */\n            0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018\n        );\n    }   \n\n    // ================================================================================================================\n    // --- Overrides 'Upgradable' --------------------------------------------------------------------------------------\n\n    /// Retrieves human-readable version tag of current implementation.\n    function version() public view override returns (bytes32) {\n        return _VERSION;\n    }\n\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IERC165.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/**\n * @dev Interface of the ERC165 standard, as defined in the\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\n *\n * Implementers can declare support of contract interfaces, which can then be\n * queried by others ({ERC165Checker}).\n *\n * For an implementation, see {ERC165}.\n */\ninterface IERC165 {\n    /**\n     * @dev Returns true if this contract implements the interface defined by\n     * `interfaceId`. See the corresponding\n     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n     * to learn more about how these ids are created.\n     *\n     * This function call must use less than 30 000 gas.\n     */\n    function supportsInterface(bytes4 interfaceId) external view returns (bool);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IERC20.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/**\n * @dev Interface of the ERC20 standard as defined in the EIP.\n */\ninterface IERC20 {\n    /// Returns the amount of tokens in existence.\n    function totalSupply() external view returns (uint256);\n\n    /// Returns the amount of tokens owned by `_account`.\n    function balanceOf(address _account) external view returns (uint256);\n\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\n    /// Returns a boolean value indicating whether the operation succeeded.\n    /// Emits a {Transfer} event.\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\n\n    /// Returns the remaining number of tokens that `_spender` will be\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\n    /// zero by default.\n    /// This value changes when {approve} or {transferFrom} are called.\n    function allowance(address _owner, address _spender) external view returns (uint256);\n\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\n    /// Returns a boolean value indicating whether the operation succeeded.\n    /// \n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\n    /// that someone may use both the old and the new allowance by unfortunate\n    /// transaction ordering. One possible solution to mitigate this race\n    /// condition is to first reduce the spender's allowance to 0 and set the\n    /// desired value afterwards:\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n    ///\n    /// Emits an {Approval} event.     \n    function approve(address _spender, uint256 _amount) external returns (bool);\n\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\n    /// allowance mechanism. `amount` is then deducted from the caller's\n    /// allowance.\n    /// Returns a boolean value indicating whether the operation succeeded.\n    /// Emits a {Transfer} event. \n    function transferFrom(\n        address _sender,\n        address _recipient,\n        uint256 _amount\n    ) external returns (bool);\n\n    /// Emitted when `value` tokens are moved from one account (`from`) to\n    /// another (`to`).\n    /// Note that `:value` may be zero.\n    event Transfer(address indexed from, address indexed to, uint256 value);\n\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\n    /// a call to {approve}. `value` is the new allowance.\n    event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol":{"content":"// SPDX-License-Identifier: MIT\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"ado-contracts/contracts/interfaces/IERC2362.sol\";\nimport \"./IERC165.sol\";\n\n/// @title The Witnet Price Router basic interface.\n/// @dev Guides implementation of price feeds aggregation contracts.\n/// @author The Witnet Foundation.\nabstract contract IWitnetPriceRouter\n    is\n        IERC2362 \n{\n    /// Emitted everytime a currency pair is attached to a new price feed contract\n    /// @dev See https://github.com/adoracles/ADOIPs/blob/main/adoip-0010.md \n    /// @dev to learn how these ids are created.\n    event CurrencyPairSet(bytes32 indexed erc2362ID, IERC165 pricefeed);\n\n    /// Helper pure function: returns hash of the provided ERC2362-compliant currency pair caption (aka ID).\n    function currencyPairId(string memory) external pure virtual returns (bytes32);\n\n    /// Returns the ERC-165-compliant price feed contract currently serving \n    /// updates on the given currency pair.\n    function getPriceFeed(bytes32 _erc2362id) external view virtual returns (IERC165);\n\n    /// Returns human-readable ERC2362-based caption of the currency pair being\n    /// served by the given price feed contract address. \n    /// @dev Should fail if the given price feed contract address is not currently\n    /// @dev registered in the router.\n    function getPriceFeedCaption(IERC165) external view virtual returns (string memory);\n\n    /// Returns human-readable caption of the ERC2362-based currency pair identifier, if known.\n    function lookupERC2362ID(bytes32 _erc2362id) external view virtual returns (string memory);\n\n    /// Register a price feed contract that will serve updates for the given currency pair.\n    /// @dev Setting zero address to a currency pair implies that it will not be served any longer.\n    /// @dev Otherwise, should fail if the price feed contract does not support the `IWitnetPriceFeed` interface,\n    /// @dev or if given price feed is already serving another currency pair (within this WitnetPriceRouter instance).\n    function setPriceFeed(\n            IERC165 _pricefeed,\n            uint256 _decimals,\n            string calldata _base,\n            string calldata _quote\n        )\n        external virtual;\n\n    /// Returns list of known currency pairs IDs.\n    function supportedCurrencyPairs() external view virtual returns (bytes32[] memory);\n\n    /// Returns `true` if given pair is currently being served by a compliant price feed contract.\n    function supportsCurrencyPair(bytes32 _erc2362id) external view virtual returns (bool);\n\n    /// Returns `true` if given price feed contract is currently serving updates to any known currency pair. \n    function supportsPriceFeed(IERC165 _priceFeed) external view virtual returns (bool);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"../libs/Witnet.sol\";\n\n/// @title The Witnet Randomness generator interface.\n/// @author Witnet Foundation.\ninterface IWitnetRandomness {\n\n    /// Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\n    /// @param from Address from which the randomize() function was called. \n    /// @param prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n    /// @param witnetQueryId Unique query id assigned to this request by the WRB.\n    /// @param witnetRequestHash SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB.\n    event Randomized(\n        address indexed from,\n        uint256 indexed prevBlock,\n        uint256 witnetQueryId,\n        bytes32 witnetRequestHash\n    );\n\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \n    /// transaction gas price as the one given.\n    function estimateRandomizeFee(uint256 _gasPrice) external view returns (uint256);\n\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\n    /// @param _block Block number whose randomness request is being queried for.\n    /// @return _from Address from which the latest randomness request was posted.\n    /// @return _id Unique request identifier as provided by the WRB.\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\n    function getRandomizeData(uint256 _block)\n        external view returns (address _from, uint256 _id, uint256 _prevBlock, uint256 _nextBlock);\n\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \n    /// will recursively try to return randomness from the next non-faulty randomization request found \n    /// in storage, if any. \n    /// @dev Fails if:\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\n    /// @dev   iii. all requests in/after the given block were solved with errors.\n    /// @param _block Block number from which the search will start.\n    function getRandomnessAfter(uint256 _block) external view returns (bytes32); \n\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \n    /// @param _block Block number from which the search will start.\n    /// @return Number of the first block found after the given one, or `0` otherwise.\n    function getRandomnessNextBlock(uint256 _block) external view returns (uint256); \n\n    /// Gets previous block in which a randomness request was posted before the given one.\n    /// @param _block Block number from which the search will start.\n    /// @return First block found before the given one, or `0` otherwise.\n    function getRandomnessPrevBlock(uint256 _block) external view returns (uint256);\n\n    /// Returns `true` only when the randomness request that got posted within given block was already\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\n    function isRandomized(uint256 _block) external view returns (bool);\n\n    /// Returns latest block in which a randomness request got sucessfully posted to the WRB.\n    function latestRandomizeBlock() external view returns (uint256);\n\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n    /// @param _block Block number from which the search will start.\n    function random(uint32 _range, uint256 _nonce, uint256 _block) external view returns (uint32);\n\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n    /// @param _seed Seed value used as entropy source.\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed) external pure returns (uint32);\n\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \n    /// Only one randomness request per block will be actually posted to the WRB. Should there \n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \n    /// block randomness request according to current gas price. In both cases, all unused funds shall \n    /// be transfered back to the tx sender.\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\n    function randomize() external payable returns (uint256 _usedFunds);\n\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \n    /// request was posted. All unused funds shall be transferred back to the tx sender.\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\n    function upgradeRandomizeFee(uint256 _block) external payable returns (uint256 _usedFunds);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/// @title The Witnet Data Request basic interface.\n/// @author The Witnet Foundation.\ninterface IWitnetRequest {\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \n    /// a well-formed Witnet Data Request using Protocol Buffers.\n    function bytecode() external view returns (bytes memory);\n\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\n    function hash() external view returns (bytes32);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/// @title Witnet Request Board basic administration interface.\n/// @author The Witnet Foundation.\ninterface IWitnetRequestBoardAdmin {\n    event OwnershipTransferred(address indexed from, address indexed to);\n\n    /// Gets admin/owner address.\n    function owner() external view returns (address);\n\n    /// Transfers ownership.\n    function transferOwnership(address) external;\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/// @title Witnet Request Board ACLs administration interface.\n/// @author The Witnet Foundation.\ninterface IWitnetRequestBoardAdminACLs {\n    event ReportersSet(address[] reporters);\n    event ReportersUnset(address[] reporters);\n\n    /// Tells whether given address is included in the active reporters control list.\n    function isReporter(address) external view returns (bool);\n\n    /// Adds given addresses to the active reporters control list.\n    /// @dev Can only be called from the owner address.\n    /// @dev Emits the `ReportersSet` event. \n    function setReporters(address[] calldata reporters) external;\n\n    /// Removes given addresses from the active reporters control list.\n    /// @dev Can only be called from the owner address.\n    /// @dev Emits the `ReportersUnset` event. \n    function unsetReporters(address[] calldata reporters) external;\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/// @title Witnet Request Board emitting events interface.\n/// @author The Witnet Foundation.\ninterface IWitnetRequestBoardEvents {\n    /// Emitted when a Witnet Data Request is posted to the WRB.\n    event PostedRequest(uint256 queryId, address from);\n\n    /// Emitted when a Witnet-solved result is reported to the WRB.\n    event PostedResult(uint256 queryId, address from);\n\n    /// Emitted when all data related to given query is deleted from the WRB.\n    event DeletedQuery(uint256 queryId, address from);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\n/// @title The Witnet Request Board Reporter interface.\n/// @author The Witnet Foundation.\ninterface IWitnetRequestBoardReporter {\n    /// Reports the Witnet-provided result to a previously posted request. \n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\n    /// @dev Fails if:\n    /// @dev - the `_queryId` is not in 'Posted' status.\n    /// @dev - provided `_drTxHash` is zero;\n    /// @dev - length of provided `_result` is zero.\n    /// @param _queryId The unique identifier of the data request.\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\n    /// @param _result The result itself as bytes.\n    function reportResult(\n            uint256 _queryId,\n            bytes32 _drTxHash,\n            bytes calldata _result\n        ) external;\n\n    /// Reports the Witnet-provided result to a previously posted request.\n    /// @dev Fails if:\n    /// @dev - called from unauthorized address;\n    /// @dev - the `_queryId` is not in 'Posted' status.\n    /// @dev - provided `_drTxHash` is zero;\n    /// @dev - length of provided `_result` is zero.\n    /// @param _queryId The unique query identifier\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\n    /// @param _result The result itself as bytes.\n    function reportResult(\n            uint256 _queryId,\n            uint256 _timestamp,\n            bytes32 _drTxHash,\n            bytes calldata _result\n        ) external;\n\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\n    /// @param _batchResults Array of BatchResult structs, every one containing:\n    ///         - unique query identifier;\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\n    ///         - data request result in raw bytes.\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\n        \n        struct BatchResult {\n            uint256 queryId;\n            uint256 timestamp;\n            bytes32 drTxHash;\n            bytes   cborBytes;\n        }\n\n        event BatchReportError(uint256 queryId, string reason);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../libs/Witnet.sol\";\n\n/// @title Witnet Requestor Interface\n/// @notice It defines how to interact with the Witnet Request Board in order to:\n///   - request the execution of Witnet Radon scripts (data request);\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\n///   - remove from storage all data related to past and solved data requests, and results.\n/// @author The Witnet Foundation.\ninterface IWitnetRequestBoardRequestor {\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\n    /// @dev the one that actually posted the given request.\n    /// @param _queryId The unique query identifier.\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\n\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \n    /// result to this request.\n    /// @dev Fails if:\n    /// @dev - provided reward is too low.\n    /// @dev - provided script is zero address.\n    /// @dev - provided script bytecode is empty.\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\n    /// @return _queryId An unique query identifier.\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\n\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \n    /// @dev gas price value than the one used in previous calls to `postRequest` or\n    /// @dev `upgradeReward`. \n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \n    /// @dev reward value gets below new recalculated threshold. \n    /// @param _queryId The unique query identifier.\n    function upgradeReward(uint256 _queryId) external payable;\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../libs/Witnet.sol\";\n\n/// @title Witnet Request Board info interface.\n/// @author The Witnet Foundation.\ninterface IWitnetRequestBoardView {\n    /// Estimates the amount of reward we need to insert for a given gas price.\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\n\n    /// Returns next query id to be generated by the Witnet Request Board.\n    function getNextQueryId() external view returns (uint256);\n\n    /// Gets the whole Query data contents, if any, no matter its current status.\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\n\n    /// Gets current status of given query.\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\n\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\n    /// @dev or deleted.\n    /// @param _queryId The unique identifier of a previously posted query.\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\n\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \n    /// @dev got changed after being posted. Returns empty array once it gets reported, \n    /// @dev or deleted.\n    /// @param _queryId The unique query identifier.\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\n\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \n    /// result to a previously posted Witnet data request.\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \n    /// @dev reported, or deleted. \n    /// @param _queryId The unique query identifie\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\n\n    /// Retrieves the reward currently set for the referred query.\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \n    /// @dev reported, or deleted. \n    /// @param _queryId The unique query identifier.\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\n\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\n\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \n\n    /// Retrieves the address that reported the result to a previously-posted request.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponseReporter(uint256 _queryId) external view returns (address);\n\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\n\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\n    /// @param _queryId The unique query identifier.\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\n}\n"},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../libs/Witnet.sol\";\n\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\n/// This interface exposes functions to check for the success/failure of\n/// a Witnet-provided result, as well as to parse and convert result into\n/// Solidity types suitable to the application level. \n/// @author The Witnet Foundation.\ninterface IWitnetRequestParser {\n\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\n    /// @return A `Witnet.Result` instance.\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\n\n    /// Decode a CBOR value into a Witnet.Result instance.\n    /// @param _cborValue An instance of `Witnet.CBOR`.\n    /// @return A `Witnet.Result` instance.\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\n\n    /// Tell if a Witnet.Result is successful.\n    /// @param _result An instance of Witnet.Result.\n    /// @return `true` if successful, `false` if errored.\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\n\n    /// Tell if a Witnet.Result is errored.\n    /// @param _result An instance of Witnet.Result.\n    /// @return `true` if errored, `false` if successful.\n    function isError(Witnet.Result memory _result) external pure returns (bool);\n\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bytes` decoded from the Witnet.Result.\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\n\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bytes32` decoded from the Witnet.Result.\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\n\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\n\n\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\n\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\n\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bool` decoded from the Witnet.Result.\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\n\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128` decoded from the Witnet.Result.\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\n\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128[]` decoded from the Witnet.Result.\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\n\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128` decoded from the Witnet.Result.\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\n\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128[]` decoded from the Witnet.Result.\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\n\n    /// Decode a string value from a Witnet.Result as a `string` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `string` decoded from the Witnet.Result.\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\n\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `string[]` decoded from the Witnet.Result.\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\n\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `uint64` decoded from the Witnet.Result.\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\n\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `uint64[]` decoded from the Witnet.Result.\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\n\n}\n"},"witnet-solidity-bridge/contracts/libs/Witnet.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../interfaces/IWitnetRequest.sol\";\n\nlibrary Witnet {\n\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\n    /// @param _bytecode CBOR-encoded RADON.\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\n        return sha256(_bytecode);\n    }\n\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\n    struct Query {\n        Request request;\n        Response response;\n        address from;      // Address from which the request was posted.\n    }\n\n    /// Possible status of a Witnet query.\n    enum QueryStatus {\n        Unknown,\n        Posted,\n        Reported,\n        Deleted\n    }\n\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\n    struct Request {\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\n        address requester;      // Address from which the request was posted.\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\n    }\n\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\n    struct Response {\n        address reporter;       // Address from which the result was reported.\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\n    }\n\n    /// Data struct containing the Witnet-provided result to a Data Request.\n    struct Result {\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\n    }\n\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\n    struct CBOR {\n        Buffer buffer;\n        uint8 initialByte;\n        uint8 majorType;\n        uint8 additionalInformation;\n        uint64 len;\n        uint64 tag;\n    }\n\n    /// Iterable bytes buffer.\n    struct Buffer {\n        bytes data;\n        uint32 cursor;\n    }\n\n    /// Witnet error codes table.\n    enum ErrorCodes {\n        // 0x00: Unknown error. Something went really bad!\n        Unknown,\n        // Script format errors\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\n        SourceScriptNotCBOR,\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\n        SourceScriptNotArray,\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\n        SourceScriptNotRADON,\n        /// Unallocated\n        ScriptFormat0x04,\n        ScriptFormat0x05,\n        ScriptFormat0x06,\n        ScriptFormat0x07,\n        ScriptFormat0x08,\n        ScriptFormat0x09,\n        ScriptFormat0x0A,\n        ScriptFormat0x0B,\n        ScriptFormat0x0C,\n        ScriptFormat0x0D,\n        ScriptFormat0x0E,\n        ScriptFormat0x0F,\n        // Complexity errors\n        /// 0x10: The request contains too many sources.\n        RequestTooManySources,\n        /// 0x11: The script contains too many calls.\n        ScriptTooManyCalls,\n        /// Unallocated\n        Complexity0x12,\n        Complexity0x13,\n        Complexity0x14,\n        Complexity0x15,\n        Complexity0x16,\n        Complexity0x17,\n        Complexity0x18,\n        Complexity0x19,\n        Complexity0x1A,\n        Complexity0x1B,\n        Complexity0x1C,\n        Complexity0x1D,\n        Complexity0x1E,\n        Complexity0x1F,\n        // Operator errors\n        /// 0x20: The operator does not exist.\n        UnsupportedOperator,\n        /// Unallocated\n        Operator0x21,\n        Operator0x22,\n        Operator0x23,\n        Operator0x24,\n        Operator0x25,\n        Operator0x26,\n        Operator0x27,\n        Operator0x28,\n        Operator0x29,\n        Operator0x2A,\n        Operator0x2B,\n        Operator0x2C,\n        Operator0x2D,\n        Operator0x2E,\n        Operator0x2F,\n        // Retrieval-specific errors\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\n        HTTP,\n        /// 0x31: Retrieval of at least one of the sources timed out.\n        RetrievalTimeout,\n        /// Unallocated\n        Retrieval0x32,\n        Retrieval0x33,\n        Retrieval0x34,\n        Retrieval0x35,\n        Retrieval0x36,\n        Retrieval0x37,\n        Retrieval0x38,\n        Retrieval0x39,\n        Retrieval0x3A,\n        Retrieval0x3B,\n        Retrieval0x3C,\n        Retrieval0x3D,\n        Retrieval0x3E,\n        Retrieval0x3F,\n        // Math errors\n        /// 0x40: Math operator caused an underflow.\n        Underflow,\n        /// 0x41: Math operator caused an overflow.\n        Overflow,\n        /// 0x42: Tried to divide by zero.\n        DivisionByZero,\n        /// Unallocated\n        Math0x43,\n        Math0x44,\n        Math0x45,\n        Math0x46,\n        Math0x47,\n        Math0x48,\n        Math0x49,\n        Math0x4A,\n        Math0x4B,\n        Math0x4C,\n        Math0x4D,\n        Math0x4E,\n        Math0x4F,\n        // Other errors\n        /// 0x50: Received zero reveals\n        NoReveals,\n        /// 0x51: Insufficient consensus in tally precondition clause\n        InsufficientConsensus,\n        /// 0x52: Received zero commits\n        InsufficientCommits,\n        /// 0x53: Generic error during tally execution\n        TallyExecution,\n        /// Unallocated\n        OtherError0x54,\n        OtherError0x55,\n        OtherError0x56,\n        OtherError0x57,\n        OtherError0x58,\n        OtherError0x59,\n        OtherError0x5A,\n        OtherError0x5B,\n        OtherError0x5C,\n        OtherError0x5D,\n        OtherError0x5E,\n        OtherError0x5F,\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\n        MalformedReveal,\n        /// Unallocated\n        OtherError0x61,\n        OtherError0x62,\n        OtherError0x63,\n        OtherError0x64,\n        OtherError0x65,\n        OtherError0x66,\n        OtherError0x67,\n        OtherError0x68,\n        OtherError0x69,\n        OtherError0x6A,\n        OtherError0x6B,\n        OtherError0x6C,\n        OtherError0x6D,\n        OtherError0x6E,\n        OtherError0x6F,\n        // Access errors\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\n        ArrayIndexOutOfBounds,\n        /// 0x71: Tried to access a value from a map using a key that does not exist\n        MapKeyNotFound,\n        /// Unallocated\n        OtherError0x72,\n        OtherError0x73,\n        OtherError0x74,\n        OtherError0x75,\n        OtherError0x76,\n        OtherError0x77,\n        OtherError0x78,\n        OtherError0x79,\n        OtherError0x7A,\n        OtherError0x7B,\n        OtherError0x7C,\n        OtherError0x7D,\n        OtherError0x7E,\n        OtherError0x7F,\n        OtherError0x80,\n        OtherError0x81,\n        OtherError0x82,\n        OtherError0x83,\n        OtherError0x84,\n        OtherError0x85,\n        OtherError0x86,\n        OtherError0x87,\n        OtherError0x88,\n        OtherError0x89,\n        OtherError0x8A,\n        OtherError0x8B,\n        OtherError0x8C,\n        OtherError0x8D,\n        OtherError0x8E,\n        OtherError0x8F,\n        OtherError0x90,\n        OtherError0x91,\n        OtherError0x92,\n        OtherError0x93,\n        OtherError0x94,\n        OtherError0x95,\n        OtherError0x96,\n        OtherError0x97,\n        OtherError0x98,\n        OtherError0x99,\n        OtherError0x9A,\n        OtherError0x9B,\n        OtherError0x9C,\n        OtherError0x9D,\n        OtherError0x9E,\n        OtherError0x9F,\n        OtherError0xA0,\n        OtherError0xA1,\n        OtherError0xA2,\n        OtherError0xA3,\n        OtherError0xA4,\n        OtherError0xA5,\n        OtherError0xA6,\n        OtherError0xA7,\n        OtherError0xA8,\n        OtherError0xA9,\n        OtherError0xAA,\n        OtherError0xAB,\n        OtherError0xAC,\n        OtherError0xAD,\n        OtherError0xAE,\n        OtherError0xAF,\n        OtherError0xB0,\n        OtherError0xB1,\n        OtherError0xB2,\n        OtherError0xB3,\n        OtherError0xB4,\n        OtherError0xB5,\n        OtherError0xB6,\n        OtherError0xB7,\n        OtherError0xB8,\n        OtherError0xB9,\n        OtherError0xBA,\n        OtherError0xBB,\n        OtherError0xBC,\n        OtherError0xBD,\n        OtherError0xBE,\n        OtherError0xBF,\n        OtherError0xC0,\n        OtherError0xC1,\n        OtherError0xC2,\n        OtherError0xC3,\n        OtherError0xC4,\n        OtherError0xC5,\n        OtherError0xC6,\n        OtherError0xC7,\n        OtherError0xC8,\n        OtherError0xC9,\n        OtherError0xCA,\n        OtherError0xCB,\n        OtherError0xCC,\n        OtherError0xCD,\n        OtherError0xCE,\n        OtherError0xCF,\n        OtherError0xD0,\n        OtherError0xD1,\n        OtherError0xD2,\n        OtherError0xD3,\n        OtherError0xD4,\n        OtherError0xD5,\n        OtherError0xD6,\n        OtherError0xD7,\n        OtherError0xD8,\n        OtherError0xD9,\n        OtherError0xDA,\n        OtherError0xDB,\n        OtherError0xDC,\n        OtherError0xDD,\n        OtherError0xDE,\n        OtherError0xDF,\n        // Bridge errors: errors that only belong in inter-client communication\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\n        /// are never included into blocks and therefore never get a Tally in response.\n        BridgeMalformedRequest,\n        /// 0xE1: Witnesses exceeds 100\n        BridgePoorIncentives,\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\n        BridgeOversizedResult,\n        /// Unallocated\n        OtherError0xE3,\n        OtherError0xE4,\n        OtherError0xE5,\n        OtherError0xE6,\n        OtherError0xE7,\n        OtherError0xE8,\n        OtherError0xE9,\n        OtherError0xEA,\n        OtherError0xEB,\n        OtherError0xEC,\n        OtherError0xED,\n        OtherError0xEE,\n        OtherError0xEF,\n        OtherError0xF0,\n        OtherError0xF1,\n        OtherError0xF2,\n        OtherError0xF3,\n        OtherError0xF4,\n        OtherError0xF5,\n        OtherError0xF6,\n        OtherError0xF7,\n        OtherError0xF8,\n        OtherError0xF9,\n        OtherError0xFA,\n        OtherError0xFB,\n        OtherError0xFC,\n        OtherError0xFD,\n        OtherError0xFE,\n        // This should not exist:\n        /// 0xFF: Some tally error is not intercepted but should\n        UnhandledIntercept\n    }\n}\n"},"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./Witnet.sol\";\n\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\n/// start with the byte that goes right after the last one in the previous read.\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\n/// @author The Witnet Foundation.\nlibrary WitnetBuffer {\n\n  // Ensures we access an existing index in an array\n  modifier notOutOfBounds(uint32 index, uint256 length) {\n    require(index < length, \"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\");\n    _;\n  }\n\n  /// @notice Read and consume a certain amount of bytes from the buffer.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @param _length How many bytes to read and consume from the buffer.\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\n    // Make sure not to read out of the bounds of the original bytes\n    require(_buffer.cursor + _length <= _buffer.data.length, \"WitnetBuffer: Not enough bytes in buffer when reading\");\n\n    // Create a new `bytes memory destination` value\n    bytes memory destination = new bytes(_length);\n\n    // Early return in case that bytes length is 0\n    if (_length != 0) {\n      bytes memory source = _buffer.data;\n      uint32 offset = _buffer.cursor;\n\n      // Get raw pointers for source and destination\n      uint sourcePointer;\n      uint destinationPointer;\n      assembly {\n        sourcePointer := add(add(source, 32), offset)\n        destinationPointer := add(destination, 32)\n      }\n      // Copy `_length` bytes from source to destination\n      memcpy(destinationPointer, sourcePointer, uint(_length));\n\n      // Move the cursor forward by `_length` bytes\n      seek(_buffer, _length, true);\n    }\n    return destination;\n  }\n\n  /// @notice Read and consume the next byte from the buffer.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The next byte in the buffer counting from the cursor position.\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\n    return _buffer.data[_buffer.cursor++];\n  }\n\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @param _offset How many bytes to move the cursor forward.\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\n  /// buffer (`true`).\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\n  // solium-disable-next-line security/no-assign-params\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\n    // Deal with relative offsets\n    if (_relative) {\n      require(_offset + _buffer.cursor > _offset, \"WitnetBuffer: Integer overflow when seeking\");\n      _offset += _buffer.cursor;\n    }\n    // Make sure not to read out of the bounds of the original bytes\n    require(_offset <= _buffer.data.length, \"WitnetBuffer: Not enough bytes in buffer when seeking\");\n    _buffer.cursor = _offset;\n    return _buffer.cursor;\n  }\n\n  /// @notice Move the inner cursor a number of bytes forward.\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @param _relativeOffset How many bytes to move the cursor forward.\n  /// @return The final position of the cursor.\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\n    return seek(_buffer, _relativeOffset, true);\n  }\n\n  /// @notice Move the inner cursor back to the first byte in the buffer.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\n    _buffer.cursor = 0;\n  }\n\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\n    bytes memory bytesValue = _buffer.data;\n    uint32 offset = _buffer.cursor;\n    uint8 value;\n    assembly {\n      value := mload(add(add(bytesValue, 1), offset))\n    }\n    _buffer.cursor++;\n\n    return value;\n  }\n\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\n    bytes memory bytesValue = _buffer.data;\n    uint32 offset = _buffer.cursor;\n    uint16 value;\n    assembly {\n      value := mload(add(add(bytesValue, 2), offset))\n    }\n    _buffer.cursor += 2;\n\n    return value;\n  }\n\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\n    bytes memory bytesValue = _buffer.data;\n    uint32 offset = _buffer.cursor;\n    uint32 value;\n    assembly {\n      value := mload(add(add(bytesValue, 4), offset))\n    }\n    _buffer.cursor += 4;\n\n    return value;\n  }\n\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\n    bytes memory bytesValue = _buffer.data;\n    uint32 offset = _buffer.cursor;\n    uint64 value;\n    assembly {\n      value := mload(add(add(bytesValue, 8), offset))\n    }\n    _buffer.cursor += 8;\n\n    return value;\n  }\n\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\n    bytes memory bytesValue = _buffer.data;\n    uint32 offset = _buffer.cursor;\n    uint128 value;\n    assembly {\n      value := mload(add(add(bytesValue, 16), offset))\n    }\n    _buffer.cursor += 16;\n\n    return value;\n  }\n\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\n    bytes memory bytesValue = _buffer.data;\n    uint32 offset = _buffer.cursor;\n    uint256 value;\n    assembly {\n      value := mload(add(add(bytesValue, 32), offset))\n    }\n    _buffer.cursor += 32;\n\n    return value;\n  }\n\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\n  /// `int32`.\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\n  /// @param _buffer An instance of `Witnet.Buffer`.\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\n    uint32 bytesValue = readUint16(_buffer);\n    // Get bit at position 0\n    uint32 sign = bytesValue & 0x8000;\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\n    // Get bits 6 to 15\n    int32 significand = int32(bytesValue & 0x03ff);\n\n    // Add 1024 to the fraction if the exponent is 0\n    if (exponent == 15) {\n      significand |= 0x400;\n    }\n\n    // Compute `2 ^ exponent · (1 + fraction / 1024)`\n    int32 result = 0;\n    if (exponent >= 0) {\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\n    } else {\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\n    }\n\n    // Make the result negative if the sign bit is not 0\n    if (sign != 0) {\n      result *= - 1;\n    }\n    return result;\n  }\n\n  /// @notice Copy bytes from one memory address into another.\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\n  /// @param _dest Address of the destination memory.\n  /// @param _src Address to the source memory.\n  /// @param _len How many bytes to copy.\n  // solium-disable-next-line security/no-assign-params\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\n    require(_len > 0, \"WitnetBuffer: Cannot copy 0 bytes\");\n\n    // Copy word-length chunks while possible\n    for (; _len >= 32; _len -= 32) {\n      assembly {\n        mstore(_dest, mload(_src))\n      }\n      _dest += 32;\n      _src += 32;\n    }\n    if (_len > 0) {\n      // Copy remaining bytes\n      uint mask = 256 ** (32 - _len) - 1;\n      assembly {\n        let srcpart := and(mload(_src), not(mask))\n        let destpart := and(mload(_dest), mask)\n        mstore(_dest, or(destpart, srcpart))\n      }\n    }\n  }\n\n}\n"},"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"./WitnetBuffer.sol\";\n\n/// @title A minimalistic implementation of “RFC 7049 Concise Binary Object Representation”\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\n/// the gas cost of decoding them into a useful native type.\n/// @dev Most of the logic has been borrowed from Patrick Gansterer’s cbor.js library: https://github.com/paroga/cbor-js\n/// @author The Witnet Foundation.\n/// \n/// TODO: add support for Array (majorType = 4)\n/// TODO: add support for Map (majorType = 5)\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \n\nlibrary WitnetDecoderLib {\n\n  using WitnetBuffer for Witnet.Buffer;\n\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as a `bool` value.\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    require(_cborValue.majorType == 7, \"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\");\n    if (_cborValue.len == 20) {\n      return false;\n    } else if (_cborValue.len == 21) {\n      return true;\n    } else {\n      revert(\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\");\n    }\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as a `bytes` value.   \n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    if (_cborValue.len == _UINT32_MAX) {\n      bytes memory bytesData;\n\n      // These checks look repetitive but the equivalent loop would be more expensive.\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\n      if (itemLength < _UINT32_MAX) {\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\n        if (itemLength < _UINT32_MAX) {\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\n        }\n      }\n      return bytesData;\n    } else {\n      return _cborValue.buffer.read(uint32(_cborValue.len));\n    }\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\n    bytes memory _bb = decodeBytes(_cborValue);\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\n    for (uint _i = 0; _i < _len; _i ++) {\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\n    }\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `int128` value.\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\n    require(_cborValue.majorType == 7, \"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\");\n    require(_cborValue.additionalInformation == 25, \"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\");\n    return _cborValue.buffer.readFloat16();\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\n  /// as explained in `decodeFixed16`.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `int128[]` value.\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\n    require(_cborValue.majorType == 4, \"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\");\n\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    require(length < _UINT64_MAX, \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\");\n\n    int32[] memory array = new int32[](length);\n    for (uint64 i = 0; i < length; i++) {\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\n      array[i] = decodeFixed16(item);\n    }\n\n    return array;\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `int128` value.\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\n    if (_cborValue.majorType == 1) {\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n      return int128(-1) - int128(uint128(length));\n    } else if (_cborValue.majorType == 0) {\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\n      // a uniform API for positive and negative numbers\n      return int128(uint128(decodeUint64(_cborValue)));\n    }\n    revert(\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\");\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `int128[]` value.\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\n    require(_cborValue.majorType == 4, \"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\");\n\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    require(length < _UINT64_MAX, \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\");\n\n    int128[] memory array = new int128[](length);\n    for (uint64 i = 0; i < length; i++) {\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\n      array[i] = decodeInt128(item);\n    }\n\n    return array;\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as a `string` value.\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    if (_cborValue.len == _UINT64_MAX) {\n      bytes memory textData;\n      bool done;\n      while (!done) {\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\n        if (itemLength < _UINT64_MAX) {\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\n        } else {\n          done = true;\n        }\n      }\n      return string(textData);\n    } else {\n      return string(readText(_cborValue.buffer, _cborValue.len));\n    }\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `string[]` value.\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\n    require(_cborValue.majorType == 4, \"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\");\n\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    require(length < _UINT64_MAX, \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\");\n\n    string[] memory array = new string[](length);\n    for (uint64 i = 0; i < length; i++) {\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\n      array[i] = decodeString(item);\n    }\n\n    return array;\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `uint64` value.\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\n    require(_cborValue.majorType == 0, \"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\");\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\n  }\n\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\n  /// @param _cborValue An instance of `Witnet.CBOR`.\n  /// @return The value represented by the input, as an `uint64[]` value.\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\n    require(_cborValue.majorType == 4, \"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\");\n\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\n    require(length < _UINT64_MAX, \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\");\n\n    uint64[] memory array = new uint64[](length);\n    for (uint64 i = 0; i < length; i++) {\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\n      array[i] = decodeUint64(item);\n    }\n\n    return array;\n  }\n\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\n\n    return valueFromBuffer(buffer);\n  }\n\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\n    require(_buffer.data.length > 0, \"WitnetDecoderLib: Found empty buffer when parsing CBOR value\");\n\n    uint8 initialByte;\n    uint8 majorType = 255;\n    uint8 additionalInformation;\n    uint64 tag = _UINT64_MAX;\n\n    bool isTagged = true;\n    while (isTagged) {\n      // Extract basic CBOR properties from input bytes\n      initialByte = _buffer.readUint8();\n      majorType = initialByte >> 5;\n      additionalInformation = initialByte & 0x1f;\n\n      // Early CBOR tag parsing.\n      if (majorType == 6) {\n        tag = readLength(_buffer, additionalInformation);\n      } else {\n        isTagged = false;\n      }\n    }\n\n    require(majorType <= 7, \"WitnetDecoderLib: Invalid CBOR major type\");\n\n    return Witnet.CBOR(\n      _buffer,\n      initialByte,\n      majorType,\n      additionalInformation,\n      0,\n      tag);\n  }\n\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\n  /// value of the `additionalInformation` argument.\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\n    if (additionalInformation < 24) {\n      return additionalInformation;\n    }\n    if (additionalInformation == 24) {\n      return _buffer.readUint8();\n    }\n    if (additionalInformation == 25) {\n      return _buffer.readUint16();\n    }\n    if (additionalInformation == 26) {\n      return _buffer.readUint32();\n    }\n    if (additionalInformation == 27) {\n      return _buffer.readUint64();\n    }\n    if (additionalInformation == 31) {\n      return _UINT64_MAX;\n    }\n    revert(\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\");\n  }\n\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\n  /// as many bytes as specified by the first byte.\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\n    uint8 initialByte = _buffer.readUint8();\n    if (initialByte == 0xff) {\n      return _UINT64_MAX;\n    }\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \"WitnetDecoderLib: Invalid indefinite length\");\n    return length;\n  }\n\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\n  /// but it can be easily casted into a string with `string(result)`.\n  // solium-disable-next-line security/no-assign-params\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\n    bytes memory result;\n    for (uint64 index = 0; index < _length; index++) {\n      uint8 value = _buffer.readUint8();\n      if (value & 0x80 != 0) {\n        if (value < 0xe0) {\n          value = (value & 0x1f) << 6 |\n            (_buffer.readUint8() & 0x3f);\n          _length -= 1;\n        } else if (value < 0xf0) {\n          value = (value & 0x0f) << 12 |\n            (_buffer.readUint8() & 0x3f) << 6 |\n            (_buffer.readUint8() & 0x3f);\n          _length -= 2;\n        } else {\n          value = (value & 0x0f) << 18 |\n            (_buffer.readUint8() & 0x3f) << 12 |\n            (_buffer.readUint8() & 0x3f) << 6  |\n            (_buffer.readUint8() & 0x3f);\n          _length -= 3;\n        }\n      }\n      result = abi.encodePacked(result, value);\n    }\n    return result;\n  }\n}\n"},"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"./WitnetDecoderLib.sol\";\n\n/// @title A library for decoding Witnet request results\n/// @notice The library exposes functions to check the Witnet request success.\n/// and retrieve Witnet results from CBOR values into solidity types.\n/// @author The Witnet Foundation.\nlibrary WitnetParserLib {\n\n    using WitnetDecoderLib for bytes;\n    using WitnetDecoderLib for Witnet.CBOR;\n\n    /// @notice Decode raw CBOR bytes into a Witnet.Result instance.\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\n    /// @return A `Witnet.Result` instance.\n    function resultFromCborBytes(bytes calldata _cborBytes)\n        external pure\n        returns (Witnet.Result memory)\n    {\n        Witnet.CBOR memory cborValue = _cborBytes.valueFromBytes();\n        return resultFromCborValue(cborValue);\n    }\n\n    /// @notice Decode a CBOR value into a Witnet.Result instance.\n    /// @param _cborValue An instance of `Witnet.Value`.\n    /// @return A `Witnet.Result` instance.\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\n        public pure\n        returns (Witnet.Result memory)    \n    {\n        // Witnet uses CBOR tag 39 to represent RADON error code identifiers.\n        // [CBOR tag 39] Identifiers for CBOR: https://github.com/lucas-clemente/cbor-specs/blob/master/id.md\n        bool success = _cborValue.tag != 39;\n        return Witnet.Result(success, _cborValue);\n    }\n\n    /// @notice Tell if a Witnet.Result is successful.\n    /// @param _result An instance of Witnet.Result.\n    /// @return `true` if successful, `false` if errored.\n    function isOk(Witnet.Result memory _result)\n        external pure\n        returns (bool)\n    {\n        return _result.success;\n    }\n\n    /// @notice Tell if a Witnet.Result is errored.\n    /// @param _result An instance of Witnet.Result.\n    /// @return `true` if errored, `false` if successful.\n    function isError(Witnet.Result memory _result)\n      external pure\n      returns (bool)\n    {\n        return !_result.success;\n    }\n\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bytes` decoded from the Witnet.Result.\n    function asBytes(Witnet.Result memory _result)\n        external pure\n        returns(bytes memory)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\");\n        return _result.value.decodeBytes();\n    }\n\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bytes32` decoded from the Witnet.Result.\n    function asBytes32(Witnet.Result memory _result)\n        external pure\n        returns(bytes32)\n    {\n        require(_result.success, \"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\");\n        return _result.value.decodeBytes32();\n    }\n\n    /// @notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\n    function asErrorCode(Witnet.Result memory _result)\n        external pure\n        returns (Witnet.ErrorCodes)\n    {\n        uint64[] memory error = asRawError(_result);\n        if (error.length == 0) {\n            return Witnet.ErrorCodes.Unknown;\n        }\n        return _supportedErrorOrElseUnknown(error[0]);\n    }\n\n    /// @notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\n    function asErrorMessage(Witnet.Result memory _result)\n      public pure\n      returns (Witnet.ErrorCodes, string memory)\n    {\n        uint64[] memory error = asRawError(_result);\n        if (error.length == 0) {\n            return (Witnet.ErrorCodes.Unknown, \"Unknown error (no error code)\");\n        }\n        Witnet.ErrorCodes errorCode = _supportedErrorOrElseUnknown(error[0]);\n        bytes memory errorMessage;\n\n        if (errorCode == Witnet.ErrorCodes.SourceScriptNotCBOR && error.length >= 2) {\n            errorMessage = abi.encodePacked(\n                \"Source script #\",\n                _utoa(error[1]),\n                \" was not a valid CBOR value\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotArray && error.length >= 2) {\n            errorMessage = abi.encodePacked(\n                \"The CBOR value in script #\",\n                _utoa(error[1]),\n                \" was not an Array of calls\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotRADON && error.length >= 2) {\n            errorMessage = abi.encodePacked(\n                \"The CBOR value in script #\",\n                _utoa(error[1]),\n                \" was not a valid Data Request\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.RequestTooManySources && error.length >= 2) {\n            errorMessage = abi.encodePacked(\n                \"The request contained too many sources (\", \n                _utoa(error[1]), \n                \")\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.ScriptTooManyCalls && error.length >= 4) {\n            errorMessage = abi.encodePacked(\n                \"Script #\",\n                _utoa(error[2]),\n                \" from the \",\n                stageName(error[1]),\n                \" stage contained too many calls (\",\n                _utoa(error[3]),\n                \")\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.UnsupportedOperator && error.length >= 5) {\n            errorMessage = abi.encodePacked(\n                \"Operator code 0x\",\n                _utohex(error[4]),\n                \" found at call #\",\n                _utoa(error[3]),\n                \" in script #\",\n                _utoa(error[2]),\n                \" from \",\n                stageName(error[1]),\n                \" stage is not supported\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.HTTP && error.length >= 3) {\n            errorMessage = abi.encodePacked(\n                \"Source #\",\n                _utoa(error[1]),\n                \" could not be retrieved. Failed with HTTP error code: \",\n                _utoa(error[2] / 100),\n                _utoa(error[2] % 100 / 10),\n                _utoa(error[2] % 10)\n            );\n        } else if (errorCode == Witnet.ErrorCodes.RetrievalTimeout && error.length >= 2) {\n            errorMessage = abi.encodePacked(\n                \"Source #\",\n                _utoa(error[1]),\n                \" could not be retrieved because of a timeout\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.Underflow && error.length >= 5) {\n              errorMessage = abi.encodePacked(\n                \"Underflow at operator code 0x\",\n                _utohex(error[4]),\n                \" found at call #\",\n                _utoa(error[3]),\n                \" in script #\",\n                _utoa(error[2]),\n                \" from \",\n                stageName(error[1]),\n                \" stage\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.Overflow && error.length >= 5) {\n            errorMessage = abi.encodePacked(\n                \"Overflow at operator code 0x\",\n                _utohex(error[4]),\n                \" found at call #\",\n                _utoa(error[3]),\n                \" in script #\",\n                _utoa(error[2]),\n                \" from \",\n                stageName(error[1]),\n                \" stage\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.DivisionByZero && error.length >= 5) {\n            errorMessage = abi.encodePacked(\n                \"Division by zero at operator code 0x\",\n                _utohex(error[4]),\n                \" found at call #\",\n                _utoa(error[3]),\n                \" in script #\",\n                _utoa(error[2]),\n                \" from \",\n                stageName(error[1]),\n                \" stage\"\n            );\n        } else if (errorCode == Witnet.ErrorCodes.BridgeMalformedRequest) {\n            errorMessage = \"The structure of the request is invalid and it cannot be parsed\";\n        } else if (errorCode == Witnet.ErrorCodes.BridgePoorIncentives) {\n            errorMessage = \"The request has been rejected by the bridge node due to poor incentives\";\n        } else if (errorCode == Witnet.ErrorCodes.BridgeOversizedResult) {\n            errorMessage = \"The request result length exceeds a bridge contract defined limit\";\n        } else {\n            errorMessage = abi.encodePacked(\"Unknown error (0x\", _utohex(error[0]), \")\");\n        }\n        return (errorCode, string(errorMessage));\n    }\n\n    /// @notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\n    /// @param _result An instance of `Witnet.Result`.\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\n    function asRawError(Witnet.Result memory _result)\n        public pure\n        returns(uint64[] memory)\n    {\n        require(\n            !_result.success,\n            \"WitnetParserLib: Tried to read error code from successful Witnet.Result\"\n        );\n        return _result.value.decodeUint64Array();\n    }\n\n    /// @notice Decode a boolean value from a Witnet.Result as an `bool` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `bool` decoded from the Witnet.Result.\n    function asBool(Witnet.Result memory _result)\n        external pure\n        returns (bool)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\");\n        return _result.value.decodeBool();\n    }\n\n    /// @notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128` decoded from the Witnet.Result.\n    function asFixed16(Witnet.Result memory _result)\n        external pure\n        returns (int32)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\");\n        return _result.value.decodeFixed16();\n    }\n\n    /// @notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128[]` decoded from the Witnet.Result.\n    function asFixed16Array(Witnet.Result memory _result)\n        external pure\n        returns (int32[] memory)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\");\n        return _result.value.decodeFixed16Array();\n    }\n\n    /// @notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128` decoded from the Witnet.Result.\n    function asInt128(Witnet.Result memory _result)\n      external pure\n      returns (int128)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\");\n        return _result.value.decodeInt128();\n    }\n\n    /// @notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `int128[]` decoded from the Witnet.Result.\n    function asInt128Array(Witnet.Result memory _result)\n        external pure\n        returns (int128[] memory)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\");\n        return _result.value.decodeInt128Array();\n    }\n\n    /// @notice Decode a string value from a Witnet.Result as a `string` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `string` decoded from the Witnet.Result.\n    function asString(Witnet.Result memory _result)\n        external pure\n        returns(string memory)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\");\n        return _result.value.decodeString();\n    }\n\n    /// @notice Decode an array of string values from a Witnet.Result as a `string[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `string[]` decoded from the Witnet.Result.\n    function asStringArray(Witnet.Result memory _result)\n        external pure\n        returns (string[] memory)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\");\n        return _result.value.decodeStringArray();\n    }\n\n    /// @notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `uint64` decoded from the Witnet.Result.\n    function asUint64(Witnet.Result memory _result)\n        external pure\n        returns(uint64)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\");\n        return _result.value.decodeUint64();\n    }\n\n    /// @notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\n    /// @param _result An instance of Witnet.Result.\n    /// @return The `uint64[]` decoded from the Witnet.Result.\n    function asUint64Array(Witnet.Result memory _result)\n        external pure\n        returns (uint64[] memory)\n    {\n        require(_result.success, \"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\");\n        return _result.value.decodeUint64Array();\n    }\n\n    /// @notice Convert a stage index number into the name of the matching Witnet request stage.\n    /// @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\n    /// @return The name of the matching stage.\n    function stageName(uint64 _stageIndex)\n        public pure\n        returns (string memory)\n    {\n        if (_stageIndex == 0) {\n            return \"retrieval\";\n        } else if (_stageIndex == 1) {\n            return \"aggregation\";\n        } else if (_stageIndex == 2) {\n            return \"tally\";\n        } else {\n            return \"unknown\";\n        }\n    }\n\n    /// @notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\n    /// @param _discriminant The numeric identifier of an error.\n    /// @return A member of `Witnet.ErrorCodes`.\n    function _supportedErrorOrElseUnknown(uint64 _discriminant)\n        private pure\n        returns (Witnet.ErrorCodes)\n    {\n        return Witnet.ErrorCodes(_discriminant);\n    }\n\n    /// @notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\n    /// three less significant decimal values.\n    /// @param _u A `uint64` value.\n    /// @return The `string` representing its decimal value.\n    function _utoa(uint64 _u)\n        private pure\n        returns (string memory)\n    {\n        if (_u < 10) {\n            bytes memory b1 = new bytes(1);\n            b1[0] = bytes1(uint8(_u) + 48);\n            return string(b1);\n        } else if (_u < 100) {\n            bytes memory b2 = new bytes(2);\n            b2[0] = bytes1(uint8(_u / 10) + 48);\n            b2[1] = bytes1(uint8(_u % 10) + 48);\n            return string(b2);\n        } else {\n            bytes memory b3 = new bytes(3);\n            b3[0] = bytes1(uint8(_u / 100) + 48);\n            b3[1] = bytes1(uint8(_u % 100 / 10) + 48);\n            b3[2] = bytes1(uint8(_u % 10) + 48);\n            return string(b3);\n        }\n    }\n\n    /// @notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\n    /// @param _u A `uint64` value.\n    /// @return The `string` representing its hexadecimal value.\n    function _utohex(uint64 _u)\n        private pure\n        returns (string memory)\n    {\n        bytes memory b2 = new bytes(2);\n        uint8 d0 = uint8(_u / 16) + 48;\n        uint8 d1 = uint8(_u % 16) + 48;\n        if (d0 > 57)\n            d0 += 7;\n        if (d1 > 57)\n            d1 += 7;\n        b2[0] = bytes1(d0);\n        b2[1] = bytes1(d1);\n        return string(b2);\n    }\n}\n"},"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"../apps/WitnetRandomness.sol\";\n\n/// @title WitnetRandomness mock contract implementation. \n/// @dev TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. \n/// @dev ON SUPPORTED TESTNETS, PLEASE USE THE `WitnetRandomness`\n/// @dev CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.\n/// @dev SEE: https://docs.witnet.io/smart-contracts/witnet-randomness-oracle/contract-addresses\n/// @author Witnet Foundation.\ncontract WitnetRandomnessMock\n    is\n        WitnetRandomness\n{\n    uint8 internal __mockRandomizeLatencyBlocks;\n    uint256 internal __mockRandomizeFee;\n    uint256 internal __mockRandomizeLatestId;\n\n    /// Constructor: new WitnetRandomnessMock contract\n    /// @param _mockRandomizeLatencyBlocks Mocked number of blocks in which a new randomness will be provided after `randomize()`\n    /// @param _mockRandomizeFee Mocked randomize fee (will be constant no matter what tx gas price is provided).\n    constructor (\n            uint8 _mockRandomizeLatencyBlocks,\n            uint256 _mockRandomizeFee\n        )\n        WitnetRandomness(WitnetRequestBoard(payable(0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF)))\n    {\n        __mockRandomizeLatencyBlocks = _mockRandomizeLatencyBlocks;\n        __mockRandomizeFee = _mockRandomizeFee;\n    }\n\n    /// Returns mocked amount of wei required to be paid as a fee when requesting new randomization.\n    function estimateRandomizeFee(uint256)\n        public view\n        virtual override\n        returns (uint256)\n    {\n        return __mockRandomizeFee;\n    }\n\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\n    /// @param _block Block number whose randomness request is being queried for.\n    /// @return _from Address from which the latest randomness request was posted.\n    /// @return _id Unique request identifier as provided by the WRB.\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\n    function getRandomizeData(uint256 _block)\n        external view\n        virtual override\n        returns (\n            address _from,\n            uint256 _id,\n            uint256 _prevBlock,\n            uint256 _nextBlock\n        )\n    {\n        RandomizeData storage _data = __randomize_[_block];\n        _id = _data.witnetQueryId;\n        _from = _data.from;\n        _prevBlock = _data.prevBlock;\n        _nextBlock = _data.nextBlock;\n    }\n\n    /// Mocks randomness generated upon solving a request that was posted within a given block,\n    /// if more than `__mockRandomizeLatencyBlocks` have elapsed since rquest, or to the _first_ request \n    /// posted after that block, otherwise. \n    /// @dev Please, note that 256 blocks after a `randomize()` request, randomness will be possibly returned \n    /// @dev as `bytes32(0)` (depending on actual EVM implementation). \n    /// @dev Fails if:\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\n    /// @dev   ii.  a request posted in/after given block does exist, but lest than `__mockRandomizeLatencyBlocks` have elapsed.\n    /// @param _block Block number from which the search will start.\n    function getRandomnessAfter(uint256 _block)\n        public view\n        virtual override\n        returns (bytes32)\n    {\n        if (__randomize_[_block].from == address(0)) {\n            _block = getRandomnessNextBlock(_block);\n        }\n        uint256 _queryId = __randomize_[_block].witnetQueryId;\n        require(_queryId != 0, \"WitnetRandomnessMock: not randomized\");\n        require(block.number >= _block + __mockRandomizeLatencyBlocks, \"WitnetRandomnessMock: pending randomize\");\n        return blockhash(_block);\n    }\n\n    /// Mocks `true` only when a randomness request got actually posted within given block,\n    /// and at least `__mockRandomizeLatencyBlocks` have elapsed since then. \n    function isRandomized(uint256 _block)\n        public view\n        virtual override\n        returns (bool)\n    {\n        RandomizeData storage _data = __randomize_[_block];\n        return (\n            _data.witnetQueryId != 0 \n                && block.number >= _block + __mockRandomizeLatencyBlocks\n        );\n    }\n\n    /// Mocks request to generate randomness, using underlying EVM as entropy source.\n    /// Only one randomness request per block will be actually posted. Unused funds shall \n    /// be transfered back to the tx sender.\n    /// @dev FOR UNITARY TESTING ONLY. DO NOT USE IN PRODUCTION, AS PROVIDED RANDOMNESS\n    /// @dev WILL NEITHER BE EVM-AGNOSTIC, NOR SECURE.\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\n    function randomize()\n        external payable\n        virtual override\n        returns (uint256 _usedFunds)\n    {\n        if (latestRandomizeBlock < block.number) {\n            _usedFunds = __mockRandomizeFee;\n            require(\n                msg.value >= _usedFunds,\n                \"WitnetRandomnessMock: reward too low\"\n            );\n            // Post the Witnet Randomness request:\n            uint _queryId = ++ __mockRandomizeLatestId;\n            RandomizeData storage _data = __randomize_[block.number];\n            _data.from = msg.sender;\n            _data.witnetQueryId = _queryId;            \n            // Update block links:\n            uint256 _prevBlock = latestRandomizeBlock;\n            _data.prevBlock = _prevBlock;\n            __randomize_[_prevBlock].nextBlock = block.number;\n            latestRandomizeBlock = block.number;\n            // Throw event:\n            emit Randomized(\n                msg.sender,\n                _prevBlock,\n                _queryId,\n                witnetRandomnessRequest.hash()\n            );\n        }\n        // Transfer back unused tx value:\n        if (_usedFunds < msg.value) {\n            payable(msg.sender).transfer(msg.value - _usedFunds);\n        }\n    }\n\n    /// Mocks by ignoring any fee increase on a pending-to-be-solved randomness request.\n    /// @dev The whole `msg.value` shall be transferred back to the tx sender.\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\n    function upgradeRandomizeFee(uint256)\n        public payable\n        virtual override\n        returns (uint256)\n    {\n        if (msg.value > 0) {\n            payable(msg.sender).transfer(msg.value);\n        }\n        return 0;\n    }\n}\n"},"witnet-solidity-bridge/contracts/patterns/Clonable.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.6.0 <0.9.0;\n\nimport \"./Initializable.sol\";\n\nabstract contract Clonable is Initializable {\n    /// Immutable contract address that actually attends all calls to this contract.\n    /// @dev Differs from `address(this)` when reached within a DELEGATECALL.\n    address immutable public self = address(this);\n\n    event Cloned(address indexed by, Clonable indexed self, Clonable indexed clone);\n\n    /// Tells whether this contract is a clone of another (i.e. `self()`)\n    function cloned()\n        public view\n        returns (bool)\n    {\n        return (\n            address(this) != self\n        );\n    }\n\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\n    /// behaviour while using its own EVM storage.\n    /// @dev This function should always provide a new address, no matter how many times \n    /// @dev is actually called from the same `msg.sender`.\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\n    function clone()\n        public virtual\n        returns (Clonable _instance)\n    {\n        address _self = self;\n        assembly {\n            // ptr to free mem:\n            let ptr := mload(0x40)\n            // begin minimal proxy construction bytecode:\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\n            // make minimal proxy delegate all calls to `self()`:\n            mstore(add(ptr, 0x14), shl(0x60, _self))\n            // end minimal proxy construction bytecode:\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\n            // CREATE new instance:\n            _instance := create(0, ptr, 0x37)\n        }        \n        require(address(_instance) != address(0), \"Clonable: CREATE failed\");\n        emit Cloned(msg.sender, Clonable(self), _instance);\n    }\n\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \n    /// behaviour while using its own EVM storage.\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\n    /// @dev the clone. Using the same `_salt` multiple times will revert, since\n    /// @dev no contract can be deployed more than once at the same address.\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\n    function cloneDeterministic(bytes32 _salt)\n        public virtual\n        returns (Clonable _instance)\n    {\n        address _self = self;\n        assembly {\n            // ptr to free mem:\n            let ptr := mload(0x40)\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\n            // make minimal proxy delegate all calls to `self()`:\n            mstore(add(ptr, 0x14), shl(0x60, _self))\n            // end minimal proxy construction bytecode:\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\n            // CREATE2 new instance:\n            _instance := create2(0, ptr, 0x37, _salt)\n        }\n        require(address(_instance) != address(0), \"Clonable: CREATE2 failed\");\n        emit Cloned(msg.sender, Clonable(self), _instance);\n    }\n}\n"},"witnet-solidity-bridge/contracts/patterns/Context.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity ^0.8.0;\n\n/// @dev Provides information about the current execution context, including the\n/// sender of the transaction and its data. While these are generally available\n/// via msg.sender and msg.data, they should not be accessed in such a direct\n/// manner, since when dealing with meta-transactions the account sending and\n/// paying for execution may not be the actual sender (as far as an application\n/// is concerned).\nabstract contract Context {\n    function _msgSender() internal view virtual returns (address) {\n        return msg.sender;\n    }\n\n    function _msgData() internal view virtual returns (bytes calldata) {\n        return msg.data;\n    }\n\n    function _msgValue() internal view virtual returns (uint256) {\n        return msg.value;\n    }\n}\n"},"witnet-solidity-bridge/contracts/patterns/Destructible.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.6.0 <0.9.0;\n\ninterface Destructible {\n    /// @dev Self-destruct the whole contract.\n    function destruct() external;\n}\n"},"witnet-solidity-bridge/contracts/patterns/Initializable.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.6.0 <0.9.0;\n\ninterface Initializable {\n    /// @dev Initialize contract's storage context.\n    function initialize(bytes calldata) external;\n}\n"},"witnet-solidity-bridge/contracts/patterns/Ownable.sol":{"content":"// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts v4.3.2 (access/Ownable.sol)\n\npragma solidity ^0.8.0;\n\nimport \"./Context.sol\";\n\n/// @dev Contract module which provides a basic access control mechanism, where\n/// there is an account (an owner) that can be granted exclusive access to\n/// specific functions.\n///\n/// By default, the owner account will be the one that deploys the contract. This\n/// can later be changed with {transferOwnership}.\n///\n/// This module is used through inheritance. It will make available the modifier\n/// `onlyOwner`, which can be applied to your functions to restrict their use to\n/// the owner.\n\nabstract contract Ownable is Context {\n    address private _owner;\n\n    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\n\n    /// @dev Initializes the contract setting the deployer as the initial owner.\n    constructor() {\n        _transferOwnership(_msgSender());\n    }\n\n    /// @dev Returns the address of the current owner.\n    function owner() public view virtual returns (address) {\n        return _owner;\n    }\n\n    /// @dev Throws if called by any account other than the owner.\n    modifier onlyOwner() {\n        require(owner() == _msgSender(), \"Ownable: caller is not the owner\");\n        _;\n    }\n\n    /// @dev Leaves the contract without owner. It will not be possible to call\n    /// `onlyOwner` functions anymore. Can only be called by the current owner.\n    /// NOTE: Renouncing ownership will leave the contract without an owner,\n    /// thereby removing any functionality that is only available to the owner.\n    function renounceOwnership() public virtual onlyOwner {\n        _transferOwnership(address(0));\n    }\n\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\n    /// Can only be called by the current owner.\n    function transferOwnership(address newOwner) public virtual onlyOwner {\n        require(newOwner != address(0), \"Ownable: new owner is the zero address\");\n        _transferOwnership(newOwner);\n    }\n\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\n    /// Internal function without access restriction.\n    function _transferOwnership(address newOwner) internal virtual {\n        address oldOwner = _owner;\n        _owner = newOwner;\n        emit OwnershipTransferred(oldOwner, newOwner);\n    }\n}"},"witnet-solidity-bridge/contracts/patterns/Payable.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.6.0 <0.9.0;\n\nimport \"../interfaces/IERC20.sol\";\n\nabstract contract Payable {\n    IERC20 public immutable currency;\n\n    event Received(address from, uint256 amount);\n    event Transfer(address to, uint256 amount);\n\n    constructor(address _currency) {\n        currency = IERC20(_currency);\n    }\n\n    /// Gets current transaction price.\n    function _getGasPrice() internal view virtual returns (uint256);\n\n    /// Gets current payment value.\n    function _getMsgValue() internal view virtual returns (uint256);\n\n    /// Perform safe transfer or whatever token is used for paying rewards.\n    function _safeTransferTo(address payable, uint256) internal virtual;\n}\n"},"witnet-solidity-bridge/contracts/patterns/Proxiable.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.6.0 <0.9.0;\n\ninterface Proxiable {\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\n    function proxiableUUID() external pure returns (bytes32);\n}\n"},"witnet-solidity-bridge/contracts/patterns/Upgradable.sol":{"content":"// SPDX-License-Identifier: MIT\n\n/* solhint-disable var-name-mixedcase */\n\npragma solidity >=0.6.0 <0.9.0;\n\nimport \"./Initializable.sol\";\nimport \"./Proxiable.sol\";\n\nabstract contract Upgradable is Initializable, Proxiable {\n\n    address internal immutable _BASE;\n    bytes32 internal immutable _CODEHASH;\n    bool internal immutable _UPGRADABLE;\n\n    /// Emitted every time the contract gets upgraded.\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \"trustable\" implementations.\n    /// @param baseAddr The address of the new implementation contract.\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\n    event Upgraded(\n        address indexed from,\n        address indexed baseAddr,\n        bytes32 indexed baseCodehash,\n        bytes32 versionTag\n    );\n\n    constructor (bool _isUpgradable) {\n        address _base = address(this);\n        bytes32 _codehash;        \n        assembly {\n            _codehash := extcodehash(_base)\n        }\n        _BASE = _base;\n        _CODEHASH = _codehash;        \n        _UPGRADABLE = _isUpgradable;\n    }\n\n    /// @dev Tells whether provided address could eventually upgrade the contract.\n    function isUpgradableFrom(address from) virtual external view returns (bool);\n\n\n    /// TODO: the following methods should be all declared as pure \n    ///       whenever this Solidity's PR gets merged and released: \n    ///       https://github.com/ethereum/solidity/pull/10240\n\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\n    function base() public view returns (address) {\n        return _BASE;\n    }\n\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\n    /// @return _codehash This contracts immutable codehash.\n    function codehash() public view returns (bytes32 _codehash) {\n        return _CODEHASH;\n    }\n    \n    /// @dev Determines whether current instance allows being upgraded.\n    /// @dev Returned value should be invariant from whoever is calling.\n    function isUpgradable() public view returns (bool) {        \n        return _UPGRADABLE;\n    }\n\n    /// @dev Retrieves human-redable named version of current implementation.\n    function version() virtual public view returns (bytes32); \n}"},"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"../libs/Witnet.sol\";\n\nabstract contract WitnetRequestBase\n    is\n        IWitnetRequest\n{\n    /// Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\n    bytes public override bytecode;\n\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\n    bytes32 public override hash;\n}\n"},"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./WitnetRequestBase.sol\";\nimport \"../patterns/Initializable.sol\";\n\nabstract contract WitnetRequestInitializableBase\n    is\n        Initializable,\n        WitnetRequestBase\n{\n    using Witnet for bytes;\n    function initialize(bytes memory _bytecode)\n        public\n        virtual override\n    {\n        require(\n            bytecode.length == 0,\n            \"WitnetRequestInitializableBase: cannot change bytecode\"\n        );\n        bytecode = _bytecode;\n        hash = _bytecode.hash();\n    }\n}\n"},"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"../libs/Witnet.sol\";\nimport \"../patterns/Clonable.sol\";\nimport \"../patterns/Ownable.sol\";\nimport \"../patterns/Proxiable.sol\";\n\nabstract contract WitnetRequestMalleableBase\n    is\n        IWitnetRequest,\n        Clonable,\n        Ownable,\n        Proxiable\n{   \n    using Witnet for *;\n\n    event WitnessingParamsChanged(\n        address indexed by,\n        uint8 numWitnesses,\n        uint8 minWitnessingConsensus,\n        uint64 witnssingCollateral,\n        uint64 witnessingReward,\n        uint64 witnessingUnitaryFee\n    );\n\n    struct WitnetRequestMalleableBaseContext {\n        /// Contract owner address.\n        address owner;\n        /// Immutable bytecode template.\n        bytes template;\n        /// Current request bytecode.\n        bytes bytecode;\n        /// Current request hash.\n        bytes32 hash;\n        /// Current request witnessing params.\n        WitnetRequestWitnessingParams params;\n    }\n\n    struct WitnetRequestWitnessingParams {\n        /// Number of witnesses required to be involved for solving this Witnet Data Request.\n        uint8 numWitnesses;\n\n        /// Threshold percentage for aborting resolution of a request if the witnessing nodes did not arrive to a broad consensus.\n        uint8 minWitnessingConsensus;\n\n        /// Amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\n        uint64 witnessingCollateral;\n\n        /// Amount of nanowits that every request-solving witness will be rewarded with.\n        uint64 witnessingReward;\n\n        /// Amount of nanowits that will be earned by Witnet miners for each each valid commit/reveal transaction they include in a block.\n        uint64 witnessingUnitaryFee;\n    }\n\n    /// Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\n    function bytecode() external view override returns (bytes memory) {\n        return _request().bytecode;\n    }\n\n    /// Returns SHA256 hash of current Witnet Data Request bytecode.\n    function hash() external view override returns (bytes32) {\n        return _request().hash;\n    }\n\n    /// Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\n    function setWitnessingCollateral(uint64 _witnessingCollateral)\n        public\n        virtual\n        onlyOwner\n    {\n        WitnetRequestWitnessingParams storage _params = _request().params;\n        _params.witnessingCollateral = _witnessingCollateral;\n        _malleateBytecode(\n            _params.numWitnesses,\n            _params.minWitnessingConsensus,\n            _witnessingCollateral,\n            _params.witnessingReward,\n            _params.witnessingUnitaryFee\n        );\n    }\n\n    /// Specifies how much you want to pay for rewarding each of the Witnet nodes.\n    /// @param _witnessingReward Amount of nanowits that every request-solving witness will be rewarded with.\n    /// @param _witnessingUnitaryFee Amount of nanowits that will be earned by Witnet miners for each each valid \n    /// commit/reveal transaction they include in a block.\n    function setWitnessingFees(uint64 _witnessingReward, uint64 _witnessingUnitaryFee)\n        public\n        virtual\n        onlyOwner\n    {\n        WitnetRequestWitnessingParams storage _params = _request().params;\n        _params.witnessingReward = _witnessingReward;\n        _params.witnessingUnitaryFee = _witnessingUnitaryFee;\n        _malleateBytecode(\n            _params.numWitnesses,\n            _params.minWitnessingConsensus,\n            _params.witnessingCollateral,\n            _witnessingReward,\n            _witnessingUnitaryFee\n        );\n    }\n\n    /// Sets how many Witnet nodes will be \"hired\" for resolving the request.\n    /// @param _numWitnesses Number of witnesses required to be involved for solving this Witnet Data Request.\n    /// @param _minWitnessingConsensus Threshold percentage for aborting resolution of a request if the witnessing \n    /// nodes did not arrive to a broad consensus.\n    function setWitnessingQuorum(uint8 _numWitnesses, uint8 _minWitnessingConsensus)\n        public\n        virtual\n        onlyOwner\n    {\n        WitnetRequestWitnessingParams storage _params = _request().params;\n        _params.numWitnesses = _numWitnesses;\n        _params.minWitnessingConsensus = _minWitnessingConsensus;\n        _malleateBytecode(\n            _numWitnesses,\n            _minWitnessingConsensus,\n            _params.witnessingCollateral,\n            _params.witnessingReward,\n            _params.witnessingUnitaryFee\n        );\n    }\n\n    /// Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol\n    /// level, including no witnessing parameters at all.\n    function template()\n        external view\n        returns (bytes memory)\n    {\n        return _request().template;\n    }\n\n    /// Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\n    function totalWitnessingCollateral()\n        external view\n        returns (uint128)\n    {\n        WitnetRequestWitnessingParams storage _params = _request().params;\n        return _params.numWitnesses * _params.witnessingCollateral;\n    }\n\n    /// Returns total amount of nanowits that will have to be paid in total for this request to be solved.\n    function totalWitnessingFee()\n        external view\n        returns (uint128)\n    {\n        WitnetRequestWitnessingParams storage _params = _request().params;\n        return _params.numWitnesses * (2 * _params.witnessingUnitaryFee + _params.witnessingReward);\n    }\n\n    /// Returns witnessing parameters of current Witnet Data Request.\n    function witnessingParams()\n        external view\n        returns (WitnetRequestWitnessingParams memory)\n    {\n        return _request().params;\n    }\n\n\n    // ================================================================================================================\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\n\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\n    /// behaviour while using its own EVM storage.\n    /// @dev This function should always provide a new address, no matter how many times \n    /// @dev is actually called from the same `msg.sender`.\n    function clone()\n        public\n        virtual override\n        returns (Clonable _instance)\n    {\n        _instance = super.clone();\n        _instance.initialize(_request().template);\n        Ownable(address(_instance)).transferOwnership(msg.sender);\n    }\n\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \n    /// behaviour while using its own EVM storage.\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\n    /// @dev no contract can be deployed more than once at the same address.\n    function cloneDeterministic(bytes32 _salt)\n        public\n        virtual override\n        returns (Clonable _instance)\n    {\n        _instance = super.cloneDeterministic(_salt);\n        _instance.initialize(_request().template);\n        Ownable(address(_instance)).transferOwnership(msg.sender);\n    }\n\n\n    // ================================================================================================================\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\n\n    /// @dev Initializes contract's storage context.\n    function initialize(bytes memory _template)\n        public\n        virtual override\n    {\n        require(_request().template.length == 0, \"WitnetRequestMalleableBase: already initialized\");\n        _initialize(_template);\n        _transferOwnership(_msgSender());\n    }\n\n    // ================================================================================================================\n    // --- 'Ownable' overriden functions ------------------------------------------------------------------------------\n\n    /// Returns the address of the current owner.\n    function owner()\n        public view\n        virtual override\n        returns (address)\n    {\n        return _request().owner;\n    }\n\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\n    function _transferOwnership(address newOwner)\n        internal\n        virtual override\n    {\n        address oldOwner = _request().owner;\n        _request().owner = newOwner;\n        emit OwnershipTransferred(oldOwner, newOwner);\n    }\n\n    // ================================================================================================================\n    // --- 'Proxiable 'overriden functions ----------------------------------------------------------------------------\n\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\n    function proxiableUUID()\n        external pure\n        virtual override\n        returns (bytes32)\n    {\n        return (\n            /* keccak256(\"io.witnet.requests.malleable\") */\n            0x851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c2\n        );\n    }\n\n\n    // ================================================================================================================\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------    \n\n    /// @dev Initializes witnessing params and template bytecode.\n    function _initialize(bytes memory _template)\n        internal\n    {\n        assert(_template.length > 0);\n        _request().template = _template;\n\n        WitnetRequestWitnessingParams storage _params = _request().params;\n        _params.numWitnesses = 2;\n        _params.minWitnessingConsensus = 51;\n        _params.witnessingCollateral = 10 ** 9;      // 1 WIT\n        _params.witnessingReward = 5 * 10 ** 5;      // 0.5 milliWITs\n        _params.witnessingUnitaryFee = 25 * 10 ** 4; // 0.25 milliWITs\n        \n        _malleateBytecode(\n            _params.numWitnesses,\n            _params.minWitnessingConsensus,\n            _params.witnessingCollateral,\n            _params.witnessingReward,\n            _params.witnessingUnitaryFee\n        );\n    }\n\n    /// @dev Serializes new `bytecode` by combining immutable template with given parameters.\n    function _malleateBytecode(\n            uint8 _numWitnesses,\n            uint8 _minWitnessingConsensus,\n            uint64 _witnessingCollateral,\n            uint64 _witnessingReward,\n            uint64 _witnessingUnitaryFee\n        )\n        internal\n        virtual\n    {\n        require(\n            _witnessingReward > 0,\n            \"WitnetRequestMalleableBase: no reward\"\n        );\n        require(\n            _numWitnesses >= 1 && _numWitnesses <= 127,\n            \"WitnetRequestMalleableBase: number of witnesses out of range\"\n        );\n        require(\n            _minWitnessingConsensus >= 51 && _minWitnessingConsensus <= 99,\n            \"WitnetRequestMalleableBase: witnessing consensus out of range\"\n        );\n        require(\n            _witnessingCollateral >= 10 ** 9,\n            \"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\"\n        );\n\n        _request().bytecode = abi.encodePacked(\n            _request().template,\n            _uint64varint(bytes1(0x10), _witnessingReward),\n            _uint8varint(bytes1(0x18), _numWitnesses),\n            _uint64varint(0x20, _witnessingUnitaryFee),\n            _uint8varint(0x28, _minWitnessingConsensus),\n            _uint64varint(0x30, _witnessingCollateral)\n        );\n        _request().hash = _request().bytecode.hash();\n        emit WitnessingParamsChanged(\n            msg.sender,\n            _numWitnesses,\n            _minWitnessingConsensus,\n            _witnessingCollateral,\n            _witnessingReward,\n            _witnessingUnitaryFee\n        );\n    }\n\n    /// @dev Returns pointer to storage slot where State struct is located.\n    function _request()\n        internal pure\n        virtual\n        returns (WitnetRequestMalleableBaseContext storage _ptr)\n    {\n        assembly {\n            _ptr.slot :=\n                /* keccak256(\"io.witnet.requests.malleable.context\") */\n                0x375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7\n        }\n    }\n\n    /// @dev Encode uint64 into tagged varint.\n    /// @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\n    /// @param t Tag\n    /// @param n Number\n    /// @return Marshaled bytes\n    function _uint64varint(bytes1 t, uint64 n)\n        internal pure\n        returns (bytes memory)\n    {\n        // Count the number of groups of 7 bits\n        // We need this pre-processing step since Solidity doesn't allow dynamic memory resizing\n        uint64 tmp = n;\n        uint64 numBytes = 2;\n        while (tmp > 0x7F) {\n            tmp = tmp >> 7;\n            numBytes += 1;\n        }\n        bytes memory buf = new bytes(numBytes);\n        tmp = n;\n        buf[0] = t;\n        for (uint64 i = 1; i < numBytes; i++) {\n            // Set the first bit in the byte for each group of 7 bits\n            buf[i] = bytes1(0x80 | uint8(tmp & 0x7F));\n            tmp = tmp >> 7;\n        }\n        // Unset the first bit of the last byte\n        buf[numBytes - 1] &= 0x7F;\n        return buf;\n    }\n\n    /// @dev Encode uint8 into tagged varint.\n    /// @param t Tag\n    /// @param n Number\n    /// @return Marshaled bytes\n    function _uint8varint(bytes1 t, uint8 n)\n        internal pure\n        returns (bytes memory)\n    {\n        return _uint64varint(t, uint64(n));\n    }\n}\n"},"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\n\nimport \"./WitnetRequestMalleableBase.sol\";\n\ncontract WitnetRequestRandomness is WitnetRequestMalleableBase {\n    bytes internal constant _WITNET_RANDOMNESS_BYTECODE_TEMPLATE = hex\"0a0f120508021a01801a0210022202100b\";\n\n    constructor() {\n        initialize(bytes(\"\"));\n    }\n\n    function initialize(bytes memory)\n        public\n        virtual override\n    {\n        super.initialize(_WITNET_RANDOMNESS_BYTECODE_TEMPLATE);\n    }\n}\n"},"witnet-solidity-bridge/contracts/UsingWitnet.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"./WitnetRequestBoard.sol\";\n\n/// @title The UsingWitnet contract\n/// @dev Witnet-aware contracts can inherit from this contract in order to interact with Witnet.\n/// @author The Witnet Foundation.\nabstract contract UsingWitnet {\n\n    WitnetRequestBoard public immutable witnet;\n\n    /// Include an address to specify the WitnetRequestBoard entry point address.\n    /// @param _wrb The WitnetRequestBoard entry point address.\n    constructor(WitnetRequestBoard _wrb)\n    {\n        require(address(_wrb) != address(0), \"UsingWitnet: zero address\");\n        witnet = _wrb;\n    }\n\n    /// Provides a convenient way for client contracts extending this to block the execution of the main logic of the\n    /// contract until a particular request has been successfully solved and reported by Witnet.\n    modifier witnetRequestSolved(uint256 _id) {\n        require(\n                _witnetCheckResultAvailability(_id),\n                \"UsingWitnet: request not solved\"\n            );\n        _;\n    }\n\n    /// Check if a data request has been solved and reported by Witnet.\n    /// @dev Contracts depending on Witnet should not start their main business logic (e.g. receiving value from third.\n    /// parties) before this method returns `true`.\n    /// @param _id The unique identifier of a previously posted data request.\n    /// @return A boolean telling if the request has been already resolved or not. Returns `false` also, if the result was deleted.\n    function _witnetCheckResultAvailability(uint256 _id)\n        internal view\n        virtual\n        returns (bool)\n    {\n        return witnet.getQueryStatus(_id) == Witnet.QueryStatus.Reported;\n    }\n\n    /// Estimate the reward amount.\n    /// @param _gasPrice The gas price for which we want to retrieve the estimation.\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\n    function _witnetEstimateReward(uint256 _gasPrice)\n        internal view\n        virtual\n        returns (uint256)\n    {\n        return witnet.estimateReward(_gasPrice);\n    }\n\n    /// Estimates the reward amount, considering current transaction gas price.\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\n    function _witnetEstimateReward()\n        internal view\n        virtual\n        returns (uint256)\n    {\n        return witnet.estimateReward(tx.gasprice);\n    }\n\n    /// Send a new request to the Witnet network with transaction value as a reward.\n    /// @param _request An instance of `IWitnetRequest` contract.\n    /// @return _id Sequential identifier for the request included in the WitnetRequestBoard.\n    /// @return _reward Current reward amount escrowed by the WRB until a result gets reported.\n    function _witnetPostRequest(IWitnetRequest _request)\n        internal\n        virtual\n        returns (uint256 _id, uint256 _reward)\n    {\n        _reward = _witnetEstimateReward();\n        require(\n            _reward <= msg.value,\n            \"UsingWitnet: reward too low\"\n        );\n        _id = witnet.postRequest{value: _reward}(_request);\n    }\n\n    /// Upgrade the reward for a previously posted request.\n    /// @dev Call to `upgradeReward` function in the WitnetRequestBoard contract.\n    /// @param _id The unique identifier of a request that has been previously sent to the WitnetRequestBoard.\n    /// @return Amount in which the reward has been increased.\n    function _witnetUpgradeReward(uint256 _id)\n        internal\n        virtual\n        returns (uint256)\n    {\n        uint256 _currentReward = witnet.readRequestReward(_id);        \n        uint256 _newReward = _witnetEstimateReward();\n        uint256 _fundsToAdd = 0;\n        if (_newReward > _currentReward) {\n            _fundsToAdd = (_newReward - _currentReward);\n        }\n        witnet.upgradeReward{value: _fundsToAdd}(_id); // Let Request.gasPrice be updated\n        return _fundsToAdd;\n    }\n\n    /// Read the Witnet-provided result to a previously posted request.\n    /// @param _id The unique identifier of a request that was posted to Witnet.\n    /// @return The result of the request as an instance of `Witnet.Result`.\n    function _witnetReadResult(uint256 _id)\n        internal view\n        virtual\n        returns (Witnet.Result memory)\n    {\n        return witnet.readResponseResult(_id);\n    }\n\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\n    /// @param _id The unique identifier of a previously posted request.\n    /// @return The Witnet-provided result to the request.\n    function _witnetDeleteQuery(uint256 _id)\n        internal\n        virtual\n        returns (Witnet.Response memory)\n    {\n        return witnet.deleteQuery(_id);\n    }\n\n}\n"},"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol":{"content":"// SPDX-License-Identifier: MIT\n\npragma solidity >=0.7.0 <0.9.0;\npragma experimental ABIEncoderV2;\n\nimport \"./interfaces/IWitnetRequestBoardEvents.sol\";\nimport \"./interfaces/IWitnetRequestBoardReporter.sol\";\nimport \"./interfaces/IWitnetRequestBoardRequestor.sol\";\nimport \"./interfaces/IWitnetRequestBoardView.sol\";\nimport \"./interfaces/IWitnetRequestParser.sol\";\n\n/// @title Witnet Request Board functionality base contract.\n/// @author The Witnet Foundation.\nabstract contract WitnetRequestBoard is\n    IWitnetRequestBoardEvents,\n    IWitnetRequestBoardReporter,\n    IWitnetRequestBoardRequestor,\n    IWitnetRequestBoardView,\n    IWitnetRequestParser\n{\n    receive() external payable {\n        revert(\"WitnetRequestBoard: no transfers accepted\");\n    }\n}\n"}},"settings":{"optimizer":{"enabled":false,"runs":200},"outputSelection":{"*":{"*":["abi","evm.bytecode","evm.deployedBytecode","evm.methodIdentifiers","metadata","devdoc","userdoc","storageLayout","evm.gasEstimates"],"":["ast"]}},"metadata":{"useLiteralContent":true}}},"output":{"errors":[{"component":"general","errorCode":"5667","formattedMessage":"Warning: Unused function parameter. Remove or comment out the variable name to silence this warning.\n --> contracts/test/MockWitnetRouter.sol:5:23:\n  |\n5 |     function valueFor(bytes32 _id) public view returns (int256,uint256,uint256) {\n  |                       ^^^^^^^^^^^\n\n","message":"Unused function parameter. Remove or comment out the variable name to silence this warning.","severity":"warning","sourceLocation":{"end":125,"file":"contracts/test/MockWitnetRouter.sol","start":114},"type":"Warning"},{"component":"general","errorCode":"2018","formattedMessage":"Warning: Function state mutability can be restricted to pure\n --> contracts/test/MockWitnetRouter.sol:5:5:\n  |\n5 |     function valueFor(bytes32 _id) public view returns (int256,uint256,uint256) {\n  |     ^ (Relevant source part starts here and spans across multiple lines).\n\n","message":"Function state mutability can be restricted to pure","severity":"warning","sourceLocation":{"end":208,"file":"contracts/test/MockWitnetRouter.sol","start":96},"type":"Warning"},{"component":"general","errorCode":"5574","formattedMessage":"Warning: Contract code size exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.\n  --> witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol:16:1:\n   |\n16 | contract WitnetRequestBoardTrustableDefault\n   | ^ (Relevant source part starts here and spans across multiple lines).\n\n","message":"Contract code size exceeds 24576 bytes (a limit introduced in Spurious Dragon). This contract may not be deployable on mainnet. Consider enabling the optimizer (with a low \"runs\" value!), turning off revert strings, or using libraries.","severity":"warning","sourceLocation":{"end":2936,"file":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol","start":614},"type":"Warning"}],"sources":{"ado-contracts/contracts/interfaces/IERC2362.sol":{"ast":{"absolutePath":"ado-contracts/contracts/interfaces/IERC2362.sol","exportedSymbols":{"IERC2362":[15]},"id":16,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity",">=","0.5",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:0"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":2,"nodeType":"StructuredDocumentation","src":"66:115:0","text":" @dev EIP2362 Interface for pull oracles\n https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md"},"fullyImplemented":false,"id":15,"linearizedBaseContracts":[15],"name":"IERC2362","nameLocation":"192:8:0","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3,"nodeType":"StructuredDocumentation","src":"204:182:0","text":" @dev Exposed function pertaining to EIP standards\n @param _id bytes32 ID of the query\n @return int,uint,uint returns the value, timestamp, and status code of query"},"functionSelector":"f78eea83","id":14,"implemented":false,"kind":"function","modifiers":[],"name":"valueFor","nameLocation":"397:8:0","nodeType":"FunctionDefinition","parameters":{"id":6,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5,"mutability":"mutable","name":"_id","nameLocation":"414:3:0","nodeType":"VariableDeclaration","scope":14,"src":"406:11:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":4,"name":"bytes32","nodeType":"ElementaryTypeName","src":"406:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"405:13:0"},"returnParameters":{"id":13,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":14,"src":"441:6:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":7,"name":"int256","nodeType":"ElementaryTypeName","src":"441:6:0","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":10,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":14,"src":"448:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":9,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":12,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":14,"src":"456:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":11,"name":"uint256","nodeType":"ElementaryTypeName","src":"456:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"440:24:0"},"scope":15,"src":"388:77:0","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":16,"src":"182:285:0","usedErrors":[]}],"src":"33:434:0"},"id":0},"contracts/WitnetPriceFeed.sol":{"ast":{"absolutePath":"contracts/WitnetPriceFeed.sol","exportedSymbols":{"IERC165":[3533],"IERC2362":[15],"IWitnetPriceRouter":[3699],"WitnetPriceFeed":[52]},"id":53,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":17,"literals":["solidity",">=","0.5",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"32:31:1"},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol","file":"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol","id":18,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":53,"sourceUnit":3700,"src":"65:76:1","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":52,"linearizedBaseContracts":[52],"name":"WitnetPriceFeed","nameLocation":"152:15:1","nodeType":"ContractDefinition","nodes":[{"constant":false,"functionSelector":"4fc87f24","id":21,"mutability":"immutable","name":"witnetPriceRouter","nameLocation":"210:17:1","nodeType":"VariableDeclaration","scope":52,"src":"174:53:1","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"},"typeName":{"id":20,"nodeType":"UserDefinedTypeName","pathNode":{"id":19,"name":"IWitnetPriceRouter","nodeType":"IdentifierPath","referencedDeclaration":3699,"src":"174:18:1"},"referencedDeclaration":3699,"src":"174:18:1","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"}},"visibility":"public"},{"body":{"id":31,"nodeType":"Block","src":"387:44:1","statements":[{"expression":{"id":29,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27,"name":"witnetPriceRouter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21,"src":"397:17:1","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28,"name":"_router","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":24,"src":"417:7:1","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"}},"src":"397:27:1","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"}},"id":30,"nodeType":"ExpressionStatement","src":"397:27:1"}]},"id":32,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":25,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24,"mutability":"mutable","name":"_router","nameLocation":"378:7:1","nodeType":"VariableDeclaration","scope":32,"src":"359:26:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"},"typeName":{"id":23,"nodeType":"UserDefinedTypeName","pathNode":{"id":22,"name":"IWitnetPriceRouter","nodeType":"IdentifierPath","referencedDeclaration":3699,"src":"359:18:1"},"referencedDeclaration":3699,"src":"359:18:1","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"}},"visibility":"internal"}],"src":"358:28:1"},"returnParameters":{"id":26,"nodeType":"ParameterList","parameters":[],"src":"387:0:1"},"scope":52,"src":"347:84:1","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":50,"nodeType":"Block","src":"701:81:1","statements":[{"expression":{"id":48,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":41,"name":"_lastPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":37,"src":"712:10:1","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},{"id":42,"name":"_lastTimestamp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":39,"src":"724:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},null],"id":43,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"711:29:1","typeDescriptions":{"typeIdentifier":"t_tuple$_t_int256_$_t_uint256_$__$","typeString":"tuple(int256,uint256,)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":46,"name":"_id4","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":34,"src":"770:4:1","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":44,"name":"witnetPriceRouter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21,"src":"743:17:1","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetPriceRouter_$3699","typeString":"contract IWitnetPriceRouter"}},"id":45,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"valueFor","nodeType":"MemberAccess","referencedDeclaration":14,"src":"743:26:1","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_int256_$_t_uint256_$_t_uint256_$","typeString":"function (bytes32) view external returns (int256,uint256,uint256)"}},"id":47,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"743:32:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_int256_$_t_uint256_$_t_uint256_$","typeString":"tuple(int256,uint256,uint256)"}},"src":"711:64:1","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":49,"nodeType":"ExpressionStatement","src":"711:64:1"}]},"functionSelector":"c66f4c0a","id":51,"implemented":true,"kind":"function","modifiers":[],"name":"getPrice","nameLocation":"615:8:1","nodeType":"FunctionDefinition","parameters":{"id":35,"nodeType":"ParameterList","parameters":[{"constant":false,"id":34,"mutability":"mutable","name":"_id4","nameLocation":"631:4:1","nodeType":"VariableDeclaration","scope":51,"src":"624:11:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":33,"name":"bytes4","nodeType":"ElementaryTypeName","src":"624:6:1","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"623:13:1"},"returnParameters":{"id":40,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37,"mutability":"mutable","name":"_lastPrice","nameLocation":"665:10:1","nodeType":"VariableDeclaration","scope":51,"src":"658:17:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":36,"name":"int256","nodeType":"ElementaryTypeName","src":"658:6:1","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":39,"mutability":"mutable","name":"_lastTimestamp","nameLocation":"685:14:1","nodeType":"VariableDeclaration","scope":51,"src":"677:22:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":38,"name":"uint256","nodeType":"ElementaryTypeName","src":"677:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"657:43:1"},"scope":52,"src":"606:176:1","stateMutability":"view","virtual":false,"visibility":"public"}],"scope":53,"src":"143:641:1","usedErrors":[]}],"src":"32:752:1"},"id":1},"contracts/WitnetRandom.sol":{"ast":{"absolutePath":"contracts/WitnetRandom.sol","exportedSymbols":{"IWitnetRandomness":[3813],"IWitnetRequest":[3829],"Witnet":[4619],"WitnetRandom":[149]},"id":150,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":54,"literals":["solidity",">=","0.5",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"32:31:2"},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol","file":"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol","id":55,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":150,"sourceUnit":3814,"src":"65:75:2","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":149,"linearizedBaseContracts":[149],"name":"WitnetRandom","nameLocation":"151:12:2","nodeType":"ContractDefinition","nodes":[{"constant":false,"functionSelector":"36013189","id":57,"mutability":"mutable","name":"randomness","nameLocation":"184:10:2","nodeType":"VariableDeclaration","scope":149,"src":"170:24:2","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":56,"name":"uint32","nodeType":"ElementaryTypeName","src":"170:6:2","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"public"},{"constant":false,"functionSelector":"b1fa4176","id":59,"mutability":"mutable","name":"latestRandomizingBlock","nameLocation":"215:22:2","nodeType":"VariableDeclaration","scope":149,"src":"200:37:2","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":58,"name":"uint256","nodeType":"ElementaryTypeName","src":"200:7:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"constant":false,"functionSelector":"27eef8b9","id":62,"mutability":"immutable","name":"witnetRandomness","nameLocation":"278:16:2","nodeType":"VariableDeclaration","scope":149,"src":"243:51:2","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"},"typeName":{"id":61,"nodeType":"UserDefinedTypeName","pathNode":{"id":60,"name":"IWitnetRandomness","nodeType":"IdentifierPath","referencedDeclaration":3813,"src":"243:17:2"},"referencedDeclaration":3813,"src":"243:17:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"visibility":"public"},{"body":{"id":84,"nodeType":"Block","src":"462:111:2","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":77,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":71,"name":"_witnetRandomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65,"src":"487:17:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}],"id":70,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"479:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69,"name":"address","nodeType":"ElementaryTypeName","src":"479:7:2","typeDescriptions":{}}},"id":72,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"479:26:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":75,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"517:1:2","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":74,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"509:7:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73,"name":"address","nodeType":"ElementaryTypeName","src":"509:7:2","typeDescriptions":{}}},"id":76,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"509:10:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"479:40:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"472:6:2","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":78,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"472:48:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":79,"nodeType":"ExpressionStatement","src":"472:48:2"},{"expression":{"id":82,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":80,"name":"witnetRandomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":62,"src":"530:16:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":81,"name":"_witnetRandomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65,"src":"549:17:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"src":"530:36:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"id":83,"nodeType":"ExpressionStatement","src":"530:36:2"}]},"id":85,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":66,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65,"mutability":"mutable","name":"_witnetRandomness","nameLocation":"443:17:2","nodeType":"VariableDeclaration","scope":85,"src":"425:35:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"},"typeName":{"id":64,"nodeType":"UserDefinedTypeName","pathNode":{"id":63,"name":"IWitnetRandomness","nodeType":"IdentifierPath","referencedDeclaration":3813,"src":"425:17:2"},"referencedDeclaration":3813,"src":"425:17:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"visibility":"internal"}],"src":"424:37:2"},"returnParameters":{"id":67,"nodeType":"ParameterList","parameters":[],"src":"462:0:2"},"scope":149,"src":"413:160:2","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":88,"nodeType":"Block","src":"606:2:2","statements":[]},"id":89,"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":86,"nodeType":"ParameterList","parameters":[],"src":"586:2:2"},"returnParameters":{"id":87,"nodeType":"ParameterList","parameters":[],"src":"606:0:2"},"scope":149,"src":"579:29:2","stateMutability":"payable","virtual":false,"visibility":"external"},{"body":{"id":124,"nodeType":"Block","src":"660:244:2","statements":[{"expression":{"id":95,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":92,"name":"latestRandomizingBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59,"src":"670:22:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":93,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"695:5:2","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":94,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"695:12:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"670:37:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":96,"nodeType":"ExpressionStatement","src":"670:37:2"},{"assignments":[98],"declarations":[{"constant":false,"id":98,"mutability":"mutable","name":"_usedFunds","nameLocation":"722:10:2","nodeType":"VariableDeclaration","scope":124,"src":"717:15:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":97,"name":"uint","nodeType":"ElementaryTypeName","src":"717:4:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":105,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"argumentTypes":[],"expression":{"id":99,"name":"witnetRandomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":62,"src":"735:16:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"id":100,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"randomize","nodeType":"MemberAccess","referencedDeclaration":3804,"src":"735:26:2","typeDescriptions":{"typeIdentifier":"t_function_external_payable$__$returns$_t_uint256_$","typeString":"function () payable external returns (uint256)"}},"id":103,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":101,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"770:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":102,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"770:9:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"735:46:2","typeDescriptions":{"typeIdentifier":"t_function_external_payable$__$returns$_t_uint256_$value","typeString":"function () payable external returns (uint256)"}},"id":104,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"735:48:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"717:66:2"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":106,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":98,"src":"797:10:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":107,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"810:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":108,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"810:9:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"797:22:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":123,"nodeType":"IfStatement","src":"793:105:2","trueBody":{"id":122,"nodeType":"Block","src":"821:77:2","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":116,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"864:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"864:9:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":118,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":98,"src":"876:10:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"864:22:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"expression":{"id":112,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"843:3:2","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"843:10:2","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":111,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"835:8:2","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":110,"name":"address","nodeType":"ElementaryTypeName","src":"835:8:2","stateMutability":"payable","typeDescriptions":{}}},"id":114,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"835:19:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transfer","nodeType":"MemberAccess","src":"835:28:2","typeDescriptions":{"typeIdentifier":"t_function_transfer_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"835:52:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":121,"nodeType":"ExpressionStatement","src":"835:52:2"}]}}]},"functionSelector":"f8413b07","id":125,"implemented":true,"kind":"function","modifiers":[],"name":"requestRandomness","nameLocation":"623:17:2","nodeType":"FunctionDefinition","parameters":{"id":90,"nodeType":"ParameterList","parameters":[],"src":"640:2:2"},"returnParameters":{"id":91,"nodeType":"ParameterList","parameters":[],"src":"660:0:2"},"scope":149,"src":"614:290:2","stateMutability":"payable","virtual":false,"visibility":"external"},{"body":{"id":147,"nodeType":"Block","src":"948:143:2","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":129,"name":"latestRandomizingBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59,"src":"965:22:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"990:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"965:26:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":128,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"958:6:2","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":132,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"958:34:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":133,"nodeType":"ExpressionStatement","src":"958:34:2"},{"expression":{"id":145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":134,"name":"randomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57,"src":"1002:10:2","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"arguments":[{"id":139,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1045:6:2","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":138,"name":"uint32","nodeType":"ElementaryTypeName","src":"1045:6:2","typeDescriptions":{}}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"}],"id":137,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"1040:4:2","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":140,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1040:12:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_uint32","typeString":"type(uint32)"}},"id":141,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"max","nodeType":"MemberAccess","src":"1040:16:2","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"hexValue":"30","id":142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1058:1:2","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":143,"name":"latestRandomizingBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":59,"src":"1061:22:2","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":135,"name":"witnetRandomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":62,"src":"1016:16:2","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRandomness_$3813","typeString":"contract IWitnetRandomness"}},"id":136,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"random","nodeType":"MemberAccess","referencedDeclaration":3786,"src":"1016:23:2","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint32_$_t_uint256_$_t_uint256_$returns$_t_uint32_$","typeString":"function (uint32,uint256,uint256) view external returns (uint32)"}},"id":144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1016:68:2","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"1002:82:2","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":146,"nodeType":"ExpressionStatement","src":"1002:82:2"}]},"functionSelector":"921b9763","id":148,"implemented":true,"kind":"function","modifiers":[],"name":"fetchRandomNumber","nameLocation":"919:17:2","nodeType":"FunctionDefinition","parameters":{"id":126,"nodeType":"ParameterList","parameters":[],"src":"936:2:2"},"returnParameters":{"id":127,"nodeType":"ParameterList","parameters":[],"src":"948:0:2"},"scope":149,"src":"910:181:2","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":150,"src":"142:951:2","usedErrors":[]}],"src":"32:1061:2"},"id":2},"contracts/supra-oracles/SupraValueFeedExample.sol":{"ast":{"absolutePath":"contracts/supra-oracles/SupraValueFeedExample.sol","exportedSymbols":{"ISupraSValueFeed":[161],"SupraValueFeedExample":[192]},"id":193,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":151,"literals":["solidity","^","0.8",".7"],"nodeType":"PragmaDirective","src":"32:23:3"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"id":161,"linearizedBaseContracts":[161],"name":"ISupraSValueFeed","nameLocation":"67:16:3","nodeType":"ContractDefinition","nodes":[{"functionSelector":"abc4544e","id":160,"implemented":false,"kind":"function","modifiers":[],"name":"checkPrice","nameLocation":"99:10:3","nodeType":"FunctionDefinition","parameters":{"id":154,"nodeType":"ParameterList","parameters":[{"constant":false,"id":153,"mutability":"mutable","name":"marketPair","nameLocation":"133:10:3","nodeType":"VariableDeclaration","scope":160,"src":"119:24:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":152,"name":"string","nodeType":"ElementaryTypeName","src":"119:6:3","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"109:40:3"},"returnParameters":{"id":159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":156,"mutability":"mutable","name":"price","nameLocation":"180:5:3","nodeType":"VariableDeclaration","scope":160,"src":"173:12:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":155,"name":"int256","nodeType":"ElementaryTypeName","src":"173:6:3","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":158,"mutability":"mutable","name":"timestamp","nameLocation":"195:9:3","nodeType":"VariableDeclaration","scope":160,"src":"187:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":157,"name":"uint256","nodeType":"ElementaryTypeName","src":"187:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"172:33:3"},"scope":161,"src":"90:116:3","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":193,"src":"57:151:3","usedErrors":[]},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":192,"linearizedBaseContracts":[192],"name":"SupraValueFeedExample","nameLocation":"219:21:3","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":164,"mutability":"mutable","name":"sValueFeed","nameLocation":"273:10:3","nodeType":"VariableDeclaration","scope":192,"src":"247:36:3","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISupraSValueFeed_$161","typeString":"contract ISupraSValueFeed"},"typeName":{"id":163,"nodeType":"UserDefinedTypeName","pathNode":{"id":162,"name":"ISupraSValueFeed","nodeType":"IdentifierPath","referencedDeclaration":161,"src":"247:16:3"},"referencedDeclaration":161,"src":"247:16:3","typeDescriptions":{"typeIdentifier":"t_contract$_ISupraSValueFeed_$161","typeString":"contract ISupraSValueFeed"}},"visibility":"internal"},{"body":{"id":173,"nodeType":"Block","src":"304:90:3","statements":[{"expression":{"id":171,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":167,"name":"sValueFeed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":164,"src":"314:10:3","typeDescriptions":{"typeIdentifier":"t_contract$_ISupraSValueFeed_$161","typeString":"contract ISupraSValueFeed"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"307837663030333137383036306166333930346238623730664561303636414545323865383530343345","id":169,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"344:42:3","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0x7f003178060af3904b8b70fEa066AEE28e85043E"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":168,"name":"ISupraSValueFeed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":161,"src":"327:16:3","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISupraSValueFeed_$161_$","typeString":"type(contract ISupraSValueFeed)"}},"id":170,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"327:60:3","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISupraSValueFeed_$161","typeString":"contract ISupraSValueFeed"}},"src":"314:73:3","typeDescriptions":{"typeIdentifier":"t_contract$_ISupraSValueFeed_$161","typeString":"contract ISupraSValueFeed"}},"id":172,"nodeType":"ExpressionStatement","src":"314:73:3"}]},"id":174,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":165,"nodeType":"ParameterList","parameters":[],"src":"301:2:3"},"returnParameters":{"id":166,"nodeType":"ParameterList","parameters":[],"src":"304:0:3"},"scope":192,"src":"290:104:3","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":190,"nodeType":"Block","src":"472:109:3","statements":[{"assignments":[182,null],"declarations":[{"constant":false,"id":182,"mutability":"mutable","name":"price","nameLocation":"487:5:3","nodeType":"VariableDeclaration","scope":190,"src":"483:9:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":181,"name":"int","nodeType":"ElementaryTypeName","src":"483:3:3","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},null],"id":187,"initialValue":{"arguments":[{"id":185,"name":"marketPair","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":176,"src":"541:10:3","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":183,"name":"sValueFeed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":164,"src":"519:10:3","typeDescriptions":{"typeIdentifier":"t_contract$_ISupraSValueFeed_$161","typeString":"contract ISupraSValueFeed"}},"id":184,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"checkPrice","nodeType":"MemberAccess","referencedDeclaration":160,"src":"519:21:3","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_string_memory_ptr_$returns$_t_int256_$_t_uint256_$","typeString":"function (string memory) view external returns (int256,uint256)"}},"id":186,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"519:33:3","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_int256_$_t_uint256_$","typeString":"tuple(int256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"482:70:3"},{"expression":{"id":188,"name":"price","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":182,"src":"569:5:3","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"functionReturnParameters":180,"id":189,"nodeType":"Return","src":"562:12:3"}]},"functionSelector":"524f3889","id":191,"implemented":true,"kind":"function","modifiers":[],"name":"getPrice","nameLocation":"409:8:3","nodeType":"FunctionDefinition","parameters":{"id":177,"nodeType":"ParameterList","parameters":[{"constant":false,"id":176,"mutability":"mutable","name":"marketPair","nameLocation":"432:10:3","nodeType":"VariableDeclaration","scope":191,"src":"418:24:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":175,"name":"string","nodeType":"ElementaryTypeName","src":"418:6:3","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"417:26:3"},"returnParameters":{"id":180,"nodeType":"ParameterList","parameters":[{"constant":false,"id":179,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":191,"src":"467:3:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":178,"name":"int","nodeType":"ElementaryTypeName","src":"467:3:3","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"466:5:3"},"scope":192,"src":"400:181:3","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":193,"src":"210:373:3","usedErrors":[]}],"src":"32:552:3"},"id":3},"contracts/test/MockWitnetRandomness.sol":{"ast":{"absolutePath":"contracts/test/MockWitnetRandomness.sol","exportedSymbols":{"Clonable":[7948],"Context":[7979],"IWitnetRandomness":[3813],"IWitnetRequest":[3829],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Ownable":[8100],"Proxiable":[8160],"UsingWitnet":[453],"Witnet":[4619],"WitnetRandomness":[1271],"WitnetRandomnessMock":[7838],"WitnetRequestBoard":[481],"WitnetRequestMalleableBase":[9039],"WitnetRequestRandomness":[9072]},"id":196,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":194,"literals":["solidity",">=","0.5",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"31:31:4"},{"absolutePath":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol","file":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol","id":195,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":196,"sourceUnit":7839,"src":"64:73:4","symbolAliases":[],"unitAlias":""}],"src":"31:107:4"},"id":4},"contracts/test/MockWitnetRouter.sol":{"ast":{"absolutePath":"contracts/test/MockWitnetRouter.sol","exportedSymbols":{"MockWitnetRouter":[215]},"id":216,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":197,"literals":["solidity",">=","0.5",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"31:31:5"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":215,"linearizedBaseContracts":[215],"name":"MockWitnetRouter","nameLocation":"73:16:5","nodeType":"ContractDefinition","nodes":[{"body":{"id":213,"nodeType":"Block","src":"172:36:5","statements":[{"expression":{"components":[{"hexValue":"3130","id":208,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"190:2:5","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},{"hexValue":"3130","id":209,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"194:2:5","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},{"hexValue":"3130","id":210,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"198:2:5","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"}],"id":211,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"189:12:5","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_10_by_1_$_t_rational_10_by_1_$_t_rational_10_by_1_$","typeString":"tuple(int_const 10,int_const 10,int_const 10)"}},"functionReturnParameters":207,"id":212,"nodeType":"Return","src":"182:19:5"}]},"functionSelector":"f78eea83","id":214,"implemented":true,"kind":"function","modifiers":[],"name":"valueFor","nameLocation":"105:8:5","nodeType":"FunctionDefinition","parameters":{"id":200,"nodeType":"ParameterList","parameters":[{"constant":false,"id":199,"mutability":"mutable","name":"_id","nameLocation":"122:3:5","nodeType":"VariableDeclaration","scope":214,"src":"114:11:5","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":198,"name":"bytes32","nodeType":"ElementaryTypeName","src":"114:7:5","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"113:13:5"},"returnParameters":{"id":207,"nodeType":"ParameterList","parameters":[{"constant":false,"id":202,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":214,"src":"148:6:5","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":201,"name":"int256","nodeType":"ElementaryTypeName","src":"148:6:5","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"},{"constant":false,"id":204,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":214,"src":"155:7:5","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":203,"name":"uint256","nodeType":"ElementaryTypeName","src":"155:7:5","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":206,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":214,"src":"163:7:5","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":205,"name":"uint256","nodeType":"ElementaryTypeName","src":"163:7:5","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"147:24:5"},"scope":215,"src":"96:112:5","stateMutability":"view","virtual":false,"visibility":"public"}],"scope":216,"src":"64:146:5","usedErrors":[]}],"src":"31:179:5"},"id":5},"contracts/witnet-requests/coinPrice.sol":{"ast":{"absolutePath":"contracts/witnet-requests/coinPrice.sol","exportedSymbols":{"Destructible":[7986],"IERC20":[3611],"IWitnetRequest":[3829],"IWitnetRequestBoardAdmin":[3851],"IWitnetRequestBoardAdminACLs":[3887],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Payable":[8151],"Proxiable":[8160],"Upgradable":[8256],"Witnet":[4619],"WitnetBoardData":[1554],"WitnetBoardDataACLs":[1604],"WitnetBuffer":[5261],"WitnetDecoderLib":[6386],"WitnetParserLib":[7528],"WitnetProxy":[1816],"WitnetRequestBase":[8270],"WitnetRequestBoard":[481],"WitnetRequestBoardTrustableBase":[3416],"WitnetRequestBoardTrustableDefault":[3521],"WitnetRequestBoardUpgradableBase":[1878],"WitnetRequestInitializableBase":[8307],"coinPriceRequest":[232]},"id":233,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":217,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:6"},{"absolutePath":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol","file":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol","id":218,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":233,"sourceUnit":3522,"src":"308:97:6","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol","file":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol","id":219,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":233,"sourceUnit":8308,"src":"406:86:6","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":220,"name":"WitnetRequestInitializableBase","nodeType":"IdentifierPath","referencedDeclaration":8307,"src":"590:30:6"},"id":221,"nodeType":"InheritanceSpecifier","src":"590:30:6"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":232,"linearizedBaseContracts":[232,8307,8270,3829,7995],"name":"coinPriceRequest","nameLocation":"570:16:6","nodeType":"ContractDefinition","nodes":[{"body":{"id":230,"nodeType":"Block","src":"654:557:6","statements":[{"expression":{"arguments":[{"hexValue":"0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01","id":227,"isConstant":false,"isLValue":false,"isPure":true,"kind":"hexString","lValueRequested":false,"nodeType":"Literal","src":"702:503:6","typeDescriptions":{"typeIdentifier":"t_stringliteral_65e3282e7a3641e10a096b43cafa56e183e0b80c7ea7ca06014613c4e45ad5b4","typeString":"literal_string hex\"0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01\""}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_65e3282e7a3641e10a096b43cafa56e183e0b80c7ea7ca06014613c4e45ad5b4","typeString":"literal_string hex\"0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01\""}],"expression":{"id":224,"name":"WitnetRequestInitializableBase","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8307,"src":"660:30:6","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetRequestInitializableBase_$8307_$","typeString":"type(contract WitnetRequestInitializableBase)"}},"id":226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":8306,"src":"660:41:6","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory)"}},"id":228,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"660:546:6","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":229,"nodeType":"ExpressionStatement","src":"660:546:6"}]},"functionSelector":"8129fc1c","id":231,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"634:10:6","nodeType":"FunctionDefinition","parameters":{"id":222,"nodeType":"ParameterList","parameters":[],"src":"644:2:6"},"returnParameters":{"id":223,"nodeType":"ParameterList","parameters":[],"src":"654:0:6"},"scope":232,"src":"625:586:6","stateMutability":"nonpayable","virtual":false,"visibility":"public"}],"scope":233,"src":"561:652:6","usedErrors":[]}],"src":"33:1181:6"},"id":6},"contracts/witnet-requests/postAPI.sol":{"ast":{"absolutePath":"contracts/witnet-requests/postAPI.sol","exportedSymbols":{"Destructible":[7986],"IERC20":[3611],"IWitnetRequest":[3829],"IWitnetRequestBoardAdmin":[3851],"IWitnetRequestBoardAdminACLs":[3887],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Payable":[8151],"Proxiable":[8160],"Upgradable":[8256],"Witnet":[4619],"WitnetBoardData":[1554],"WitnetBoardDataACLs":[1604],"WitnetBuffer":[5261],"WitnetDecoderLib":[6386],"WitnetParserLib":[7528],"WitnetProxy":[1816],"WitnetRequestBase":[8270],"WitnetRequestBoard":[481],"WitnetRequestBoardTrustableBase":[3416],"WitnetRequestBoardTrustableDefault":[3521],"WitnetRequestBoardUpgradableBase":[1878],"WitnetRequestInitializableBase":[8307],"postAPIRequest":[249]},"id":250,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":234,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:7"},{"absolutePath":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol","file":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol","id":235,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":250,"sourceUnit":3522,"src":"308:97:7","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol","file":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol","id":236,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":250,"sourceUnit":8308,"src":"406:86:7","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":237,"name":"WitnetRequestInitializableBase","nodeType":"IdentifierPath","referencedDeclaration":8307,"src":"593:30:7"},"id":238,"nodeType":"InheritanceSpecifier","src":"593:30:7"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":249,"linearizedBaseContracts":[249,8307,8270,3829,7995],"name":"postAPIRequest","nameLocation":"575:14:7","nodeType":"ContractDefinition","nodes":[{"body":{"id":247,"nodeType":"Block","src":"657:387:7","statements":[{"expression":{"arguments":[{"hexValue":"0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01","id":244,"isConstant":false,"isLValue":false,"isPure":true,"kind":"hexString","lValueRequested":false,"nodeType":"Literal","src":"705:333:7","typeDescriptions":{"typeIdentifier":"t_stringliteral_1096ab818d494a1539352a284d25d4d40227a5b9281fcb6f02043e7b5eef4709","typeString":"literal_string hex\"0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01\""}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_1096ab818d494a1539352a284d25d4d40227a5b9281fcb6f02043e7b5eef4709","typeString":"literal_string hex\"0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01\""}],"expression":{"id":241,"name":"WitnetRequestInitializableBase","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8307,"src":"663:30:7","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetRequestInitializableBase_$8307_$","typeString":"type(contract WitnetRequestInitializableBase)"}},"id":243,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":8306,"src":"663:41:7","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory)"}},"id":245,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"663:376:7","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":246,"nodeType":"ExpressionStatement","src":"663:376:7"}]},"functionSelector":"8129fc1c","id":248,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"637:10:7","nodeType":"FunctionDefinition","parameters":{"id":239,"nodeType":"ParameterList","parameters":[],"src":"647:2:7"},"returnParameters":{"id":240,"nodeType":"ParameterList","parameters":[],"src":"657:0:7"},"scope":249,"src":"628:416:7","stateMutability":"nonpayable","virtual":false,"visibility":"public"}],"scope":250,"src":"566:480:7","usedErrors":[]}],"src":"33:1014:7"},"id":7},"witnet-solidity-bridge/contracts/UsingWitnet.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/UsingWitnet.sol","exportedSymbols":{"IWitnetRequest":[3829],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"UsingWitnet":[453],"Witnet":[4619],"WitnetRequestBoard":[481]},"id":454,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":251,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:8"},{"id":252,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:8"},{"absolutePath":"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol","file":"./WitnetRequestBoard.sol","id":253,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":454,"sourceUnit":482,"src":"100:34:8","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":{"id":254,"nodeType":"StructuredDocumentation","src":"136:168:8","text":"@title The UsingWitnet contract\n @dev Witnet-aware contracts can inherit from this contract in order to interact with Witnet.\n @author The Witnet Foundation."},"fullyImplemented":true,"id":453,"linearizedBaseContracts":[453],"name":"UsingWitnet","nameLocation":"322:11:8","nodeType":"ContractDefinition","nodes":[{"constant":false,"functionSelector":"46d1d21a","id":257,"mutability":"immutable","name":"witnet","nameLocation":"377:6:8","nodeType":"VariableDeclaration","scope":453,"src":"341:42:8","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"},"typeName":{"id":256,"nodeType":"UserDefinedTypeName","pathNode":{"id":255,"name":"WitnetRequestBoard","nodeType":"IdentifierPath","referencedDeclaration":481,"src":"341:18:8"},"referencedDeclaration":481,"src":"341:18:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"visibility":"public"},{"body":{"id":281,"nodeType":"Block","src":"577:105:8","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":273,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":267,"name":"_wrb","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":261,"src":"603:4:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}],"id":266,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"595:7:8","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":265,"name":"address","nodeType":"ElementaryTypeName","src":"595:7:8","typeDescriptions":{}}},"id":268,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"595:13:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":271,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"620:1:8","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":270,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"612:7:8","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":269,"name":"address","nodeType":"ElementaryTypeName","src":"612:7:8","typeDescriptions":{}}},"id":272,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"612:10:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"595:27:8","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5573696e675769746e65743a207a65726f2061646472657373","id":274,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"624:27:8","typeDescriptions":{"typeIdentifier":"t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f","typeString":"literal_string \"UsingWitnet: zero address\""},"value":"UsingWitnet: zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f","typeString":"literal_string \"UsingWitnet: zero address\""}],"id":264,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"587:7:8","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"587:65:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":276,"nodeType":"ExpressionStatement","src":"587:65:8"},{"expression":{"id":279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":277,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"662:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":278,"name":"_wrb","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":261,"src":"671:4:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"src":"662:13:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":280,"nodeType":"ExpressionStatement","src":"662:13:8"}]},"documentation":{"id":258,"nodeType":"StructuredDocumentation","src":"390:141:8","text":"Include an address to specify the WitnetRequestBoard entry point address.\n @param _wrb The WitnetRequestBoard entry point address."},"id":282,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":261,"mutability":"mutable","name":"_wrb","nameLocation":"567:4:8","nodeType":"VariableDeclaration","scope":282,"src":"548:23:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"},"typeName":{"id":260,"nodeType":"UserDefinedTypeName","pathNode":{"id":259,"name":"WitnetRequestBoard","nodeType":"IdentifierPath","referencedDeclaration":481,"src":"548:18:8"},"referencedDeclaration":481,"src":"548:18:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"visibility":"internal"}],"src":"547:25:8"},"returnParameters":{"id":263,"nodeType":"ParameterList","parameters":[],"src":"577:0:8"},"scope":453,"src":"536:146:8","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":295,"nodeType":"Block","src":"945:153:8","statements":[{"expression":{"arguments":[{"arguments":[{"id":289,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":285,"src":"1011:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":288,"name":"_witnetCheckResultAvailability","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"980:30:8","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":290,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"980:35:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5573696e675769746e65743a2072657175657374206e6f7420736f6c766564","id":291,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1033:33:8","typeDescriptions":{"typeIdentifier":"t_stringliteral_0fb989cff220809487ccc59dffc3456c56fa1a61fb107e9494cfb5ad931b6f6f","typeString":"literal_string \"UsingWitnet: request not solved\""},"value":"UsingWitnet: request not solved"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_0fb989cff220809487ccc59dffc3456c56fa1a61fb107e9494cfb5ad931b6f6f","typeString":"literal_string \"UsingWitnet: request not solved\""}],"id":287,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"955:7:8","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":292,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"955:125:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":293,"nodeType":"ExpressionStatement","src":"955:125:8"},{"id":294,"nodeType":"PlaceholderStatement","src":"1090:1:8"}]},"documentation":{"id":283,"nodeType":"StructuredDocumentation","src":"688:210:8","text":"Provides a convenient way for client contracts extending this to block the execution of the main logic of the\n contract until a particular request has been successfully solved and reported by Witnet."},"id":296,"name":"witnetRequestSolved","nameLocation":"912:19:8","nodeType":"ModifierDefinition","parameters":{"id":286,"nodeType":"ParameterList","parameters":[{"constant":false,"id":285,"mutability":"mutable","name":"_id","nameLocation":"940:3:8","nodeType":"VariableDeclaration","scope":296,"src":"932:11:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":284,"name":"uint256","nodeType":"ElementaryTypeName","src":"932:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"931:13:8"},"src":"903:195:8","virtual":false,"visibility":"internal"},{"body":{"id":313,"nodeType":"Block","src":"1676:81:8","statements":[{"expression":{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":306,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":299,"src":"1715:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":304,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"1693:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":305,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"getQueryStatus","nodeType":"MemberAccess","referencedDeclaration":4030,"src":"1693:21:8","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_enum$_QueryStatus_$4315_$","typeString":"function (uint256) view external returns (enum Witnet.QueryStatus)"}},"id":307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1693:26:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":308,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"1723:6:8","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":309,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"1723:18:8","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"1723:27:8","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"1693:57:8","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":303,"id":312,"nodeType":"Return","src":"1686:64:8"}]},"documentation":{"id":297,"nodeType":"StructuredDocumentation","src":"1104:449:8","text":"Check if a data request has been solved and reported by Witnet.\n @dev Contracts depending on Witnet should not start their main business logic (e.g. receiving value from third.\n parties) before this method returns `true`.\n @param _id The unique identifier of a previously posted data request.\n @return A boolean telling if the request has been already resolved or not. Returns `false` also, if the result was deleted."},"id":314,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetCheckResultAvailability","nameLocation":"1567:30:8","nodeType":"FunctionDefinition","parameters":{"id":300,"nodeType":"ParameterList","parameters":[{"constant":false,"id":299,"mutability":"mutable","name":"_id","nameLocation":"1606:3:8","nodeType":"VariableDeclaration","scope":314,"src":"1598:11:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":298,"name":"uint256","nodeType":"ElementaryTypeName","src":"1598:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1597:13:8"},"returnParameters":{"id":303,"nodeType":"ParameterList","parameters":[{"constant":false,"id":302,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":314,"src":"1666:4:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":301,"name":"bool","nodeType":"ElementaryTypeName","src":"1666:4:8","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1665:6:8"},"scope":453,"src":"1558:199:8","stateMutability":"view","virtual":true,"visibility":"internal"},{"body":{"id":327,"nodeType":"Block","src":"2131:56:8","statements":[{"expression":{"arguments":[{"id":324,"name":"_gasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":317,"src":"2170:9:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":322,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"2148:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"estimateReward","nodeType":"MemberAccess","referencedDeclaration":4006,"src":"2148:21:8","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view external returns (uint256)"}},"id":325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2148:32:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":321,"id":326,"nodeType":"Return","src":"2141:39:8"}]},"documentation":{"id":315,"nodeType":"StructuredDocumentation","src":"1763:245:8","text":"Estimate the reward amount.\n @param _gasPrice The gas price for which we want to retrieve the estimation.\n @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one."},"id":328,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetEstimateReward","nameLocation":"2022:21:8","nodeType":"FunctionDefinition","parameters":{"id":318,"nodeType":"ParameterList","parameters":[{"constant":false,"id":317,"mutability":"mutable","name":"_gasPrice","nameLocation":"2052:9:8","nodeType":"VariableDeclaration","scope":328,"src":"2044:17:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":316,"name":"uint256","nodeType":"ElementaryTypeName","src":"2044:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2043:19:8"},"returnParameters":{"id":321,"nodeType":"ParameterList","parameters":[{"constant":false,"id":320,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":328,"src":"2118:7:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":319,"name":"uint256","nodeType":"ElementaryTypeName","src":"2118:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2117:9:8"},"scope":453,"src":"2013:174:8","stateMutability":"view","virtual":true,"visibility":"internal"},{"body":{"id":340,"nodeType":"Block","src":"2503:58:8","statements":[{"expression":{"arguments":[{"expression":{"id":336,"name":"tx","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-26,"src":"2542:2:8","typeDescriptions":{"typeIdentifier":"t_magic_transaction","typeString":"tx"}},"id":337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"gasprice","nodeType":"MemberAccess","src":"2542:11:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":334,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"2520:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"estimateReward","nodeType":"MemberAccess","referencedDeclaration":4006,"src":"2520:21:8","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view external returns (uint256)"}},"id":338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2520:34:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":333,"id":339,"nodeType":"Return","src":"2513:41:8"}]},"documentation":{"id":329,"nodeType":"StructuredDocumentation","src":"2193:204:8","text":"Estimates the reward amount, considering current transaction gas price.\n @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one."},"id":341,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetEstimateReward","nameLocation":"2411:21:8","nodeType":"FunctionDefinition","parameters":{"id":330,"nodeType":"ParameterList","parameters":[],"src":"2432:2:8"},"returnParameters":{"id":333,"nodeType":"ParameterList","parameters":[{"constant":false,"id":332,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":341,"src":"2490:7:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":331,"name":"uint256","nodeType":"ElementaryTypeName","src":"2490:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2489:9:8"},"scope":453,"src":"2402:159:8","stateMutability":"view","virtual":true,"visibility":"internal"},{"body":{"id":374,"nodeType":"Block","src":"3045:214:8","statements":[{"expression":{"id":355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":352,"name":"_reward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":350,"src":"3055:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":353,"name":"_witnetEstimateReward","nodeType":"Identifier","overloadedDeclarations":[328,341],"referencedDeclaration":341,"src":"3065:21:8","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":354,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3065:23:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3055:33:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":356,"nodeType":"ExpressionStatement","src":"3055:33:8"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":361,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":358,"name":"_reward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":350,"src":"3119:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"expression":{"id":359,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3130:3:8","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"3130:9:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3119:20:8","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5573696e675769746e65743a2072657761726420746f6f206c6f77","id":362,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3153:29:8","typeDescriptions":{"typeIdentifier":"t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b","typeString":"literal_string \"UsingWitnet: reward too low\""},"value":"UsingWitnet: reward too low"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b","typeString":"literal_string \"UsingWitnet: reward too low\""}],"id":357,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3098:7:8","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":363,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3098:94:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":364,"nodeType":"ExpressionStatement","src":"3098:94:8"},{"expression":{"id":372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":365,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":348,"src":"3202:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":370,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":345,"src":"3243:8:8","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}],"expression":{"id":366,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"3208:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":367,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"postRequest","nodeType":"MemberAccess","referencedDeclaration":3986,"src":"3208:18:8","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_contract$_IWitnetRequest_$3829_$returns$_t_uint256_$","typeString":"function (contract IWitnetRequest) payable external returns (uint256)"}},"id":369,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":368,"name":"_reward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":350,"src":"3234:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"3208:34:8","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_contract$_IWitnetRequest_$3829_$returns$_t_uint256_$value","typeString":"function (contract IWitnetRequest) payable external returns (uint256)"}},"id":371,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3208:44:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3202:50:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":373,"nodeType":"ExpressionStatement","src":"3202:50:8"}]},"documentation":{"id":342,"nodeType":"StructuredDocumentation","src":"2567:336:8","text":"Send a new request to the Witnet network with transaction value as a reward.\n @param _request An instance of `IWitnetRequest` contract.\n @return _id Sequential identifier for the request included in the WitnetRequestBoard.\n @return _reward Current reward amount escrowed by the WRB until a result gets reported."},"id":375,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetPostRequest","nameLocation":"2917:18:8","nodeType":"FunctionDefinition","parameters":{"id":346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":345,"mutability":"mutable","name":"_request","nameLocation":"2951:8:8","nodeType":"VariableDeclaration","scope":375,"src":"2936:23:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"},"typeName":{"id":344,"nodeType":"UserDefinedTypeName","pathNode":{"id":343,"name":"IWitnetRequest","nodeType":"IdentifierPath","referencedDeclaration":3829,"src":"2936:14:8"},"referencedDeclaration":3829,"src":"2936:14:8","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"visibility":"internal"}],"src":"2935:25:8"},"returnParameters":{"id":351,"nodeType":"ParameterList","parameters":[{"constant":false,"id":348,"mutability":"mutable","name":"_id","nameLocation":"3019:3:8","nodeType":"VariableDeclaration","scope":375,"src":"3011:11:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":347,"name":"uint256","nodeType":"ElementaryTypeName","src":"3011:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":350,"mutability":"mutable","name":"_reward","nameLocation":"3032:7:8","nodeType":"VariableDeclaration","scope":375,"src":"3024:15:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":349,"name":"uint256","nodeType":"ElementaryTypeName","src":"3024:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3010:30:8"},"scope":453,"src":"2908:351:8","stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"body":{"id":421,"nodeType":"Block","src":"3687:394:8","statements":[{"assignments":[384],"declarations":[{"constant":false,"id":384,"mutability":"mutable","name":"_currentReward","nameLocation":"3705:14:8","nodeType":"VariableDeclaration","scope":421,"src":"3697:22:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":383,"name":"uint256","nodeType":"ElementaryTypeName","src":"3697:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":389,"initialValue":{"arguments":[{"id":387,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":378,"src":"3747:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":385,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"3722:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"readRequestReward","nodeType":"MemberAccess","referencedDeclaration":4063,"src":"3722:24:8","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view external returns (uint256)"}},"id":388,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3722:29:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3697:54:8"},{"assignments":[391],"declarations":[{"constant":false,"id":391,"mutability":"mutable","name":"_newReward","nameLocation":"3777:10:8","nodeType":"VariableDeclaration","scope":421,"src":"3769:18:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":390,"name":"uint256","nodeType":"ElementaryTypeName","src":"3769:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":394,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":392,"name":"_witnetEstimateReward","nodeType":"Identifier","overloadedDeclarations":[328,341],"referencedDeclaration":341,"src":"3790:21:8","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":393,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3790:23:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3769:44:8"},{"assignments":[396],"declarations":[{"constant":false,"id":396,"mutability":"mutable","name":"_fundsToAdd","nameLocation":"3831:11:8","nodeType":"VariableDeclaration","scope":421,"src":"3823:19:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":395,"name":"uint256","nodeType":"ElementaryTypeName","src":"3823:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":398,"initialValue":{"hexValue":"30","id":397,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3845:1:8","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"3823:23:8"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":401,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":399,"name":"_newReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":391,"src":"3860:10:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":400,"name":"_currentReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":384,"src":"3873:14:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3860:27:8","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":410,"nodeType":"IfStatement","src":"3856:101:8","trueBody":{"id":409,"nodeType":"Block","src":"3889:68:8","statements":[{"expression":{"id":407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":402,"name":"_fundsToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":396,"src":"3903:11:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":403,"name":"_newReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":391,"src":"3918:10:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":404,"name":"_currentReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":384,"src":"3931:14:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3918:27:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":406,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3917:29:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3903:43:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":408,"nodeType":"ExpressionStatement","src":"3903:43:8"}]}},{"expression":{"arguments":[{"id":416,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":378,"src":"4007:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":411,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"3966:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"upgradeReward","nodeType":"MemberAccess","referencedDeclaration":3992,"src":"3966:20:8","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$returns$__$","typeString":"function (uint256) payable external"}},"id":415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":414,"name":"_fundsToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":396,"src":"3994:11:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"3966:40:8","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$returns$__$value","typeString":"function (uint256) payable external"}},"id":417,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3966:45:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":418,"nodeType":"ExpressionStatement","src":"3966:45:8"},{"expression":{"id":419,"name":"_fundsToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":396,"src":"4063:11:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":382,"id":420,"nodeType":"Return","src":"4056:18:8"}]},"documentation":{"id":376,"nodeType":"StructuredDocumentation","src":"3265:311:8","text":"Upgrade the reward for a previously posted request.\n @dev Call to `upgradeReward` function in the WitnetRequestBoard contract.\n @param _id The unique identifier of a request that has been previously sent to the WitnetRequestBoard.\n @return Amount in which the reward has been increased."},"id":422,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetUpgradeReward","nameLocation":"3590:20:8","nodeType":"FunctionDefinition","parameters":{"id":379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":378,"mutability":"mutable","name":"_id","nameLocation":"3619:3:8","nodeType":"VariableDeclaration","scope":422,"src":"3611:11:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":377,"name":"uint256","nodeType":"ElementaryTypeName","src":"3611:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3610:13:8"},"returnParameters":{"id":382,"nodeType":"ParameterList","parameters":[{"constant":false,"id":381,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":422,"src":"3674:7:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":380,"name":"uint256","nodeType":"ElementaryTypeName","src":"3674:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3673:9:8"},"scope":453,"src":"3581:500:8","stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"body":{"id":436,"nodeType":"Block","src":"4438:54:8","statements":[{"expression":{"arguments":[{"id":433,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":425,"src":"4481:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":431,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"4455:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":432,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"readResponseResult","nodeType":"MemberAccess","referencedDeclaration":4097,"src":"4455:25:8","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (uint256) view external returns (struct Witnet.Result memory)"}},"id":434,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4455:30:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"functionReturnParameters":430,"id":435,"nodeType":"Return","src":"4448:37:8"}]},"documentation":{"id":423,"nodeType":"StructuredDocumentation","src":"4087:225:8","text":"Read the Witnet-provided result to a previously posted request.\n @param _id The unique identifier of a request that was posted to Witnet.\n @return The result of the request as an instance of `Witnet.Result`."},"id":437,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetReadResult","nameLocation":"4326:17:8","nodeType":"FunctionDefinition","parameters":{"id":426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":425,"mutability":"mutable","name":"_id","nameLocation":"4352:3:8","nodeType":"VariableDeclaration","scope":437,"src":"4344:11:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":424,"name":"uint256","nodeType":"ElementaryTypeName","src":"4344:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4343:13:8"},"returnParameters":{"id":430,"nodeType":"ParameterList","parameters":[{"constant":false,"id":429,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":437,"src":"4412:20:8","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":428,"nodeType":"UserDefinedTypeName","pathNode":{"id":427,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"4412:13:8"},"referencedDeclaration":4342,"src":"4412:13:8","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"4411:22:8"},"scope":453,"src":"4317:175:8","stateMutability":"view","virtual":true,"visibility":"internal"},{"body":{"id":451,"nodeType":"Block","src":"4872:47:8","statements":[{"expression":{"arguments":[{"id":448,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":440,"src":"4908:3:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":446,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"4889:6:8","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"deleteQuery","nodeType":"MemberAccess","referencedDeclaration":3977,"src":"4889:18:8","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$returns$_t_struct$_Response_$4336_memory_ptr_$","typeString":"function (uint256) external returns (struct Witnet.Response memory)"}},"id":449,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4889:23:8","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response memory"}},"functionReturnParameters":445,"id":450,"nodeType":"Return","src":"4882:30:8"}]},"documentation":{"id":438,"nodeType":"StructuredDocumentation","src":"4498:250:8","text":"Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\n @param _id The unique identifier of a previously posted request.\n @return The Witnet-provided result to the request."},"id":452,"implemented":true,"kind":"function","modifiers":[],"name":"_witnetDeleteQuery","nameLocation":"4762:18:8","nodeType":"FunctionDefinition","parameters":{"id":441,"nodeType":"ParameterList","parameters":[{"constant":false,"id":440,"mutability":"mutable","name":"_id","nameLocation":"4789:3:8","nodeType":"VariableDeclaration","scope":452,"src":"4781:11:8","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":439,"name":"uint256","nodeType":"ElementaryTypeName","src":"4781:7:8","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4780:13:8"},"returnParameters":{"id":445,"nodeType":"ParameterList","parameters":[{"constant":false,"id":444,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":452,"src":"4844:22:8","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":443,"nodeType":"UserDefinedTypeName","pathNode":{"id":442,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"4844:15:8"},"referencedDeclaration":4336,"src":"4844:15:8","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"src":"4843:24:8"},"scope":453,"src":"4753:166:8","stateMutability":"nonpayable","virtual":true,"visibility":"internal"}],"scope":454,"src":"304:4618:8","usedErrors":[]}],"src":"33:4890:8"},"id":8},"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol","exportedSymbols":{"IWitnetRequest":[3829],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Witnet":[4619],"WitnetRequestBoard":[481]},"id":482,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":455,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:9"},{"id":456,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:9"},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol","file":"./interfaces/IWitnetRequestBoardEvents.sol","id":457,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":482,"sourceUnit":3913,"src":"100:52:9","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol","file":"./interfaces/IWitnetRequestBoardReporter.sol","id":458,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":482,"sourceUnit":3964,"src":"153:54:9","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol","file":"./interfaces/IWitnetRequestBoardRequestor.sol","id":459,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":482,"sourceUnit":3994,"src":"208:55:9","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol","file":"./interfaces/IWitnetRequestBoardView.sol","id":460,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":482,"sourceUnit":4107,"src":"264:50:9","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol","file":"./interfaces/IWitnetRequestParser.sol","id":461,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":482,"sourceUnit":4285,"src":"315:47:9","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":463,"name":"IWitnetRequestBoardEvents","nodeType":"IdentifierPath","referencedDeclaration":3912,"src":"504:25:9"},"id":464,"nodeType":"InheritanceSpecifier","src":"504:25:9"},{"baseName":{"id":465,"name":"IWitnetRequestBoardReporter","nodeType":"IdentifierPath","referencedDeclaration":3963,"src":"535:27:9"},"id":466,"nodeType":"InheritanceSpecifier","src":"535:27:9"},{"baseName":{"id":467,"name":"IWitnetRequestBoardRequestor","nodeType":"IdentifierPath","referencedDeclaration":3993,"src":"568:28:9"},"id":468,"nodeType":"InheritanceSpecifier","src":"568:28:9"},{"baseName":{"id":469,"name":"IWitnetRequestBoardView","nodeType":"IdentifierPath","referencedDeclaration":4106,"src":"602:23:9"},"id":470,"nodeType":"InheritanceSpecifier","src":"602:23:9"},{"baseName":{"id":471,"name":"IWitnetRequestParser","nodeType":"IdentifierPath","referencedDeclaration":4284,"src":"631:20:9"},"id":472,"nodeType":"InheritanceSpecifier","src":"631:20:9"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":462,"nodeType":"StructuredDocumentation","src":"364:96:9","text":"@title Witnet Request Board functionality base contract.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":481,"linearizedBaseContracts":[481,4284,4106,3993,3963,3912],"name":"WitnetRequestBoard","nameLocation":"478:18:9","nodeType":"ContractDefinition","nodes":[{"body":{"id":479,"nodeType":"Block","src":"685:68:9","statements":[{"expression":{"arguments":[{"hexValue":"5769746e657452657175657374426f6172643a206e6f207472616e7366657273206163636570746564","id":476,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"702:43:9","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150","typeString":"literal_string \"WitnetRequestBoard: no transfers accepted\""},"value":"WitnetRequestBoard: no transfers accepted"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150","typeString":"literal_string \"WitnetRequestBoard: no transfers accepted\""}],"id":475,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"695:6:9","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"695:51:9","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":478,"nodeType":"ExpressionStatement","src":"695:51:9"}]},"id":480,"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":473,"nodeType":"ParameterList","parameters":[],"src":"665:2:9"},"returnParameters":{"id":474,"nodeType":"ParameterList","parameters":[],"src":"685:0:9"},"scope":481,"src":"658:95:9","stateMutability":"payable","virtual":false,"visibility":"external"}],"scope":482,"src":"460:295:9","usedErrors":[]}],"src":"33:723:9"},"id":9},"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol","exportedSymbols":{"Clonable":[7948],"Context":[7979],"IWitnetRandomness":[3813],"IWitnetRequest":[3829],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Ownable":[8100],"Proxiable":[8160],"UsingWitnet":[453],"Witnet":[4619],"WitnetRandomness":[1271],"WitnetRequestBoard":[481],"WitnetRequestMalleableBase":[9039],"WitnetRequestRandomness":[9072]},"id":1272,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":483,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:10"},{"id":484,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:10"},{"absolutePath":"witnet-solidity-bridge/contracts/UsingWitnet.sol","file":"../UsingWitnet.sol","id":485,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1272,"sourceUnit":454,"src":"100:28:10","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol","file":"../interfaces/IWitnetRandomness.sol","id":486,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1272,"sourceUnit":3814,"src":"129:45:10","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol","file":"../requests/WitnetRequestRandomness.sol","id":487,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1272,"sourceUnit":9073,"src":"175:49:10","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":489,"name":"IWitnetRandomness","nodeType":"IdentifierPath","referencedDeclaration":3813,"src":"403:17:10"},"id":490,"nodeType":"InheritanceSpecifier","src":"403:17:10"},{"baseName":{"id":491,"name":"UsingWitnet","nodeType":"IdentifierPath","referencedDeclaration":453,"src":"430:11:10"},"id":492,"nodeType":"InheritanceSpecifier","src":"430:11:10"},{"baseName":{"id":493,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"451:8:10"},"id":494,"nodeType":"InheritanceSpecifier","src":"451:8:10"}],"contractDependencies":[9072],"contractKind":"contract","documentation":{"id":488,"nodeType":"StructuredDocumentation","src":"226:136:10","text":"@title WitnetRandomness: A trustless randomness generator and registry, based on the Witnet oracle. \n @author Witnet Foundation."},"fullyImplemented":true,"id":1271,"linearizedBaseContracts":[1271,7948,7995,453,3813],"name":"WitnetRandomness","nameLocation":"371:16:10","nodeType":"ContractDefinition","nodes":[{"constant":false,"functionSelector":"3b13e76e","id":497,"mutability":"mutable","name":"witnetRandomnessRequest","nameLocation":"497:23:10","nodeType":"VariableDeclaration","scope":1271,"src":"466:54:10","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"},"typeName":{"id":496,"nodeType":"UserDefinedTypeName","pathNode":{"id":495,"name":"WitnetRequestRandomness","nodeType":"IdentifierPath","referencedDeclaration":9072,"src":"466:23:10"},"referencedDeclaration":9072,"src":"466:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"visibility":"public"},{"baseFunctions":[3774],"constant":false,"functionSelector":"9938fd0c","id":500,"mutability":"mutable","name":"latestRandomizeBlock","nameLocation":"550:20:10","nodeType":"VariableDeclaration","overrides":{"id":499,"nodeType":"OverrideSpecifier","overrides":[],"src":"541:8:10"},"scope":1271,"src":"526:44:10","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":498,"name":"uint256","nodeType":"ElementaryTypeName","src":"526:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"constant":false,"id":505,"mutability":"mutable","name":"__randomize_","nameLocation":"621:12:10","nodeType":"VariableDeclaration","scope":1271,"src":"577:56:10","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData)"},"typeName":{"id":504,"keyType":{"id":501,"name":"uint256","nodeType":"ElementaryTypeName","src":"586:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"577:34:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData)"},"valueType":{"id":503,"nodeType":"UserDefinedTypeName","pathNode":{"id":502,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"597:13:10"},"referencedDeclaration":514,"src":"597:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}}},"visibility":"internal"},{"canonicalName":"WitnetRandomness.RandomizeData","id":514,"members":[{"constant":false,"id":507,"mutability":"mutable","name":"from","nameLocation":"678:4:10","nodeType":"VariableDeclaration","scope":514,"src":"670:12:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":506,"name":"address","nodeType":"ElementaryTypeName","src":"670:7:10","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":509,"mutability":"mutable","name":"prevBlock","nameLocation":"700:9:10","nodeType":"VariableDeclaration","scope":514,"src":"692:17:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":508,"name":"uint256","nodeType":"ElementaryTypeName","src":"692:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":511,"mutability":"mutable","name":"nextBlock","nameLocation":"727:9:10","nodeType":"VariableDeclaration","scope":514,"src":"719:17:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":510,"name":"uint256","nodeType":"ElementaryTypeName","src":"719:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":513,"mutability":"mutable","name":"witnetQueryId","nameLocation":"754:13:10","nodeType":"VariableDeclaration","scope":514,"src":"746:21:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":512,"name":"uint256","nodeType":"ElementaryTypeName","src":"746:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"RandomizeData","nameLocation":"646:13:10","nodeType":"StructDefinition","scope":1271,"src":"639:135:10","visibility":"public"},{"body":{"id":538,"nodeType":"Block","src":"1011:135:10","statements":[{"expression":{"id":529,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":524,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"1021:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"1047:27:10","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_WitnetRequestRandomness_$9072_$","typeString":"function () returns (contract WitnetRequestRandomness)"},"typeName":{"id":526,"nodeType":"UserDefinedTypeName","pathNode":{"id":525,"name":"WitnetRequestRandomness","nodeType":"IdentifierPath","referencedDeclaration":9072,"src":"1051:23:10"},"referencedDeclaration":9072,"src":"1051:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}}},"id":528,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1047:29:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"src":"1021:55:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"id":530,"nodeType":"ExpressionStatement","src":"1021:55:10"},{"expression":{"arguments":[{"expression":{"id":534,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1128:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":535,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"1128:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":531,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"1086:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"id":533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transferOwnership","nodeType":"MemberAccess","referencedDeclaration":8079,"src":"1086:41:10","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1086:53:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":537,"nodeType":"ExpressionStatement","src":"1086:53:10"}]},"documentation":{"id":515,"nodeType":"StructuredDocumentation","src":"780:159:10","text":"Include an address to specify the immutable WitnetRequestBoard entrypoint address.\n @param _wrb The WitnetRequestBoard immutable entrypoint address."},"id":539,"implemented":true,"kind":"constructor","modifiers":[{"arguments":[{"id":521,"name":"_wrb","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":518,"src":"1001:4:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}}],"id":522,"kind":"baseConstructorSpecifier","modifierName":{"id":520,"name":"UsingWitnet","nodeType":"IdentifierPath","referencedDeclaration":453,"src":"989:11:10"},"nodeType":"ModifierInvocation","src":"989:17:10"}],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":518,"mutability":"mutable","name":"_wrb","nameLocation":"975:4:10","nodeType":"VariableDeclaration","scope":539,"src":"956:23:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"},"typeName":{"id":517,"nodeType":"UserDefinedTypeName","pathNode":{"id":516,"name":"WitnetRequestBoard","nodeType":"IdentifierPath","referencedDeclaration":481,"src":"956:18:10"},"referencedDeclaration":481,"src":"956:18:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"visibility":"internal"}],"src":"955:25:10"},"returnParameters":{"id":523,"nodeType":"ParameterList","parameters":[],"src":"1011:0:10"},"scope":1271,"src":"944:202:10","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[3722],"body":{"id":552,"nodeType":"Block","src":"1421:56:10","statements":[{"expression":{"arguments":[{"id":549,"name":"_gasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":542,"src":"1460:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":548,"name":"_witnetEstimateReward","nodeType":"Identifier","overloadedDeclarations":[328,341],"referencedDeclaration":328,"src":"1438:21:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1438:32:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":547,"id":551,"nodeType":"Return","src":"1431:39:10"}]},"documentation":{"id":540,"nodeType":"StructuredDocumentation","src":"1152:140:10","text":"Returns amount of wei required to be paid as a fee when requesting randomization with a \n transaction gas price as the one given."},"functionSelector":"a60ee268","id":553,"implemented":true,"kind":"function","modifiers":[],"name":"estimateRandomizeFee","nameLocation":"1306:20:10","nodeType":"FunctionDefinition","overrides":{"id":544,"nodeType":"OverrideSpecifier","overrides":[],"src":"1382:8:10"},"parameters":{"id":543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":542,"mutability":"mutable","name":"_gasPrice","nameLocation":"1335:9:10","nodeType":"VariableDeclaration","scope":553,"src":"1327:17:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":541,"name":"uint256","nodeType":"ElementaryTypeName","src":"1327:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1326:19:10"},"returnParameters":{"id":547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":546,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":553,"src":"1408:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":545,"name":"uint256","nodeType":"ElementaryTypeName","src":"1408:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1407:9:10"},"scope":1271,"src":"1297:180:10","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[3736],"body":{"id":595,"nodeType":"Block","src":"2393:206:10","statements":[{"assignments":[570],"declarations":[{"constant":false,"id":570,"mutability":"mutable","name":"_data","nameLocation":"2425:5:10","nodeType":"VariableDeclaration","scope":595,"src":"2403:27:10","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":569,"nodeType":"UserDefinedTypeName","pathNode":{"id":568,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"2403:13:10"},"referencedDeclaration":514,"src":"2403:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":574,"initialValue":{"baseExpression":{"id":571,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"2433:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":573,"indexExpression":{"id":572,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":556,"src":"2446:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2433:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2403:50:10"},{"expression":{"id":578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":575,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":562,"src":"2463:3:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":576,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":570,"src":"2469:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":577,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"2469:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2463:25:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":579,"nodeType":"ExpressionStatement","src":"2463:25:10"},{"expression":{"id":583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":580,"name":"_from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":560,"src":"2498:5:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":581,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":570,"src":"2506:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":582,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"2506:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2498:18:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":584,"nodeType":"ExpressionStatement","src":"2498:18:10"},{"expression":{"id":588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":585,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":564,"src":"2526:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":586,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":570,"src":"2539:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":587,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"2539:15:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2526:28:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":589,"nodeType":"ExpressionStatement","src":"2526:28:10"},{"expression":{"id":593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":590,"name":"_nextBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":566,"src":"2564:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":591,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":570,"src":"2577:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":592,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"2577:15:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2564:28:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":594,"nodeType":"ExpressionStatement","src":"2564:28:10"}]},"documentation":{"id":554,"nodeType":"StructuredDocumentation","src":"1483:669:10","text":"Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\n @dev Returns zero values if no randomness request was actually posted within a given block.\n @param _block Block number whose randomness request is being queried for.\n @return _from Address from which the latest randomness request was posted.\n @return _id Unique request identifier as provided by the WRB.\n @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none."},"functionSelector":"a3252f68","id":596,"implemented":true,"kind":"function","modifiers":[],"name":"getRandomizeData","nameLocation":"2166:16:10","nodeType":"FunctionDefinition","overrides":{"id":558,"nodeType":"OverrideSpecifier","overrides":[],"src":"2237:8:10"},"parameters":{"id":557,"nodeType":"ParameterList","parameters":[{"constant":false,"id":556,"mutability":"mutable","name":"_block","nameLocation":"2191:6:10","nodeType":"VariableDeclaration","scope":596,"src":"2183:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":555,"name":"uint256","nodeType":"ElementaryTypeName","src":"2183:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2182:16:10"},"returnParameters":{"id":567,"nodeType":"ParameterList","parameters":[{"constant":false,"id":560,"mutability":"mutable","name":"_from","nameLocation":"2284:5:10","nodeType":"VariableDeclaration","scope":596,"src":"2276:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":559,"name":"address","nodeType":"ElementaryTypeName","src":"2276:7:10","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":562,"mutability":"mutable","name":"_id","nameLocation":"2311:3:10","nodeType":"VariableDeclaration","scope":596,"src":"2303:11:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":561,"name":"uint256","nodeType":"ElementaryTypeName","src":"2303:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":564,"mutability":"mutable","name":"_prevBlock","nameLocation":"2336:10:10","nodeType":"VariableDeclaration","scope":596,"src":"2328:18:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":563,"name":"uint256","nodeType":"ElementaryTypeName","src":"2328:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":566,"mutability":"mutable","name":"_nextBlock","nameLocation":"2368:10:10","nodeType":"VariableDeclaration","scope":596,"src":"2360:18:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":565,"name":"uint256","nodeType":"ElementaryTypeName","src":"2360:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2262:126:10"},"scope":1271,"src":"2157:442:10","stateMutability":"view","virtual":true,"visibility":"external"},{"baseFunctions":[3744],"body":{"id":682,"nodeType":"Block","src":"3537:768:10","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":605,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"3551:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":607,"indexExpression":{"id":606,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":599,"src":"3564:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3551:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":608,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"3551:25:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":611,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3588:1:10","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":610,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3580:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":609,"name":"address","nodeType":"ElementaryTypeName","src":"3580:7:10","typeDescriptions":{}}},"id":612,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3580:10:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3551:39:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":621,"nodeType":"IfStatement","src":"3547:109:10","trueBody":{"id":620,"nodeType":"Block","src":"3592:64:10","statements":[{"expression":{"id":618,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":614,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":599,"src":"3606:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":616,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":599,"src":"3638:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":615,"name":"getRandomnessNextBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":714,"src":"3615:22:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3615:30:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3606:39:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":619,"nodeType":"ExpressionStatement","src":"3606:39:10"}]}},{"assignments":[623],"declarations":[{"constant":false,"id":623,"mutability":"mutable","name":"_queryId","nameLocation":"3673:8:10","nodeType":"VariableDeclaration","scope":682,"src":"3665:16:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":622,"name":"uint256","nodeType":"ElementaryTypeName","src":"3665:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":628,"initialValue":{"expression":{"baseExpression":{"id":624,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"3684:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":626,"indexExpression":{"id":625,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":599,"src":"3697:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3684:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"3684:34:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3665:53:10"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":630,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":623,"src":"3736:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":631,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3748:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3736:13:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573733a206e6f742072616e646f6d697a6564","id":633,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3751:34:10","typeDescriptions":{"typeIdentifier":"t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692","typeString":"literal_string \"WitnetRandomness: not randomized\""},"value":"WitnetRandomness: not randomized"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692","typeString":"literal_string \"WitnetRandomness: not randomized\""}],"id":629,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3728:7:10","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3728:58:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":635,"nodeType":"ExpressionStatement","src":"3728:58:10"},{"expression":{"arguments":[{"arguments":[{"id":638,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":623,"src":"3835:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":637,"name":"_witnetCheckResultAvailability","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"3804:30:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3804:40:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573733a2070656e64696e672072616e646f6d697a65","id":640,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3846:37:10","typeDescriptions":{"typeIdentifier":"t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae","typeString":"literal_string \"WitnetRandomness: pending randomize\""},"value":"WitnetRandomness: pending randomize"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae","typeString":"literal_string \"WitnetRandomness: pending randomize\""}],"id":636,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3796:7:10","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3796:88:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":642,"nodeType":"ExpressionStatement","src":"3796:88:10"},{"assignments":[647],"declarations":[{"constant":false,"id":647,"mutability":"mutable","name":"_witnetResult","nameLocation":"3915:13:10","nodeType":"VariableDeclaration","scope":682,"src":"3894:34:10","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":646,"nodeType":"UserDefinedTypeName","pathNode":{"id":645,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"3894:13:10"},"referencedDeclaration":4342,"src":"3894:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"id":651,"initialValue":{"arguments":[{"id":649,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":623,"src":"3949:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":648,"name":"_witnetReadResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":437,"src":"3931:17:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Result memory)"}},"id":650,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3931:27:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"nodeType":"VariableDeclarationStatement","src":"3894:64:10"},{"condition":{"arguments":[{"id":654,"name":"_witnetResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":647,"src":"3984:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}],"expression":{"id":652,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"3972:6:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"isOk","nodeType":"MemberAccess","referencedDeclaration":4139,"src":"3972:11:10","typeDescriptions":{"typeIdentifier":"t_function_external_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bool_$","typeString":"function (struct Witnet.Result memory) pure external returns (bool)"}},"id":655,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3972:26:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":680,"nodeType":"Block","src":"4069:230:10","statements":[{"assignments":[663],"declarations":[{"constant":false,"id":663,"mutability":"mutable","name":"_nextRandomizeBlock","nameLocation":"4091:19:10","nodeType":"VariableDeclaration","scope":680,"src":"4083:27:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":662,"name":"uint256","nodeType":"ElementaryTypeName","src":"4083:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":668,"initialValue":{"expression":{"baseExpression":{"id":664,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"4113:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":666,"indexExpression":{"id":665,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":599,"src":"4126:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4113:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":667,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"4113:30:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"4083:60:10"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":670,"name":"_nextRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":663,"src":"4165:19:10","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":"4188:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"4165:24:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573733a206661756c74792072616e646f6d697a65","id":673,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4191:36:10","typeDescriptions":{"typeIdentifier":"t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2","typeString":"literal_string \"WitnetRandomness: faulty randomize\""},"value":"WitnetRandomness: faulty randomize"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2","typeString":"literal_string \"WitnetRandomness: faulty randomize\""}],"id":669,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4157:7:10","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":"4157:71:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":675,"nodeType":"ExpressionStatement","src":"4157:71:10"},{"expression":{"arguments":[{"id":677,"name":"_nextRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":663,"src":"4268:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":676,"name":"getRandomnessAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":683,"src":"4249:18:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bytes32_$","typeString":"function (uint256) view returns (bytes32)"}},"id":678,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4249:39:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":604,"id":679,"nodeType":"Return","src":"4242:46:10"}]},"id":681,"nodeType":"IfStatement","src":"3968:331:10","trueBody":{"id":661,"nodeType":"Block","src":"4000:63:10","statements":[{"expression":{"arguments":[{"id":658,"name":"_witnetResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":647,"src":"4038:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}],"expression":{"id":656,"name":"witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":257,"src":"4021:6:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}},"id":657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"asBytes32","nodeType":"MemberAccess","referencedDeclaration":4166,"src":"4021:16:10","typeDescriptions":{"typeIdentifier":"t_function_external_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bytes32_$","typeString":"function (struct Witnet.Result memory) pure external returns (bytes32)"}},"id":659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4021:31:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":604,"id":660,"nodeType":"Return","src":"4014:38:10"}]}}]},"documentation":{"id":597,"nodeType":"StructuredDocumentation","src":"2605:808:10","text":"Retrieves the randomness generated upon solving a request that was posted within a given block,\n if any, or to the _first_ request posted after that block, otherwise. Should the intended \n request happen to be finalized with errors on the Witnet oracle network side, this function \n will recursively try to return randomness from the next non-faulty randomization request found \n in storage, if any. \n @dev Fails if:\n @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\n @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\n @dev   iii. all requests in/after the given block were solved with errors.\n @param _block Block number from which the search will start."},"functionSelector":"fb476cad","id":683,"implemented":true,"kind":"function","modifiers":[],"name":"getRandomnessAfter","nameLocation":"3427:18:10","nodeType":"FunctionDefinition","overrides":{"id":601,"nodeType":"OverrideSpecifier","overrides":[],"src":"3498:8:10"},"parameters":{"id":600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":599,"mutability":"mutable","name":"_block","nameLocation":"3454:6:10","nodeType":"VariableDeclaration","scope":683,"src":"3446:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":598,"name":"uint256","nodeType":"ElementaryTypeName","src":"3446:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3445:16:10"},"returnParameters":{"id":604,"nodeType":"ParameterList","parameters":[{"constant":false,"id":603,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":683,"src":"3524:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":602,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3524:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"3523:9:10"},"scope":1271,"src":"3418:887:10","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[3752],"body":{"id":713,"nodeType":"Block","src":"4707:232:10","statements":[{"expression":{"components":[{"condition":{"components":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":692,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"4726:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":694,"indexExpression":{"id":693,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":686,"src":"4739:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4726:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":695,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"4726:25:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":698,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4763:1:10","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":697,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4755:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":696,"name":"address","nodeType":"ElementaryTypeName","src":"4755:7:10","typeDescriptions":{}}},"id":699,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4755:10:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4726:39:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":701,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"4725:41:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"id":707,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":686,"src":"4893:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":708,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"4901:20:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":706,"name":"_searchNextBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1244,"src":"4876:16:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) view returns (uint256)"}},"id":709,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4876:46:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":710,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"4725:197:10","trueExpression":{"expression":{"baseExpression":{"id":702,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"4781:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":704,"indexExpression":{"id":703,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":686,"src":"4794:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4781:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":705,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"4781:30:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":711,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"4724:208:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":691,"id":712,"nodeType":"Return","src":"4717:215:10"}]},"documentation":{"id":684,"nodeType":"StructuredDocumentation","src":"4311:268:10","text":"Tells what is the number of the next block in which a randomization request was posted after the given one. \n @param _block Block number from which the search will start.\n @return Number of the first block found after the given one, or `0` otherwise."},"functionSelector":"40b41daa","id":714,"implemented":true,"kind":"function","modifiers":[],"name":"getRandomnessNextBlock","nameLocation":"4593:22:10","nodeType":"FunctionDefinition","overrides":{"id":688,"nodeType":"OverrideSpecifier","overrides":[],"src":"4668:8:10"},"parameters":{"id":687,"nodeType":"ParameterList","parameters":[{"constant":false,"id":686,"mutability":"mutable","name":"_block","nameLocation":"4624:6:10","nodeType":"VariableDeclaration","scope":714,"src":"4616:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":685,"name":"uint256","nodeType":"ElementaryTypeName","src":"4616:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4615:16:10"},"returnParameters":{"id":691,"nodeType":"ParameterList","parameters":[{"constant":false,"id":690,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":714,"src":"4694:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":689,"name":"uint256","nodeType":"ElementaryTypeName","src":"4694:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4693:9:10"},"scope":1271,"src":"4584:355:10","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[3760],"body":{"id":748,"nodeType":"Block","src":"5318:273:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":726,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":724,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":717,"src":"5335:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":725,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5344:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5335:10:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":723,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"5328:6:10","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":727,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5328:18:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":728,"nodeType":"ExpressionStatement","src":"5328:18:10"},{"assignments":[730],"declarations":[{"constant":false,"id":730,"mutability":"mutable","name":"_latest","nameLocation":"5364:7:10","nodeType":"VariableDeclaration","scope":748,"src":"5356:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":729,"name":"uint256","nodeType":"ElementaryTypeName","src":"5356:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":732,"initialValue":{"id":731,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"5374:20:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5356:38:10"},{"expression":{"components":[{"condition":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":733,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":717,"src":"5413:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":734,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":730,"src":"5422:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5413:16:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":736,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5412:18:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"id":739,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":717,"src":"5534:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":740,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"5542:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":742,"indexExpression":{"id":741,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":730,"src":"5555:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5542:21:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":743,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"5542:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":738,"name":"_searchPrevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1270,"src":"5517:16:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) view returns (uint256)"}},"id":744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5517:57:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":745,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"5412:162:10","trueExpression":{"id":737,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":730,"src":"5445:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":746,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5411:173:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":722,"id":747,"nodeType":"Return","src":"5404:180:10"}]},"documentation":{"id":715,"nodeType":"StructuredDocumentation","src":"4945:245:10","text":"Gets previous block in which a randomness request was posted before the given one.\n @param _block Block number from which the search will start. Cannot be zero.\n @return First block found before the given one, or `0` otherwise."},"functionSelector":"36b651bb","id":749,"implemented":true,"kind":"function","modifiers":[],"name":"getRandomnessPrevBlock","nameLocation":"5204:22:10","nodeType":"FunctionDefinition","overrides":{"id":719,"nodeType":"OverrideSpecifier","overrides":[],"src":"5279:8:10"},"parameters":{"id":718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":717,"mutability":"mutable","name":"_block","nameLocation":"5235:6:10","nodeType":"VariableDeclaration","scope":749,"src":"5227:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":716,"name":"uint256","nodeType":"ElementaryTypeName","src":"5227:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5226:16:10"},"returnParameters":{"id":722,"nodeType":"ParameterList","parameters":[{"constant":false,"id":721,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":749,"src":"5305:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":720,"name":"uint256","nodeType":"ElementaryTypeName","src":"5305:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5304:9:10"},"scope":1271,"src":"5195:396:10","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[3768],"body":{"id":776,"nodeType":"Block","src":"5906:204:10","statements":[{"assignments":[760],"declarations":[{"constant":false,"id":760,"mutability":"mutable","name":"_data","nameLocation":"5938:5:10","nodeType":"VariableDeclaration","scope":776,"src":"5916:27:10","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":759,"nodeType":"UserDefinedTypeName","pathNode":{"id":758,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"5916:13:10"},"referencedDeclaration":514,"src":"5916:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":764,"initialValue":{"baseExpression":{"id":761,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"5946:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":763,"indexExpression":{"id":762,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":752,"src":"5959:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5946:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5916:50:10"},{"expression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":765,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":760,"src":"5997:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":766,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"5997:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":767,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6020:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5997:24:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"arguments":[{"expression":{"id":770,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":760,"src":"6073:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":771,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"6073:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":769,"name":"_witnetCheckResultAvailability","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"6042:30:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":772,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6042:51:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5997:96:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":774,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5983:120:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":757,"id":775,"nodeType":"Return","src":"5976:127:10"}]},"documentation":{"id":750,"nodeType":"StructuredDocumentation","src":"5597:194:10","text":"Returns `true` only when the randomness request that got posted within given block was already\n reported back from the Witnet oracle, either successfully or with an error of any kind."},"functionSelector":"9bc86fec","id":777,"implemented":true,"kind":"function","modifiers":[],"name":"isRandomized","nameLocation":"5805:12:10","nodeType":"FunctionDefinition","overrides":{"id":754,"nodeType":"OverrideSpecifier","overrides":[],"src":"5870:8:10"},"parameters":{"id":753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":752,"mutability":"mutable","name":"_block","nameLocation":"5826:6:10","nodeType":"VariableDeclaration","scope":777,"src":"5818:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":751,"name":"uint256","nodeType":"ElementaryTypeName","src":"5818:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5817:16:10"},"returnParameters":{"id":757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":756,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":777,"src":"5896:4:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":755,"name":"bool","nodeType":"ElementaryTypeName","src":"5896:4:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5895:6:10"},"scope":1271,"src":"5796:314:10","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[3786],"body":{"id":805,"nodeType":"Block","src":"6805:243:10","statements":[{"expression":{"arguments":[{"id":791,"name":"_range","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":780,"src":"6842:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"id":792,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":782,"src":"6862:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"arguments":[{"expression":{"id":796,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6941:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6941:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":799,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":784,"src":"6992:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":798,"name":"getRandomnessAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":683,"src":"6973:18:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bytes32_$","typeString":"function (uint256) view returns (bytes32)"}},"id":800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6973:26:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":794,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6909:3:10","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":795,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encode","nodeType":"MemberAccess","src":"6909:10:10","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":801,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6909:108:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":793,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"6882:9:10","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":802,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6882:149:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":790,"name":"random","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":863,"src":"6822:6:10","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint32_$_t_uint256_$_t_bytes32_$returns$_t_uint32_$","typeString":"function (uint32,uint256,bytes32) pure returns (uint32)"}},"id":803,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6822:219:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"functionReturnParameters":789,"id":804,"nodeType":"Return","src":"6815:226:10"}]},"documentation":{"id":778,"nodeType":"StructuredDocumentation","src":"6116:545:10","text":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \n @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\n @param _range Range within which the uniformly-distributed random number will be generated.\n @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n @param _block Block number from which the search will start."},"functionSelector":"24cbbfc1","id":806,"implemented":true,"kind":"function","modifiers":[],"name":"random","nameLocation":"6675:6:10","nodeType":"FunctionDefinition","overrides":{"id":786,"nodeType":"OverrideSpecifier","overrides":[],"src":"6767:8:10"},"parameters":{"id":785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":780,"mutability":"mutable","name":"_range","nameLocation":"6689:6:10","nodeType":"VariableDeclaration","scope":806,"src":"6682:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":779,"name":"uint32","nodeType":"ElementaryTypeName","src":"6682:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":782,"mutability":"mutable","name":"_nonce","nameLocation":"6705:6:10","nodeType":"VariableDeclaration","scope":806,"src":"6697:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":781,"name":"uint256","nodeType":"ElementaryTypeName","src":"6697:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":784,"mutability":"mutable","name":"_block","nameLocation":"6721:6:10","nodeType":"VariableDeclaration","scope":806,"src":"6713:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":783,"name":"uint256","nodeType":"ElementaryTypeName","src":"6713:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6681:47:10"},"returnParameters":{"id":789,"nodeType":"ParameterList","parameters":[{"constant":false,"id":788,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":806,"src":"6793:6:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":787,"name":"uint32","nodeType":"ElementaryTypeName","src":"6793:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"6792:8:10"},"scope":1271,"src":"6666:382:10","stateMutability":"view","virtual":true,"visibility":"external"},{"baseFunctions":[3798],"body":{"id":862,"nodeType":"Block","src":"7629:297:10","statements":[{"assignments":[820],"declarations":[{"constant":false,"id":820,"mutability":"mutable","name":"_flagBits","nameLocation":"7645:9:10","nodeType":"VariableDeclaration","scope":862,"src":"7639:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":819,"name":"uint8","nodeType":"ElementaryTypeName","src":"7639:5:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":829,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"323535","id":823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7663:3:10","typeDescriptions":{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"},"value":"255"},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"arguments":[{"id":825,"name":"_range","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":809,"src":"7684:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":824,"name":"_msbDeBruijn32","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1215,"src":"7669:14:10","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint32_$returns$_t_uint8_$","typeString":"function (uint32) pure returns (uint8)"}},"id":826,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7669:22:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"7663:28:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7657:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":821,"name":"uint8","nodeType":"ElementaryTypeName","src":"7657:5:10","typeDescriptions":{}}},"id":828,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7657:35:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"VariableDeclarationStatement","src":"7639:53:10"},{"assignments":[831],"declarations":[{"constant":false,"id":831,"mutability":"mutable","name":"_number","nameLocation":"7710:7:10","nodeType":"VariableDeclaration","scope":862,"src":"7702:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":830,"name":"uint256","nodeType":"ElementaryTypeName","src":"7702:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":851,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":850,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"arguments":[{"id":837,"name":"_seed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":813,"src":"7787:5:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":838,"name":"_nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":811,"src":"7794:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":835,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7776:3:10","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":836,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encode","nodeType":"MemberAccess","src":"7776:10:10","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":839,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7776:25:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":834,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"7745:9:10","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7745:74:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7720:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":832,"name":"uint256","nodeType":"ElementaryTypeName","src":"7720:7:10","typeDescriptions":{}}},"id":841,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7720:113:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":844,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7844:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":845,"name":"_flagBits","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":820,"src":"7849:9:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"7844:14:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":847,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7861:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"7844:18:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":843,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7836:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":842,"name":"uint256","nodeType":"ElementaryTypeName","src":"7836:7:10","typeDescriptions":{}}},"id":849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7836:27:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7720:143:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"7702:161:10"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":856,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":854,"name":"_number","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":831,"src":"7888:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":855,"name":"_range","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":809,"src":"7898:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"7888:16:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":857,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"7887:18:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"id":858,"name":"_flagBits","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":820,"src":"7909:9:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"7887:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":853,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7880:6:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":852,"name":"uint32","nodeType":"ElementaryTypeName","src":"7880:6:10","typeDescriptions":{}}},"id":860,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7880:39:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"functionReturnParameters":818,"id":861,"nodeType":"Return","src":"7873:46:10"}]},"documentation":{"id":807,"nodeType":"StructuredDocumentation","src":"7054:434:10","text":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n the given `_nonce` value and the given `_seed` as a source of entropy.\n @param _range Range within which the uniformly-distributed random number will be generated.\n @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n @param _seed Seed value used as entropy source."},"functionSelector":"e7d4a016","id":863,"implemented":true,"kind":"function","modifiers":[],"name":"random","nameLocation":"7502:6:10","nodeType":"FunctionDefinition","overrides":{"id":815,"nodeType":"OverrideSpecifier","overrides":[],"src":"7591:8:10"},"parameters":{"id":814,"nodeType":"ParameterList","parameters":[{"constant":false,"id":809,"mutability":"mutable","name":"_range","nameLocation":"7516:6:10","nodeType":"VariableDeclaration","scope":863,"src":"7509:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":808,"name":"uint32","nodeType":"ElementaryTypeName","src":"7509:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":811,"mutability":"mutable","name":"_nonce","nameLocation":"7532:6:10","nodeType":"VariableDeclaration","scope":863,"src":"7524:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":810,"name":"uint256","nodeType":"ElementaryTypeName","src":"7524:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":813,"mutability":"mutable","name":"_seed","nameLocation":"7548:5:10","nodeType":"VariableDeclaration","scope":863,"src":"7540:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":812,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7540:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"7508:46:10"},"returnParameters":{"id":818,"nodeType":"ParameterList","parameters":[{"constant":false,"id":817,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":863,"src":"7617:6:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":816,"name":"uint32","nodeType":"ElementaryTypeName","src":"7617:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"7616:8:10"},"scope":1271,"src":"7493:433:10","stateMutability":"pure","virtual":true,"visibility":"public"},{"baseFunctions":[3804],"body":{"id":965,"nodeType":"Block","src":"8590:1114:10","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":870,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"8604:20:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":871,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"8627:5:10","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":872,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"8627:12:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8604:35:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":963,"nodeType":"Block","src":"9633:65:10","statements":[{"expression":{"arguments":[{"expression":{"id":959,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"9674:5:10","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"9674:12:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":958,"name":"upgradeRandomizeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1014,"src":"9654:19:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9654:33:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":869,"id":962,"nodeType":"Return","src":"9647:40:10"}]},"id":964,"nodeType":"IfStatement","src":"8600:1098:10","trueBody":{"id":957,"nodeType":"Block","src":"8641:986:10","statements":[{"assignments":[875],"declarations":[{"constant":false,"id":875,"mutability":"mutable","name":"_queryId","nameLocation":"8711:8:10","nodeType":"VariableDeclaration","scope":957,"src":"8706:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":874,"name":"uint","nodeType":"ElementaryTypeName","src":"8706:4:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":876,"nodeType":"VariableDeclarationStatement","src":"8706:13:10"},{"expression":{"id":883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":877,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":875,"src":"8734:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":878,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":868,"src":"8744:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":879,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"8733:22:10","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":881,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"8777:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}],"id":880,"name":"_witnetPostRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":375,"src":"8758:18:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IWitnetRequest_$3829_$returns$_t_uint256_$_t_uint256_$","typeString":"function (contract IWitnetRequest) returns (uint256,uint256)"}},"id":882,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8758:43:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"src":"8733:68:10","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":884,"nodeType":"ExpressionStatement","src":"8733:68:10"},{"assignments":[887],"declarations":[{"constant":false,"id":887,"mutability":"mutable","name":"_data","nameLocation":"8884:5:10","nodeType":"VariableDeclaration","scope":957,"src":"8862:27:10","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":886,"nodeType":"UserDefinedTypeName","pathNode":{"id":885,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"8862:13:10"},"referencedDeclaration":514,"src":"8862:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":892,"initialValue":{"baseExpression":{"id":888,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"8892:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":891,"indexExpression":{"expression":{"id":889,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"8905:5:10","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":890,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"8905:12:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8892:26:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"8862:56:10"},{"expression":{"id":897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":893,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":887,"src":"8932:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":895,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"8932:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":896,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":875,"src":"8954:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8932:30:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":898,"nodeType":"ExpressionStatement","src":"8932:30:10"},{"expression":{"id":904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":899,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":887,"src":"8976:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":901,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"8976:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":902,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8989:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"8989:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"8976:23:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":905,"nodeType":"ExpressionStatement","src":"8976:23:10"},{"assignments":[907],"declarations":[{"constant":false,"id":907,"mutability":"mutable","name":"_prevBlock","nameLocation":"9056:10:10","nodeType":"VariableDeclaration","scope":957,"src":"9048:18:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":906,"name":"uint256","nodeType":"ElementaryTypeName","src":"9048:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":909,"initialValue":{"id":908,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"9069:20:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"9048:41:10"},{"expression":{"id":914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":910,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":887,"src":"9103:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":912,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"9103:15:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":913,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":907,"src":"9121:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9103:28:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":915,"nodeType":"ExpressionStatement","src":"9103:28:10"},{"expression":{"id":922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":916,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"9145:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":918,"indexExpression":{"id":917,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":907,"src":"9158:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9145:24:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"9145:34:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":920,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"9182:5:10","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"9182:12:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9145:49:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":923,"nodeType":"ExpressionStatement","src":"9145:49:10"},{"expression":{"id":927,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":924,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"9208:20:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":925,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"9231:5:10","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"9231:12:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9208:35:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":928,"nodeType":"ExpressionStatement","src":"9208:35:10"},{"eventCall":{"arguments":[{"expression":{"id":930,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9318:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":931,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"9318:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":932,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":907,"src":"9346:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":933,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":875,"src":"9374:8:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":934,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"9400:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"id":935,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":8394,"src":"9400:28:10","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes32_$","typeString":"function () view external returns (bytes32)"}},"id":936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9400:30:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":929,"name":"Randomized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3714,"src":"9290:10:10","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_bytes32_$returns$__$","typeString":"function (address,uint256,uint256,bytes32)"}},"id":937,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9290:154:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":938,"nodeType":"EmitStatement","src":"9285:159:10"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":942,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":939,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":868,"src":"9508:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":940,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9521:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":941,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"9521:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9508:22:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":956,"nodeType":"IfStatement","src":"9504:113:10","trueBody":{"id":955,"nodeType":"Block","src":"9532:85:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":949,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9579:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"9579:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":951,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":868,"src":"9591:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9579:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"expression":{"id":945,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9558:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":946,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"9558:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":944,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9550:8:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":943,"name":"address","nodeType":"ElementaryTypeName","src":"9550:8:10","stateMutability":"payable","typeDescriptions":{}}},"id":947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9550:19:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transfer","nodeType":"MemberAccess","src":"9550:28:10","typeDescriptions":{"typeIdentifier":"t_function_transfer_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":953,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9550:52:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":954,"nodeType":"ExpressionStatement","src":"9550:52:10"}]}}]}}]},"documentation":{"id":864,"nodeType":"StructuredDocumentation","src":"7932:541:10","text":"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \n Only one randomness request per block will be actually posted to the WRB. Should there \n already be a posted request within current block, it will try to upgrade Witnet fee of current's \n block randomness request according to current gas price. In both cases, all unused funds shall \n be transfered back to the tx sender.\n @return _usedFunds Amount of funds actually used from those provided by the tx sender."},"functionSelector":"699b328a","id":966,"implemented":true,"kind":"function","modifiers":[],"name":"randomize","nameLocation":"8487:9:10","nodeType":"FunctionDefinition","overrides":{"id":866,"nodeType":"OverrideSpecifier","overrides":[],"src":"8540:8:10"},"parameters":{"id":865,"nodeType":"ParameterList","parameters":[],"src":"8496:2:10"},"returnParameters":{"id":869,"nodeType":"ParameterList","parameters":[{"constant":false,"id":868,"mutability":"mutable","name":"_usedFunds","nameLocation":"8574:10:10","nodeType":"VariableDeclaration","scope":966,"src":"8566:18:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":867,"name":"uint256","nodeType":"ElementaryTypeName","src":"8566:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8565:20:10"},"scope":1271,"src":"8478:1226:10","stateMutability":"payable","virtual":true,"visibility":"external"},{"baseFunctions":[3812],"body":{"id":1013,"nodeType":"Block","src":"10331:299:10","statements":[{"assignments":[977],"declarations":[{"constant":false,"id":977,"mutability":"mutable","name":"_data","nameLocation":"10363:5:10","nodeType":"VariableDeclaration","scope":1013,"src":"10341:27:10","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":976,"nodeType":"UserDefinedTypeName","pathNode":{"id":975,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"10341:13:10"},"referencedDeclaration":514,"src":"10341:13:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":981,"initialValue":{"baseExpression":{"id":978,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"10371:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":980,"indexExpression":{"id":979,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":969,"src":"10384:6:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10371:20:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"10341:50:10"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":982,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":977,"src":"10405:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":983,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"10405:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":984,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10428:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10405:24:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":994,"nodeType":"IfStatement","src":"10401:109:10","trueBody":{"id":993,"nodeType":"Block","src":"10431:79:10","statements":[{"expression":{"id":991,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":986,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"10445:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":988,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":977,"src":"10479:5:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":989,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"10479:19:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":987,"name":"_witnetUpgradeReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":422,"src":"10458:20:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10458:41:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10445:54:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":992,"nodeType":"ExpressionStatement","src":"10445:54:10"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":995,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"10523:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":996,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"10536:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":997,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"10536:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10523:22:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1012,"nodeType":"IfStatement","src":"10519:105:10","trueBody":{"id":1011,"nodeType":"Block","src":"10547:77:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1008,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1005,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"10590:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1006,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"10590:9:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":1007,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":973,"src":"10602:10:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10590:22:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"expression":{"id":1001,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"10569:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1002,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"10569:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1000,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10561:8:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":999,"name":"address","nodeType":"ElementaryTypeName","src":"10561:8:10","stateMutability":"payable","typeDescriptions":{}}},"id":1003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10561:19:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":1004,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transfer","nodeType":"MemberAccess","src":"10561:28:10","typeDescriptions":{"typeIdentifier":"t_function_transfer_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":1009,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10561:52:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1010,"nodeType":"ExpressionStatement","src":"10561:52:10"}]}}]},"documentation":{"id":967,"nodeType":"StructuredDocumentation","src":"9710:482:10","text":"Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\n may be required in proportion to how much bigger the current tx gas price is with respect the \n highest gas price that was paid in either previous fee upgrades, or when the given randomness \n request was posted. All unused funds shall be transferred back to the tx sender.\n @return _usedFunds Amount of dunds actually used from those provided by the tx sender."},"functionSelector":"e35329f8","id":1014,"implemented":true,"kind":"function","modifiers":[],"name":"upgradeRandomizeFee","nameLocation":"10206:19:10","nodeType":"FunctionDefinition","overrides":{"id":971,"nodeType":"OverrideSpecifier","overrides":[],"src":"10281:8:10"},"parameters":{"id":970,"nodeType":"ParameterList","parameters":[{"constant":false,"id":969,"mutability":"mutable","name":"_block","nameLocation":"10234:6:10","nodeType":"VariableDeclaration","scope":1014,"src":"10226:14:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":968,"name":"uint256","nodeType":"ElementaryTypeName","src":"10226:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10225:16:10"},"returnParameters":{"id":974,"nodeType":"ParameterList","parameters":[{"constant":false,"id":973,"mutability":"mutable","name":"_usedFunds","nameLocation":"10315:10:10","nodeType":"VariableDeclaration","scope":1014,"src":"10307:18:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":972,"name":"uint256","nodeType":"ElementaryTypeName","src":"10307:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10306:20:10"},"scope":1271,"src":"10197:433:10","stateMutability":"payable","virtual":true,"visibility":"public"},{"baseFunctions":[7910],"body":{"id":1032,"nodeType":"Block","src":"11270:75:10","statements":[{"expression":{"id":1026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1022,"name":"_newInstance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1020,"src":"11280:12:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":1023,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11295:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_WitnetRandomness_$1271_$","typeString":"type(contract super WitnetRandomness)"}},"id":1024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"clone","nodeType":"MemberAccess","referencedDeclaration":7910,"src":"11295:11:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_contract$_Clonable_$7948_$","typeString":"function () returns (contract Clonable)"}},"id":1025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11295:13:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"src":"11280:28:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":1027,"nodeType":"ExpressionStatement","src":"11280:28:10"},{"expression":{"arguments":[{"id":1029,"name":"_newInstance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1020,"src":"11325:12:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":1028,"name":"_clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1122,"src":"11318:6:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Clonable_$7948_$returns$__$","typeString":"function (contract Clonable)"}},"id":1030,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11318:20:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1031,"nodeType":"ExpressionStatement","src":"11318:20:10"}]},"documentation":{"id":1015,"nodeType":"StructuredDocumentation","src":"10878:286:10","text":"Deploys and returns the address of a minimal proxy clone that replicates contract\n behaviour while using its own EVM storage.\n @dev This function should always provide a new address, no matter how many times \n @dev is actually called from the same `msg.sender`."},"functionSelector":"09ed4607","id":1033,"implemented":true,"kind":"function","modifiers":[],"name":"clone","nameLocation":"11178:5:10","nodeType":"FunctionDefinition","overrides":{"id":1017,"nodeType":"OverrideSpecifier","overrides":[],"src":"11217:8:10"},"parameters":{"id":1016,"nodeType":"ParameterList","parameters":[],"src":"11183:2:10"},"returnParameters":{"id":1021,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1020,"mutability":"mutable","name":"_newInstance","nameLocation":"11252:12:10","nodeType":"VariableDeclaration","scope":1033,"src":"11243:21:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":1019,"nodeType":"UserDefinedTypeName","pathNode":{"id":1018,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"11243:8:10"},"referencedDeclaration":7948,"src":"11243:8:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"11242:23:10"},"scope":1271,"src":"11169:176:10","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"baseFunctions":[7947],"body":{"id":1054,"nodeType":"Block","src":"11870:93:10","statements":[{"expression":{"id":1048,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1043,"name":"_newInstance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1041,"src":"11880:12:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":1046,"name":"_salt","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1036,"src":"11920:5:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":1044,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11895:5:10","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_WitnetRandomness_$1271_$","typeString":"type(contract super WitnetRandomness)"}},"id":1045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"cloneDeterministic","nodeType":"MemberAccess","referencedDeclaration":7947,"src":"11895:24:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$returns$_t_contract$_Clonable_$7948_$","typeString":"function (bytes32) returns (contract Clonable)"}},"id":1047,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11895:31:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"src":"11880:46:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":1049,"nodeType":"ExpressionStatement","src":"11880:46:10"},{"expression":{"arguments":[{"id":1051,"name":"_newInstance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1041,"src":"11943:12:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":1050,"name":"_clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1122,"src":"11936:6:10","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Clonable_$7948_$returns$__$","typeString":"function (contract Clonable)"}},"id":1052,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11936:20:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1053,"nodeType":"ExpressionStatement","src":"11936:20:10"}]},"documentation":{"id":1034,"nodeType":"StructuredDocumentation","src":"11351:387:10","text":"Deploys and returns the address of a minimal proxy clone that replicates contract \n behaviour while using its own EVM storage.\n @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\n @dev the clone. Using the same `_salt` multiple time will revert, since\n @dev no contract can be deployed more than once at the same address."},"functionSelector":"daaa360c","id":1055,"implemented":true,"kind":"function","modifiers":[],"name":"cloneDeterministic","nameLocation":"11752:18:10","nodeType":"FunctionDefinition","overrides":{"id":1038,"nodeType":"OverrideSpecifier","overrides":[],"src":"11817:8:10"},"parameters":{"id":1037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1036,"mutability":"mutable","name":"_salt","nameLocation":"11779:5:10","nodeType":"VariableDeclaration","scope":1055,"src":"11771:13:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1035,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11771:7:10","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"11770:15:10"},"returnParameters":{"id":1042,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1041,"mutability":"mutable","name":"_newInstance","nameLocation":"11852:12:10","nodeType":"VariableDeclaration","scope":1055,"src":"11843:21:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":1040,"nodeType":"UserDefinedTypeName","pathNode":{"id":1039,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"11843:8:10"},"referencedDeclaration":7948,"src":"11843:8:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"11842:23:10"},"scope":1271,"src":"11743:220:10","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"baseFunctions":[7994],"body":{"id":1087,"nodeType":"Block","src":"12352:274:10","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":1065,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"12378:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}],"id":1064,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12370:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1063,"name":"address","nodeType":"ElementaryTypeName","src":"12370:7:10","typeDescriptions":{}}},"id":1066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12370:32:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12414:1:10","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":1068,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12406:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1067,"name":"address","nodeType":"ElementaryTypeName","src":"12406:7:10","typeDescriptions":{}}},"id":1070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12406:10:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12370:46:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573733a20616c726561647920696e697469616c697a6564","id":1072,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12418:39:10","typeDescriptions":{"typeIdentifier":"t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c","typeString":"literal_string \"WitnetRandomness: already initialized\""},"value":"WitnetRandomness: already initialized"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c","typeString":"literal_string \"WitnetRandomness: already initialized\""}],"id":1062,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"12362:7:10","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1073,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12362:96:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1074,"nodeType":"ExpressionStatement","src":"12362:96:10"},{"expression":{"id":1085,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1075,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"12468:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":1079,"name":"_initData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1058,"src":"12559:9:10","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":1081,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12587:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1080,"name":"address","nodeType":"ElementaryTypeName","src":"12587:7:10","typeDescriptions":{}}}],"id":1082,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"12586:9:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"}],"expression":{"id":1077,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"12531:3:10","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":1078,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"decode","nodeType":"MemberAccess","src":"12531:10:10","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":1083,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12531:78:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":1076,"name":"WitnetRequestRandomness","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9072,"src":"12494:23:10","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetRequestRandomness_$9072_$","typeString":"type(contract WitnetRequestRandomness)"}},"id":1084,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12494:125:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"src":"12468:151:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"id":1086,"nodeType":"ExpressionStatement","src":"12468:151:10"}]},"documentation":{"id":1056,"nodeType":"StructuredDocumentation","src":"12211:48:10","text":"@dev Initializes contract's storage context."},"functionSelector":"439fab91","id":1088,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"12273:10:10","nodeType":"FunctionDefinition","overrides":{"id":1060,"nodeType":"OverrideSpecifier","overrides":[],"src":"12339:8:10"},"parameters":{"id":1059,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1058,"mutability":"mutable","name":"_initData","nameLocation":"12297:9:10","nodeType":"VariableDeclaration","scope":1088,"src":"12284:22:10","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":1057,"name":"bytes","nodeType":"ElementaryTypeName","src":"12284:5:10","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"12283:24:10"},"returnParameters":{"id":1061,"nodeType":"ParameterList","parameters":[],"src":"12352:0:10"},"scope":1271,"src":"12264:362:10","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":1121,"nodeType":"Block","src":"12999:185:10","statements":[{"assignments":[1096],"declarations":[{"constant":false,"id":1096,"mutability":"mutable","name":"_request","nameLocation":"13017:8:10","nodeType":"VariableDeclaration","scope":1121,"src":"13009:16:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1095,"name":"address","nodeType":"ElementaryTypeName","src":"13009:7:10","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1103,"initialValue":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":1099,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"13036:23:10","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"id":1100,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"clone","nodeType":"MemberAccess","referencedDeclaration":8613,"src":"13036:29:10","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_contract$_Clonable_$7948_$","typeString":"function () external returns (contract Clonable)"}},"id":1101,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13036:31:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":1098,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13028:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1097,"name":"address","nodeType":"ElementaryTypeName","src":"13028:7:10","typeDescriptions":{}}},"id":1102,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13028:40:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13009:59:10"},{"expression":{"arguments":[{"expression":{"id":1108,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"13114:3:10","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"13114:10:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":1105,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1096,"src":"13086:8:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1104,"name":"Ownable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8100,"src":"13078:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Ownable_$8100_$","typeString":"type(contract Ownable)"}},"id":1106,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13078:17:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Ownable_$8100","typeString":"contract Ownable"}},"id":1107,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transferOwnership","nodeType":"MemberAccess","referencedDeclaration":8079,"src":"13078:35:10","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":1110,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13078:47:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1111,"nodeType":"ExpressionStatement","src":"13078:47:10"},{"expression":{"arguments":[{"arguments":[{"id":1117,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1096,"src":"13167:8:10","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":1115,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13156:3:10","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":1116,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encode","nodeType":"MemberAccess","src":"13156:10:10","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":1118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13156:20:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":1112,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1092,"src":"13135:9:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":1114,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":7994,"src":"13135:20:10","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory) external"}},"id":1119,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13135:42:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1120,"nodeType":"ExpressionStatement","src":"13135:42:10"}]},"documentation":{"id":1089,"nodeType":"StructuredDocumentation","src":"12874:75:10","text":"@dev Common steps for both deterministic and non-deterministic cloning."},"id":1122,"implemented":true,"kind":"function","modifiers":[],"name":"_clone","nameLocation":"12963:6:10","nodeType":"FunctionDefinition","parameters":{"id":1093,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1092,"mutability":"mutable","name":"_instance","nameLocation":"12979:9:10","nodeType":"VariableDeclaration","scope":1122,"src":"12970:18:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":1091,"nodeType":"UserDefinedTypeName","pathNode":{"id":1090,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"12970:8:10"},"referencedDeclaration":7948,"src":"12970:8:10","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"12969:20:10"},"returnParameters":{"id":1094,"nodeType":"ParameterList","parameters":[],"src":"12999:0:10"},"scope":1271,"src":"12954:230:10","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":1214,"nodeType":"Block","src":"13386:452:10","statements":[{"assignments":[1135],"declarations":[{"constant":false,"id":1135,"mutability":"mutable","name":"_bitPosition","nameLocation":"13413:12:10","nodeType":"VariableDeclaration","scope":1214,"src":"13396:29:10","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint8_$32_memory_ptr","typeString":"uint8[32]"},"typeName":{"baseType":{"id":1133,"name":"uint8","nodeType":"ElementaryTypeName","src":"13396:5:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":1134,"length":{"hexValue":"3332","id":1132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13402:2:10","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"nodeType":"ArrayTypeName","src":"13396:9:10","typeDescriptions":{"typeIdentifier":"t_array$_t_uint8_$32_storage_ptr","typeString":"uint8[32]"}},"visibility":"internal"}],"id":1169,"initialValue":{"components":[{"hexValue":"30","id":1136,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13446:1:10","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"39","id":1137,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13449:1:10","typeDescriptions":{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},"value":"9"},{"hexValue":"31","id":1138,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13452:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"3130","id":1139,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13455:2:10","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},{"hexValue":"3133","id":1140,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13459:2:10","typeDescriptions":{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},"value":"13"},{"hexValue":"3231","id":1141,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13463:2:10","typeDescriptions":{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},"value":"21"},{"hexValue":"32","id":1142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13467:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"3239","id":1143,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13470:2:10","typeDescriptions":{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},"value":"29"},{"hexValue":"3131","id":1144,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13490:2:10","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},{"hexValue":"3134","id":1145,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13494:2:10","typeDescriptions":{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},"value":"14"},{"hexValue":"3136","id":1146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13498:2:10","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},{"hexValue":"3138","id":1147,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13502:2:10","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},{"hexValue":"3232","id":1148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13506:2:10","typeDescriptions":{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},"value":"22"},{"hexValue":"3235","id":1149,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13510:2:10","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},{"hexValue":"33","id":1150,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13514:1:10","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},{"hexValue":"3330","id":1151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13517:2:10","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},{"hexValue":"38","id":1152,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13537:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},{"hexValue":"3132","id":1153,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13540:2:10","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},{"hexValue":"3230","id":1154,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13544:2:10","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},{"hexValue":"3238","id":1155,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13548:2:10","typeDescriptions":{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},"value":"28"},{"hexValue":"3135","id":1156,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13552:2:10","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},{"hexValue":"3137","id":1157,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13556:2:10","typeDescriptions":{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},"value":"17"},{"hexValue":"3234","id":1158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13560:2:10","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},{"hexValue":"37","id":1159,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13564:1:10","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},{"hexValue":"3139","id":1160,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13583:2:10","typeDescriptions":{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},"value":"19"},{"hexValue":"3237","id":1161,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13587:2:10","typeDescriptions":{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},"value":"27"},{"hexValue":"3233","id":1162,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13591:2:10","typeDescriptions":{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},"value":"23"},{"hexValue":"36","id":1163,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13595:1:10","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},{"hexValue":"3236","id":1164,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13598:2:10","typeDescriptions":{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},"value":"26"},{"hexValue":"35","id":1165,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13602:1:10","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},{"hexValue":"34","id":1166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13605:1:10","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},{"hexValue":"3331","id":1167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13608:2:10","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"}],"id":1168,"isConstant":false,"isInlineArray":true,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"13428:196:10","typeDescriptions":{"typeIdentifier":"t_array$_t_uint8_$32_memory_ptr","typeString":"uint8[32] memory"}},"nodeType":"VariableDeclarationStatement","src":"13396:228:10"},{"expression":{"id":1174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1170,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13634:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":1173,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1171,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13640:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"31","id":1172,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13646:1:10","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"13640:7:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"13634:13:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":1175,"nodeType":"ExpressionStatement","src":"13634:13:10"},{"expression":{"id":1180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1176,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13657:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":1179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1177,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13663:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"32","id":1178,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13669:1:10","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"13663:7:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"13657:13:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":1181,"nodeType":"ExpressionStatement","src":"13657:13:10"},{"expression":{"id":1186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1182,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13680:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":1185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1183,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13686:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"34","id":1184,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13692:1:10","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"13686:7:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"13680:13:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":1187,"nodeType":"ExpressionStatement","src":"13680:13:10"},{"expression":{"id":1192,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1188,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13703:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":1191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1189,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13709:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"38","id":1190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13715:1:10","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"13709:7:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"13703:13:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":1193,"nodeType":"ExpressionStatement","src":"13703:13:10"},{"expression":{"id":1198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1194,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13726:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":1197,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1195,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13732:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3136","id":1196,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13738:2:10","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},"src":"13732:8:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"13726:14:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":1199,"nodeType":"ExpressionStatement","src":"13726:14:10"},{"expression":{"baseExpression":{"id":1200,"name":"_bitPosition","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1135,"src":"13757:12:10","typeDescriptions":{"typeIdentifier":"t_array$_t_uint8_$32_memory_ptr","typeString":"uint8[32] memory"}},"id":1212,"indexExpression":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":1211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1208,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1203,"name":"_v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1125,"src":"13790:2:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"hexValue":"30783037633461636464","id":1206,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13803:10:10","typeDescriptions":{"typeIdentifier":"t_rational_130329821_by_1","typeString":"int_const 130329821"},"value":"0x07c4acdd"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_130329821_by_1","typeString":"int_const 130329821"}],"id":1205,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13795:7:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":1204,"name":"uint256","nodeType":"ElementaryTypeName","src":"13795:7:10","typeDescriptions":{}}},"id":1207,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13795:19:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13790:24:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1202,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13783:6:10","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":1201,"name":"uint32","nodeType":"ElementaryTypeName","src":"13783:6:10","typeDescriptions":{}}},"id":1209,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13783:32:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3237","id":1210,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13819:2:10","typeDescriptions":{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},"value":"27"},"src":"13783:38:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"13757:74:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"functionReturnParameters":1129,"id":1213,"nodeType":"Return","src":"13750:81:10"}]},"documentation":{"id":1123,"nodeType":"StructuredDocumentation","src":"13190:106:10","text":"@dev Returns index of the Most Significant Bit of the given number, applying De Bruijn O(1) algorithm."},"id":1215,"implemented":true,"kind":"function","modifiers":[],"name":"_msbDeBruijn32","nameLocation":"13310:14:10","nodeType":"FunctionDefinition","parameters":{"id":1126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1125,"mutability":"mutable","name":"_v","nameLocation":"13332:2:10","nodeType":"VariableDeclaration","scope":1215,"src":"13325:9:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":1124,"name":"uint32","nodeType":"ElementaryTypeName","src":"13325:6:10","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"13324:11:10"},"returnParameters":{"id":1129,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1128,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1215,"src":"13375:5:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":1127,"name":"uint8","nodeType":"ElementaryTypeName","src":"13375:5:10","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"13374:7:10"},"scope":1271,"src":"13301:537:10","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":1243,"nodeType":"Block","src":"14114:175:10","statements":[{"expression":{"components":[{"condition":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1227,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1225,"name":"_target","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1218,"src":"14133:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":1226,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1220,"src":"14144:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14133:18:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":1228,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14132:20:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"id":1234,"name":"_target","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1218,"src":"14231:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":1235,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"14240:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":1237,"indexExpression":{"id":1236,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1220,"src":"14253:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14240:21:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":1238,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"14240:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1233,"name":"_searchNextBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1244,"src":"14214:16:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) view returns (uint256)"}},"id":1239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14214:58:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"14132:140:10","trueExpression":{"expression":{"baseExpression":{"id":1229,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"14168:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":1231,"indexExpression":{"id":1230,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1220,"src":"14181:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14168:21:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":1232,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"14168:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":1241,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14131:151:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1224,"id":1242,"nodeType":"Return","src":"14124:158:10"}]},"documentation":{"id":1216,"nodeType":"StructuredDocumentation","src":"13844:173:10","text":"@dev Recursively searches for the number of the first block after the given one in which a Witnet randomization request was posted.\n @dev Returns 0 if none found."},"id":1244,"implemented":true,"kind":"function","modifiers":[],"name":"_searchNextBlock","nameLocation":"14031:16:10","nodeType":"FunctionDefinition","parameters":{"id":1221,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1218,"mutability":"mutable","name":"_target","nameLocation":"14056:7:10","nodeType":"VariableDeclaration","scope":1244,"src":"14048:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1217,"name":"uint256","nodeType":"ElementaryTypeName","src":"14048:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1220,"mutability":"mutable","name":"_latest","nameLocation":"14073:7:10","nodeType":"VariableDeclaration","scope":1244,"src":"14065:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1219,"name":"uint256","nodeType":"ElementaryTypeName","src":"14065:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14047:34:10"},"returnParameters":{"id":1224,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1223,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1244,"src":"14105:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1222,"name":"uint256","nodeType":"ElementaryTypeName","src":"14105:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14104:9:10"},"scope":1271,"src":"14022:267:10","stateMutability":"view","virtual":false,"visibility":"internal"},{"body":{"id":1269,"nodeType":"Block","src":"14567:149:10","statements":[{"expression":{"components":[{"condition":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1256,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1254,"name":"_target","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1247,"src":"14586:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":1255,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1249,"src":"14596:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14586:17:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":1257,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14585:19:10","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"id":1260,"name":"_target","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1247,"src":"14658:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":1261,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"14667:12:10","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":1263,"indexExpression":{"id":1262,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1249,"src":"14680:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14667:21:10","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":1264,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"14667:31:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1259,"name":"_searchPrevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1270,"src":"14641:16:10","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) view returns (uint256)"}},"id":1265,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14641:58:10","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":1266,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"14585:114:10","trueExpression":{"id":1258,"name":"_latest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1249,"src":"14619:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":1267,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14584:125:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":1253,"id":1268,"nodeType":"Return","src":"14577:132:10"}]},"documentation":{"id":1245,"nodeType":"StructuredDocumentation","src":"14295:175:10","text":"@dev Recursively searches for the number of the first block before the given one in which a Witnet randomization request was posted.\n @dev Returns 0 if none found."},"id":1270,"implemented":true,"kind":"function","modifiers":[],"name":"_searchPrevBlock","nameLocation":"14484:16:10","nodeType":"FunctionDefinition","parameters":{"id":1250,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1247,"mutability":"mutable","name":"_target","nameLocation":"14509:7:10","nodeType":"VariableDeclaration","scope":1270,"src":"14501:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1246,"name":"uint256","nodeType":"ElementaryTypeName","src":"14501:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1249,"mutability":"mutable","name":"_latest","nameLocation":"14526:7:10","nodeType":"VariableDeclaration","scope":1270,"src":"14518:15:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1248,"name":"uint256","nodeType":"ElementaryTypeName","src":"14518:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14500:34:10"},"returnParameters":{"id":1253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1252,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1270,"src":"14558:7:10","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1251,"name":"uint256","nodeType":"ElementaryTypeName","src":"14558:7:10","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14557:9:10"},"scope":1271,"src":"14475:241:10","stateMutability":"view","virtual":false,"visibility":"internal"}],"scope":1272,"src":"362:14356:10","usedErrors":[]}],"src":"33:14686:10"},"id":10},"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619],"WitnetBoardData":[1554]},"id":1555,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1273,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:11"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":1274,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1555,"sourceUnit":4620,"src":"66:28:11","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":{"id":1275,"nodeType":"StructuredDocumentation","src":"96:85:11","text":"@title Witnet Request Board base data model. \n @author The Witnet Foundation."},"fullyImplemented":true,"id":1554,"linearizedBaseContracts":[1554],"name":"WitnetBoardData","nameLocation":"199:15:11","nodeType":"ContractDefinition","nodes":[{"constant":true,"id":1278,"mutability":"constant","name":"_WITNET_BOARD_DATA_SLOTHASH","nameLocation":"250:27:11","nodeType":"VariableDeclaration","scope":1554,"src":"224:179:11","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1276,"name":"bytes32","nodeType":"ElementaryTypeName","src":"224:7:11","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"hexValue":"307866353935323430623335316263386639353163326635336232366634653738633332636236323132326366373663313962376664646137643439363865313833","id":1277,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"337:66:11","typeDescriptions":{"typeIdentifier":"t_rational_111080156880573123782333136393096456259796301421348949269751801291758316872067_by_1","typeString":"int_const 1110...(70 digits omitted)...2067"},"value":"0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183"},"visibility":"internal"},{"canonicalName":"WitnetBoardData.WitnetBoardState","id":1290,"members":[{"constant":false,"id":1280,"mutability":"mutable","name":"base","nameLocation":"452:4:11","nodeType":"VariableDeclaration","scope":1290,"src":"444:12:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1279,"name":"address","nodeType":"ElementaryTypeName","src":"444:7:11","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1282,"mutability":"mutable","name":"owner","nameLocation":"474:5:11","nodeType":"VariableDeclaration","scope":1290,"src":"466:13:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1281,"name":"address","nodeType":"ElementaryTypeName","src":"466:7:11","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1284,"mutability":"mutable","name":"numQueries","nameLocation":"501:10:11","nodeType":"VariableDeclaration","scope":1290,"src":"493:18:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1283,"name":"uint256","nodeType":"ElementaryTypeName","src":"493:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1289,"mutability":"mutable","name":"queries","nameLocation":"552:7:11","nodeType":"VariableDeclaration","scope":1290,"src":"521:38:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query)"},"typeName":{"id":1288,"keyType":{"id":1285,"name":"uint","nodeType":"ElementaryTypeName","src":"530:4:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"521:30:11","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query)"},"valueType":{"id":1287,"nodeType":"UserDefinedTypeName","pathNode":{"id":1286,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"538:12:11"},"referencedDeclaration":4310,"src":"538:12:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}}},"visibility":"internal"}],"name":"WitnetBoardState","nameLocation":"417:16:11","nodeType":"StructDefinition","scope":1554,"src":"410:156:11","visibility":"public"},{"body":{"id":1300,"nodeType":"Block","src":"586:44:11","statements":[{"expression":{"id":1298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1293,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"596:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1294,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"596:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1295,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"596:14:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":1296,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"613:3:11","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1297,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"613:10:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"596:27:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1299,"nodeType":"ExpressionStatement","src":"596:27:11"}]},"id":1301,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1291,"nodeType":"ParameterList","parameters":[],"src":"583:2:11"},"returnParameters":{"id":1292,"nodeType":"ParameterList","parameters":[],"src":"586:0:11"},"scope":1554,"src":"572:58:11","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":1321,"nodeType":"Block","src":"766:138:11","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":1314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":1311,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1304,"src":"809:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1310,"name":"_getQueryStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1455,"src":"793:15:11","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_enum$_QueryStatus_$4315_$","typeString":"function (uint256) view returns (enum Witnet.QueryStatus)"}},"id":1312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"793:25:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":1313,"name":"_status","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1307,"src":"822:7:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"793:36:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"arguments":[{"id":1316,"name":"_status","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1307,"src":"870:7:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}],"id":1315,"name":"_getQueryStatusRevertMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1494,"src":"841:28:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_enum$_QueryStatus_$4315_$returns$_t_string_memory_ptr_$","typeString":"function (enum Witnet.QueryStatus) pure returns (string memory)"}},"id":1317,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"841:37:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":1309,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"774:7:11","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1318,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"774:114:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1319,"nodeType":"ExpressionStatement","src":"774:114:11"},{"id":1320,"nodeType":"PlaceholderStatement","src":"896:1:11"}]},"documentation":{"id":1302,"nodeType":"StructuredDocumentation","src":"636:61:11","text":"Asserts the given query is currently in the given status."},"id":1322,"name":"inStatus","nameLocation":"711:8:11","nodeType":"ModifierDefinition","parameters":{"id":1308,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1304,"mutability":"mutable","name":"_queryId","nameLocation":"728:8:11","nodeType":"VariableDeclaration","scope":1322,"src":"720:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1303,"name":"uint256","nodeType":"ElementaryTypeName","src":"720:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":1307,"mutability":"mutable","name":"_status","nameLocation":"757:7:11","nodeType":"VariableDeclaration","scope":1322,"src":"738:26:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"typeName":{"id":1306,"nodeType":"UserDefinedTypeName","pathNode":{"id":1305,"name":"Witnet.QueryStatus","nodeType":"IdentifierPath","referencedDeclaration":4315,"src":"738:18:11"},"referencedDeclaration":4315,"src":"738:18:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"visibility":"internal"}],"src":"719:46:11"},"src":"702:202:11","virtual":false,"visibility":"internal"},{"body":{"id":1353,"nodeType":"Block","src":"1035:203:11","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1330,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1328,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1325,"src":"1053:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":1329,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1064:1:11","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1053:12:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1331,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1325,"src":"1069:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1332,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"1081:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1333,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1081:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1334,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numQueries","nodeType":"MemberAccess","referencedDeclaration":1284,"src":"1081:19:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1069:31:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1053:47:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574426f617264446174613a206e6f742079657420706f73746564","id":1337,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1102:33:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_9b09bffe90352494f89efcb829ab5d76daf825aed223ef780dc2b77a20c36b90","typeString":"literal_string \"WitnetBoardData: not yet posted\""},"value":"WitnetBoardData: not yet posted"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9b09bffe90352494f89efcb829ab5d76daf825aed223ef780dc2b77a20c36b90","typeString":"literal_string \"WitnetBoardData: not yet posted\""}],"id":1327,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1045:7:11","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1045:91:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1339,"nodeType":"ExpressionStatement","src":"1045:91:11"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":1342,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1325,"src":"1168:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":1341,"name":"_getRequester","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1510,"src":"1154:13:11","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_address_$","typeString":"function (uint256) view returns (address)"}},"id":1343,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1154:23:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1346,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1189:1:11","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":1345,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1181:7:11","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1344,"name":"address","nodeType":"ElementaryTypeName","src":"1181:7:11","typeDescriptions":{}}},"id":1347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1181:10:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1154:37:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574426f617264446174613a2064656c65746564","id":1349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1193:26:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_b03f1d77fb238623c12b922abeaa0f477ebba04f796ffb46bca85c22e89d99da","typeString":"literal_string \"WitnetBoardData: deleted\""},"value":"WitnetBoardData: deleted"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_b03f1d77fb238623c12b922abeaa0f477ebba04f796ffb46bca85c22e89d99da","typeString":"literal_string \"WitnetBoardData: deleted\""}],"id":1340,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1146:7:11","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1146:74:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1351,"nodeType":"ExpressionStatement","src":"1146:74:11"},{"id":1352,"nodeType":"PlaceholderStatement","src":"1230:1:11"}]},"documentation":{"id":1323,"nodeType":"StructuredDocumentation","src":"910:82:11","text":"Asserts the given query was previously posted and that it was not yet deleted."},"id":1354,"name":"notDeleted","nameLocation":"1006:10:11","nodeType":"ModifierDefinition","parameters":{"id":1326,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1325,"mutability":"mutable","name":"_queryId","nameLocation":"1025:8:11","nodeType":"VariableDeclaration","scope":1354,"src":"1017:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1324,"name":"uint256","nodeType":"ElementaryTypeName","src":"1017:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1016:18:11"},"src":"997:241:11","virtual":false,"visibility":"internal"},{"body":{"id":1368,"nodeType":"Block","src":"1321:100:11","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1358,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1339:3:11","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1359,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"1339:10:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1360,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"1353:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1353:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1362,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"1353:14:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1339:28:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574426f617264446174613a206f6e6c79206f776e6572","id":1364,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1369:29:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d","typeString":"literal_string \"WitnetBoardData: only owner\""},"value":"WitnetBoardData: only owner"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d","typeString":"literal_string \"WitnetBoardData: only owner\""}],"id":1357,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1331:7:11","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1331:68:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1366,"nodeType":"ExpressionStatement","src":"1331:68:11"},{"id":1367,"nodeType":"PlaceholderStatement","src":"1409:1:11"}]},"documentation":{"id":1355,"nodeType":"StructuredDocumentation","src":"1244:53:11","text":"Asserts caller corresponds to the current owner. "},"id":1369,"name":"onlyOwner","nameLocation":"1311:9:11","nodeType":"ModifierDefinition","parameters":{"id":1356,"nodeType":"ParameterList","parameters":[],"src":"1321:0:11"},"src":"1302:119:11","virtual":false,"visibility":"internal"},{"body":{"id":1388,"nodeType":"Block","src":"1543:119:11","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1377,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1375,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1372,"src":"1561:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":1376,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1572:1:11","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1561:12:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1382,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1378,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1372,"src":"1577:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1379,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"1589:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1380,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1589:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1381,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numQueries","nodeType":"MemberAccess","referencedDeclaration":1284,"src":"1589:19:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1577:31:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1561:47:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574426f617264446174613a206e6f742079657420706f73746564","id":1384,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1610:33:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_9b09bffe90352494f89efcb829ab5d76daf825aed223ef780dc2b77a20c36b90","typeString":"literal_string \"WitnetBoardData: not yet posted\""},"value":"WitnetBoardData: not yet posted"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9b09bffe90352494f89efcb829ab5d76daf825aed223ef780dc2b77a20c36b90","typeString":"literal_string \"WitnetBoardData: not yet posted\""}],"id":1374,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1553:7:11","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1385,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1553:91:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1386,"nodeType":"ExpressionStatement","src":"1553:91:11"},{"id":1387,"nodeType":"PlaceholderStatement","src":"1654:1:11"}]},"documentation":{"id":1370,"nodeType":"StructuredDocumentation","src":"1427:74:11","text":"Asserts the give query was actually posted before calling this method."},"id":1389,"name":"wasPosted","nameLocation":"1515:9:11","nodeType":"ModifierDefinition","parameters":{"id":1373,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1372,"mutability":"mutable","name":"_queryId","nameLocation":"1533:8:11","nodeType":"VariableDeclaration","scope":1389,"src":"1525:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1371,"name":"uint256","nodeType":"ElementaryTypeName","src":"1525:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1524:18:11"},"src":"1506:156:11","virtual":false,"visibility":"internal"},{"body":{"id":1454,"nodeType":"Block","src":"2055:971:11","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":1406,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1398,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1392,"src":"2067:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":1399,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2079:1:11","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2067:13:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":1405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1401,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1392,"src":"2084:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1402,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"2095:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1403,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2095:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1404,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numQueries","nodeType":"MemberAccess","referencedDeclaration":1284,"src":"2095:19:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2084:30:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2067:47:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1452,"nodeType":"Block","src":"2236:784:11","statements":[{"assignments":[1416],"declarations":[{"constant":false,"id":1416,"mutability":"mutable","name":"_query","nameLocation":"2267:6:11","nodeType":"VariableDeclaration","scope":1452,"src":"2246:27:11","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"},"typeName":{"id":1415,"nodeType":"UserDefinedTypeName","pathNode":{"id":1414,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"2246:12:11"},"referencedDeclaration":4310,"src":"2246:12:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}},"visibility":"internal"}],"id":1422,"initialValue":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1417,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"2276:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1418,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2276:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"2276:16:11","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":1421,"indexExpression":{"id":1420,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1392,"src":"2293:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2276:26:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2246:56:11"},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":1427,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":1423,"name":"_query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1416,"src":"2316:6:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":1424,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"response","nodeType":"MemberAccess","referencedDeclaration":4307,"src":"2316:15:11","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage","typeString":"struct Witnet.Response storage ref"}},"id":1425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"drTxHash","nodeType":"MemberAccess","referencedDeclaration":4333,"src":"2316:24:11","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":1426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2344:1:11","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2316:29:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1433,"name":"_query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1416,"src":"2598:6:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":1434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":4309,"src":"2598:11:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1437,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2621:1:11","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":1436,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2613:7:11","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1435,"name":"address","nodeType":"ElementaryTypeName","src":"2613:7:11","typeDescriptions":{}}},"id":1438,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2613:10:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2598:25:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1449,"nodeType":"Block","src":"2835:177:11","statements":[{"expression":{"expression":{"expression":{"id":1445,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"2975:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1446,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"2975:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1447,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Deleted","nodeType":"MemberAccess","referencedDeclaration":4314,"src":"2975:26:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"functionReturnParameters":1397,"id":1448,"nodeType":"Return","src":"2968:33:11"}]},"id":1450,"nodeType":"IfStatement","src":"2594:418:11","trueBody":{"id":1444,"nodeType":"Block","src":"2625:196:11","statements":[{"expression":{"expression":{"expression":{"id":1440,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"2785:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"2785:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1442,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"2785:25:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"functionReturnParameters":1397,"id":1443,"nodeType":"Return","src":"2778:32:11"}]}},"id":1451,"nodeType":"IfStatement","src":"2312:700:11","trueBody":{"id":1432,"nodeType":"Block","src":"2347:233:11","statements":[{"expression":{"expression":{"expression":{"id":1428,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"2542:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"2542:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1430,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"2542:27:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"functionReturnParameters":1397,"id":1431,"nodeType":"Return","src":"2535:34:11"}]}}]},"id":1453,"nodeType":"IfStatement","src":"2063:957:11","trueBody":{"id":1411,"nodeType":"Block","src":"2116:108:11","statements":[{"expression":{"expression":{"expression":{"id":1407,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"2189:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"2189:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1409,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Unknown","nodeType":"MemberAccess","referencedDeclaration":4311,"src":"2189:26:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"functionReturnParameters":1397,"id":1410,"nodeType":"Return","src":"2182:33:11"}]}}]},"documentation":{"id":1390,"nodeType":"StructuredDocumentation","src":"1909:39:11","text":"Gets current status of given query."},"id":1455,"implemented":true,"kind":"function","modifiers":[],"name":"_getQueryStatus","nameLocation":"1962:15:11","nodeType":"FunctionDefinition","parameters":{"id":1393,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1392,"mutability":"mutable","name":"_queryId","nameLocation":"1986:8:11","nodeType":"VariableDeclaration","scope":1455,"src":"1978:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1391,"name":"uint256","nodeType":"ElementaryTypeName","src":"1978:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1977:18:11"},"returnParameters":{"id":1397,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1396,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1455,"src":"2031:18:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"typeName":{"id":1395,"nodeType":"UserDefinedTypeName","pathNode":{"id":1394,"name":"Witnet.QueryStatus","nodeType":"IdentifierPath","referencedDeclaration":4315,"src":"2031:18:11"},"referencedDeclaration":4315,"src":"2031:18:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"visibility":"internal"}],"src":"2030:20:11"},"scope":1554,"src":"1953:1073:11","stateMutability":"view","virtual":false,"visibility":"internal"},{"body":{"id":1493,"nodeType":"Block","src":"3152:412:11","statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":1467,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1463,"name":"_status","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1458,"src":"3164:7:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":1464,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"3175:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1465,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"3175:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"3175:25:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"3164:36:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":1475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1471,"name":"_status","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1458,"src":"3277:7:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":1472,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"3288:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"3288:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1474,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"3288:27:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"3277:38:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":1483,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1479,"name":"_status","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1458,"src":"3394:7:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":1480,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"3405:6:11","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":1481,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"3405:18:11","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":1482,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Deleted","nodeType":"MemberAccess","referencedDeclaration":4314,"src":"3405:26:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"3394:37:11","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1489,"nodeType":"Block","src":"3505:53:11","statements":[{"expression":{"hexValue":"5769746e6574426f617264446174613a20626164206d6f6f64","id":1487,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3522:27:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_ad8e7bf01388279bffde24dc316b4499ec568d764670ed44acfdefba623486d3","typeString":"literal_string \"WitnetBoardData: bad mood\""},"value":"WitnetBoardData: bad mood"},"functionReturnParameters":1462,"id":1488,"nodeType":"Return","src":"3515:34:11"}]},"id":1490,"nodeType":"IfStatement","src":"3390:168:11","trueBody":{"id":1486,"nodeType":"Block","src":"3433:66:11","statements":[{"expression":{"hexValue":"5769746e6574426f617264446174613a206e6f7420696e2044656c6574656420737461747573","id":1484,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3450:40:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_14c2ef5c70e4202c32f9bc9f647f67e3abe7fa0740bf9630362e557bf47bf65e","typeString":"literal_string \"WitnetBoardData: not in Deleted status\""},"value":"WitnetBoardData: not in Deleted status"},"functionReturnParameters":1462,"id":1485,"nodeType":"Return","src":"3443:47:11"}]}},"id":1491,"nodeType":"IfStatement","src":"3273:285:11","trueBody":{"id":1478,"nodeType":"Block","src":"3317:67:11","statements":[{"expression":{"hexValue":"5769746e6574426f617264446174613a206e6f7420696e205265706f7274656420737461747573","id":1476,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3334:41:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_bab64ae5bd30bff0155226560ceff92d4b4dec18ff16094c8feafdc2be73dcbc","typeString":"literal_string \"WitnetBoardData: not in Reported status\""},"value":"WitnetBoardData: not in Reported status"},"functionReturnParameters":1462,"id":1477,"nodeType":"Return","src":"3327:48:11"}]}},"id":1492,"nodeType":"IfStatement","src":"3160:398:11","trueBody":{"id":1470,"nodeType":"Block","src":"3202:65:11","statements":[{"expression":{"hexValue":"5769746e6574426f617264446174613a206e6f7420696e20506f7374656420737461747573","id":1468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3219:39:11","typeDescriptions":{"typeIdentifier":"t_stringliteral_8c663beef74f4e3cb997f8717031fba44b3e4df85aa6649eb05f31c06370a3a5","typeString":"literal_string \"WitnetBoardData: not in Posted status\""},"value":"WitnetBoardData: not in Posted status"},"functionReturnParameters":1462,"id":1469,"nodeType":"Return","src":"3212:46:11"}]}}]},"id":1494,"implemented":true,"kind":"function","modifiers":[],"name":"_getQueryStatusRevertMessage","nameLocation":"3041:28:11","nodeType":"FunctionDefinition","parameters":{"id":1459,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1458,"mutability":"mutable","name":"_status","nameLocation":"3089:7:11","nodeType":"VariableDeclaration","scope":1494,"src":"3070:26:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"typeName":{"id":1457,"nodeType":"UserDefinedTypeName","pathNode":{"id":1456,"name":"Witnet.QueryStatus","nodeType":"IdentifierPath","referencedDeclaration":4315,"src":"3070:18:11"},"referencedDeclaration":4315,"src":"3070:18:11","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"visibility":"internal"}],"src":"3069:28:11"},"returnParameters":{"id":1462,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1461,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1494,"src":"3133:13:11","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":1460,"name":"string","nodeType":"ElementaryTypeName","src":"3133:6:11","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3132:15:11"},"scope":1554,"src":"3032:532:11","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":1509,"nodeType":"Block","src":"3695:53:11","statements":[{"expression":{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1502,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"3710:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1503,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3710:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1504,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"3710:16:11","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":1506,"indexExpression":{"id":1505,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1497,"src":"3727:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3710:26:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"id":1507,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":4309,"src":"3710:31:11","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":1501,"id":1508,"nodeType":"Return","src":"3703:38:11"}]},"documentation":{"id":1495,"nodeType":"StructuredDocumentation","src":"3570:31:11","text":"Gets from of a given query."},"id":1510,"implemented":true,"kind":"function","modifiers":[],"name":"_getRequester","nameLocation":"3615:13:11","nodeType":"FunctionDefinition","parameters":{"id":1498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1497,"mutability":"mutable","name":"_queryId","nameLocation":"3637:8:11","nodeType":"VariableDeclaration","scope":1510,"src":"3629:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1496,"name":"uint256","nodeType":"ElementaryTypeName","src":"3629:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3628:18:11"},"returnParameters":{"id":1501,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1500,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1510,"src":"3682:7:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1499,"name":"address","nodeType":"ElementaryTypeName","src":"3682:7:11","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3681:9:11"},"scope":1554,"src":"3606:142:11","stateMutability":"view","virtual":false,"visibility":"internal"},{"body":{"id":1526,"nodeType":"Block","src":"3915:58:11","statements":[{"expression":{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1519,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"3932:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1520,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3932:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1521,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"3932:16:11","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":1523,"indexExpression":{"id":1522,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1513,"src":"3949:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3932:26:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"id":1524,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"request","nodeType":"MemberAccess","referencedDeclaration":4304,"src":"3932:34:11","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage","typeString":"struct Witnet.Request storage ref"}},"functionReturnParameters":1518,"id":1525,"nodeType":"Return","src":"3925:41:11"}]},"documentation":{"id":1511,"nodeType":"StructuredDocumentation","src":"3754:50:11","text":"Gets the Witnet.Request part of a given query."},"id":1527,"implemented":true,"kind":"function","modifiers":[],"name":"_getRequestData","nameLocation":"3818:15:11","nodeType":"FunctionDefinition","parameters":{"id":1514,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1513,"mutability":"mutable","name":"_queryId","nameLocation":"3842:8:11","nodeType":"VariableDeclaration","scope":1527,"src":"3834:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1512,"name":"uint256","nodeType":"ElementaryTypeName","src":"3834:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3833:18:11"},"returnParameters":{"id":1518,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1517,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1527,"src":"3887:22:11","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":1516,"nodeType":"UserDefinedTypeName","pathNode":{"id":1515,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"3887:14:11"},"referencedDeclaration":4327,"src":"3887:14:11","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"src":"3886:24:11"},"scope":1554,"src":"3809:164:11","stateMutability":"view","virtual":false,"visibility":"internal"},{"body":{"id":1543,"nodeType":"Block","src":"4141:59:11","statements":[{"expression":{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1536,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"4158:6:11","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4158:8:11","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"4158:16:11","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":1540,"indexExpression":{"id":1539,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1530,"src":"4175:8:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4158:26:11","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"id":1541,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"response","nodeType":"MemberAccess","referencedDeclaration":4307,"src":"4158:35:11","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage","typeString":"struct Witnet.Response storage ref"}},"functionReturnParameters":1535,"id":1542,"nodeType":"Return","src":"4151:42:11"}]},"documentation":{"id":1528,"nodeType":"StructuredDocumentation","src":"3979:49:11","text":"Gets the Witnet.Result part of a given query."},"id":1544,"implemented":true,"kind":"function","modifiers":[],"name":"_getResponseData","nameLocation":"4042:16:11","nodeType":"FunctionDefinition","parameters":{"id":1531,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1530,"mutability":"mutable","name":"_queryId","nameLocation":"4067:8:11","nodeType":"VariableDeclaration","scope":1544,"src":"4059:16:11","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1529,"name":"uint256","nodeType":"ElementaryTypeName","src":"4059:7:11","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4058:18:11"},"returnParameters":{"id":1535,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1534,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1544,"src":"4112:23:11","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":1533,"nodeType":"UserDefinedTypeName","pathNode":{"id":1532,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"4112:15:11"},"referencedDeclaration":4336,"src":"4112:15:11","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"src":"4111:25:11"},"scope":1554,"src":"4033:167:11","stateMutability":"view","virtual":false,"visibility":"internal"},{"body":{"id":1552,"nodeType":"Block","src":"4368:89:11","statements":[{"AST":{"nodeType":"YulBlock","src":"4387:64:11","statements":[{"nodeType":"YulAssignment","src":"4401:40:11","value":{"name":"_WITNET_BOARD_DATA_SLOTHASH","nodeType":"YulIdentifier","src":"4414:27:11"},"variableNames":[{"name":"_ptr.slot","nodeType":"YulIdentifier","src":"4401:9:11"}]}]},"evmVersion":"london","externalReferences":[{"declaration":1278,"isOffset":false,"isSlot":false,"src":"4414:27:11","valueSize":1},{"declaration":1549,"isOffset":false,"isSlot":true,"src":"4401:9:11","suffix":"slot","valueSize":1}],"id":1551,"nodeType":"InlineAssembly","src":"4378:73:11"}]},"documentation":{"id":1545,"nodeType":"StructuredDocumentation","src":"4206:69:11","text":"Returns storage pointer to contents of 'WitnetBoardState' struct."},"id":1553,"implemented":true,"kind":"function","modifiers":[],"name":"_state","nameLocation":"4289:6:11","nodeType":"FunctionDefinition","parameters":{"id":1546,"nodeType":"ParameterList","parameters":[],"src":"4295:2:11"},"returnParameters":{"id":1550,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1549,"mutability":"mutable","name":"_ptr","nameLocation":"4358:4:11","nodeType":"VariableDeclaration","scope":1553,"src":"4333:29:11","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState"},"typeName":{"id":1548,"nodeType":"UserDefinedTypeName","pathNode":{"id":1547,"name":"WitnetBoardState","nodeType":"IdentifierPath","referencedDeclaration":1290,"src":"4333:16:11"},"referencedDeclaration":1290,"src":"4333:16:11","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState"}},"visibility":"internal"}],"src":"4332:31:11"},"scope":1554,"src":"4280:177:11","stateMutability":"pure","virtual":false,"visibility":"internal"}],"scope":1555,"src":"181:4279:11","usedErrors":[]}],"src":"33:4428:11"},"id":11},"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619],"WitnetBoardData":[1554],"WitnetBoardDataACLs":[1604]},"id":1605,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1556,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:12"},{"absolutePath":"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol","file":"./WitnetBoardData.sol","id":1557,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1605,"sourceUnit":1555,"src":"66:31:12","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":1559,"name":"WitnetBoardData","nodeType":"IdentifierPath","referencedDeclaration":1554,"src":"277:15:12"},"id":1560,"nodeType":"InheritanceSpecifier","src":"277:15:12"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":1558,"nodeType":"StructuredDocumentation","src":"99:125:12","text":"@title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\n @author The Witnet Foundation."},"fullyImplemented":true,"id":1604,"linearizedBaseContracts":[1604,1554],"name":"WitnetBoardDataACLs","nameLocation":"242:19:12","nodeType":"ContractDefinition","nodes":[{"constant":true,"id":1563,"mutability":"constant","name":"_WITNET_BOARD_ACLS_SLOTHASH","nameLocation":"325:27:12","nodeType":"VariableDeclaration","scope":1604,"src":"299:184:12","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1561,"name":"bytes32","nodeType":"ElementaryTypeName","src":"299:7:12","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"hexValue":"307861366462373236333938336633333762616532633966623331353733303232373936316431633131353361653165313061353662353739313436356464366664","id":1562,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"417:66:12","typeDescriptions":{"typeIdentifier":"t_rational_75471661856160408570928673711951733518742362877825705816872614868034342737661_by_1","typeString":"int_const 7547...(69 digits omitted)...7661"},"value":"0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd"},"visibility":"internal"},{"canonicalName":"WitnetBoardDataACLs.WitnetBoardACLs","id":1568,"members":[{"constant":false,"id":1567,"mutability":"mutable","name":"isReporter_","nameLocation":"549:11:12","nodeType":"VariableDeclaration","scope":1568,"src":"523:37:12","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":1566,"keyType":{"id":1564,"name":"address","nodeType":"ElementaryTypeName","src":"532:7:12","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"523:25:12","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueType":{"id":1565,"name":"bool","nodeType":"ElementaryTypeName","src":"543:4:12","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"internal"}],"name":"WitnetBoardACLs","nameLocation":"497:15:12","nodeType":"StructDefinition","scope":1604,"src":"490:77:12","visibility":"public"},{"body":{"id":1580,"nodeType":"Block","src":"587:55:12","statements":[{"expression":{"id":1578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1571,"name":"_acls","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1603,"src":"597:5:12","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardACLs_$1568_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer)"}},"id":1572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"597:7:12","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer"}},"id":1573,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isReporter_","nodeType":"MemberAccess","referencedDeclaration":1567,"src":"597:19:12","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":1576,"indexExpression":{"expression":{"id":1574,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"617:3:12","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1575,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"617:10:12","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"597:31:12","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":1577,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"631:4:12","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"597:38:12","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1579,"nodeType":"ExpressionStatement","src":"597:38:12"}]},"id":1581,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1569,"nodeType":"ParameterList","parameters":[],"src":"584:2:12"},"returnParameters":{"id":1570,"nodeType":"ParameterList","parameters":[],"src":"587:0:12"},"scope":1604,"src":"573:69:12","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":1594,"nodeType":"Block","src":"671:148:12","statements":[{"expression":{"arguments":[{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1584,"name":"_acls","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1603,"src":"702:5:12","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardACLs_$1568_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer)"}},"id":1585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"702:7:12","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer"}},"id":1586,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isReporter_","nodeType":"MemberAccess","referencedDeclaration":1567,"src":"702:19:12","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":1589,"indexExpression":{"expression":{"id":1587,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"722:3:12","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"722:10:12","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"702:31:12","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574426f6172644461746141434c733a20756e617574686f72697a6564207265706f72746572","id":1590,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"747:44:12","typeDescriptions":{"typeIdentifier":"t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1","typeString":"literal_string \"WitnetBoardDataACLs: unauthorized reporter\""},"value":"WitnetBoardDataACLs: unauthorized reporter"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1","typeString":"literal_string \"WitnetBoardDataACLs: unauthorized reporter\""}],"id":1583,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"681:7:12","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"681:120:12","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1592,"nodeType":"ExpressionStatement","src":"681:120:12"},{"id":1593,"nodeType":"PlaceholderStatement","src":"811:1:12"}]},"id":1595,"name":"onlyReporters","nameLocation":"657:13:12","nodeType":"ModifierDefinition","parameters":{"id":1582,"nodeType":"ParameterList","parameters":[],"src":"671:0:12"},"src":"648:171:12","virtual":false,"visibility":"internal"},{"body":{"id":1602,"nodeType":"Block","src":"1140:92:12","statements":[{"AST":{"nodeType":"YulBlock","src":"1159:67:12","statements":[{"nodeType":"YulAssignment","src":"1173:43:12","value":{"name":"_WITNET_BOARD_ACLS_SLOTHASH","nodeType":"YulIdentifier","src":"1189:27:12"},"variableNames":[{"name":"_struct.slot","nodeType":"YulIdentifier","src":"1173:12:12"}]}]},"evmVersion":"london","externalReferences":[{"declaration":1563,"isOffset":false,"isSlot":false,"src":"1189:27:12","valueSize":1},{"declaration":1599,"isOffset":false,"isSlot":true,"src":"1173:12:12","suffix":"slot","valueSize":1}],"id":1601,"nodeType":"InlineAssembly","src":"1150:76:12"}]},"id":1603,"implemented":true,"kind":"function","modifiers":[],"name":"_acls","nameLocation":"1076:5:12","nodeType":"FunctionDefinition","parameters":{"id":1596,"nodeType":"ParameterList","parameters":[],"src":"1081:2:12"},"returnParameters":{"id":1600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1599,"mutability":"mutable","name":"_struct","nameLocation":"1131:7:12","nodeType":"VariableDeclaration","scope":1603,"src":"1107:31:12","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs"},"typeName":{"id":1598,"nodeType":"UserDefinedTypeName","pathNode":{"id":1597,"name":"WitnetBoardACLs","nodeType":"IdentifierPath","referencedDeclaration":1568,"src":"1107:15:12"},"referencedDeclaration":1568,"src":"1107:15:12","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs"}},"visibility":"internal"}],"src":"1106:33:12"},"scope":1604,"src":"1067:165:12","stateMutability":"pure","virtual":false,"visibility":"internal"}],"scope":1605,"src":"224:1010:12","usedErrors":[]}],"src":"33:1202:12"},"id":12},"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol","exportedSymbols":{"Initializable":[7995],"Proxiable":[8160],"Upgradable":[8256],"WitnetProxy":[1816]},"id":1817,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1606,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:13"},{"id":1607,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:13"},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Upgradable.sol","file":"../patterns/Upgradable.sol","id":1608,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1817,"sourceUnit":8257,"src":"100:36:13","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":{"id":1609,"nodeType":"StructuredDocumentation","src":"138:240:13","text":"@title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \n `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \n @author The Witnet Foundation."},"fullyImplemented":true,"id":1816,"linearizedBaseContracts":[1816],"name":"WitnetProxy","nameLocation":"387:11:13","nodeType":"ContractDefinition","nodes":[{"canonicalName":"WitnetProxy.WitnetProxySlot","id":1612,"members":[{"constant":false,"id":1611,"mutability":"mutable","name":"implementation","nameLocation":"447:14:13","nodeType":"VariableDeclaration","scope":1612,"src":"439:22:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1610,"name":"address","nodeType":"ElementaryTypeName","src":"439:7:13","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"WitnetProxySlot","nameLocation":"413:15:13","nodeType":"StructDefinition","scope":1816,"src":"406:62:13","visibility":"public"},{"anonymous":false,"documentation":{"id":1613,"nodeType":"StructuredDocumentation","src":"474:61:13","text":"Event emitted every time the implementation gets updated."},"id":1617,"name":"Upgraded","nameLocation":"546:8:13","nodeType":"EventDefinition","parameters":{"id":1616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1615,"indexed":true,"mutability":"mutable","name":"implementation","nameLocation":"571:14:13","nodeType":"VariableDeclaration","scope":1617,"src":"555:30:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1614,"name":"address","nodeType":"ElementaryTypeName","src":"555:7:13","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"554:32:13"},"src":"540:47:13"},{"body":{"id":1621,"nodeType":"Block","src":"711:2:13","statements":[]},"documentation":{"id":1618,"nodeType":"StructuredDocumentation","src":"595:96:13","text":"Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470)."},"id":1622,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1619,"nodeType":"ParameterList","parameters":[],"src":"708:2:13"},"returnParameters":{"id":1620,"nodeType":"ParameterList","parameters":[],"src":"711:0:13"},"scope":1816,"src":"696:17:13","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":1630,"nodeType":"Block","src":"811:61:13","statements":[{"expression":{"arguments":[{"hexValue":"5769746e657450726f78793a206e6f207472616e7366657273206163636570746564","id":1627,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"828:36:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d","typeString":"literal_string \"WitnetProxy: no transfers accepted\""},"value":"WitnetProxy: no transfers accepted"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d","typeString":"literal_string \"WitnetProxy: no transfers accepted\""}],"id":1626,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"821:6:13","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":1628,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"821:44:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1629,"nodeType":"ExpressionStatement","src":"821:44:13"}]},"documentation":{"id":1623,"nodeType":"StructuredDocumentation","src":"719:60:13","text":"WitnetProxies will never accept direct transfer of ETHs."},"id":1631,"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1624,"nodeType":"ParameterList","parameters":[],"src":"791:2:13"},"returnParameters":{"id":1625,"nodeType":"ParameterList","parameters":[],"src":"811:0:13"},"scope":1816,"src":"784:88:13","stateMutability":"payable","virtual":false,"visibility":"external"},{"body":{"id":1641,"nodeType":"Block","src":"980:1003:13","statements":[{"assignments":[1636],"declarations":[{"constant":false,"id":1636,"mutability":"mutable","name":"_implementation","nameLocation":"1040:15:13","nodeType":"VariableDeclaration","scope":1641,"src":"1032:23:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1635,"name":"address","nodeType":"ElementaryTypeName","src":"1032:7:13","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1639,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":1637,"name":"implementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1653,"src":"1058:14:13","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":1638,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1058:16:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1032:42:13"},{"AST":{"nodeType":"YulBlock","src":"1094:883:13","statements":[{"nodeType":"YulVariableDeclaration","src":"1401:22:13","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1418:4:13","type":"","value":"0x40"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1412:5:13"},"nodeType":"YulFunctionCall","src":"1412:11:13"},"variables":[{"name":"ptr","nodeType":"YulTypedName","src":"1405:3:13","type":""}]},{"expression":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1449:3:13"},{"kind":"number","nodeType":"YulLiteral","src":"1454:1:13","type":"","value":"0"},{"arguments":[],"functionName":{"name":"calldatasize","nodeType":"YulIdentifier","src":"1457:12:13"},"nodeType":"YulFunctionCall","src":"1457:14:13"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"1436:12:13"},"nodeType":"YulFunctionCall","src":"1436:36:13"},"nodeType":"YulExpressionStatement","src":"1436:36:13"},{"nodeType":"YulVariableDeclaration","src":"1485:77:13","value":{"arguments":[{"arguments":[],"functionName":{"name":"gas","nodeType":"YulIdentifier","src":"1512:3:13"},"nodeType":"YulFunctionCall","src":"1512:5:13"},{"name":"_implementation","nodeType":"YulIdentifier","src":"1519:15:13"},{"name":"ptr","nodeType":"YulIdentifier","src":"1536:3:13"},{"arguments":[],"functionName":{"name":"calldatasize","nodeType":"YulIdentifier","src":"1541:12:13"},"nodeType":"YulFunctionCall","src":"1541:14:13"},{"kind":"number","nodeType":"YulLiteral","src":"1557:1:13","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1560:1:13","type":"","value":"0"}],"functionName":{"name":"delegatecall","nodeType":"YulIdentifier","src":"1499:12:13"},"nodeType":"YulFunctionCall","src":"1499:63:13"},"variables":[{"name":"result","nodeType":"YulTypedName","src":"1489:6:13","type":""}]},{"nodeType":"YulVariableDeclaration","src":"1575:28:13","value":{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"1587:14:13"},"nodeType":"YulFunctionCall","src":"1587:16:13"},"variables":[{"name":"size","nodeType":"YulTypedName","src":"1579:4:13","type":""}]},{"expression":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1631:3:13"},{"kind":"number","nodeType":"YulLiteral","src":"1636:1:13","type":"","value":"0"},{"name":"size","nodeType":"YulIdentifier","src":"1639:4:13"}],"functionName":{"name":"returndatacopy","nodeType":"YulIdentifier","src":"1616:14:13"},"nodeType":"YulFunctionCall","src":"1616:28:13"},"nodeType":"YulExpressionStatement","src":"1616:28:13"},{"cases":[{"body":{"nodeType":"YulBlock","src":"1695:108:13","statements":[{"expression":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1774:3:13"},{"name":"size","nodeType":"YulIdentifier","src":"1779:4:13"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1767:6:13"},"nodeType":"YulFunctionCall","src":"1767:17:13"},"nodeType":"YulExpressionStatement","src":"1767:17:13"}]},"nodeType":"YulCase","src":"1687:116:13","value":{"kind":"number","nodeType":"YulLiteral","src":"1692:1:13","type":"","value":"0"}},{"body":{"nodeType":"YulBlock","src":"1828:139:13","statements":[{"expression":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1938:3:13"},{"name":"size","nodeType":"YulIdentifier","src":"1943:4:13"}],"functionName":{"name":"return","nodeType":"YulIdentifier","src":"1931:6:13"},"nodeType":"YulFunctionCall","src":"1931:17:13"},"nodeType":"YulExpressionStatement","src":"1931:17:13"}]},"nodeType":"YulCase","src":"1820:147:13","value":"default"}],"expression":{"name":"result","nodeType":"YulIdentifier","src":"1664:6:13"},"nodeType":"YulSwitch","src":"1657:310:13"}]},"evmVersion":"london","externalReferences":[{"declaration":1636,"isOffset":false,"isSlot":false,"src":"1519:15:13","valueSize":1}],"id":1640,"nodeType":"InlineAssembly","src":"1085:892:13"}]},"documentation":{"id":1632,"nodeType":"StructuredDocumentation","src":"878:69:13","text":"Payable fallback accepts delegating calls to payable functions.  "},"id":1642,"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1633,"nodeType":"ParameterList","parameters":[],"src":"960:2:13"},"returnParameters":{"id":1634,"nodeType":"ParameterList","parameters":[],"src":"980:0:13"},"scope":1816,"src":"952:1031:13","stateMutability":"payable","virtual":false,"visibility":"external"},{"body":{"id":1652,"nodeType":"Block","src":"2101:51:13","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1648,"name":"_proxySlot","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1815,"src":"2118:10:13","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetProxySlot_$1612_storage_ptr_$","typeString":"function () pure returns (struct WitnetProxy.WitnetProxySlot storage pointer)"}},"id":1649,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2118:12:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetProxySlot_$1612_storage_ptr","typeString":"struct WitnetProxy.WitnetProxySlot storage pointer"}},"id":1650,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"implementation","nodeType":"MemberAccess","referencedDeclaration":1611,"src":"2118:27:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":1647,"id":1651,"nodeType":"Return","src":"2111:34:13"}]},"documentation":{"id":1643,"nodeType":"StructuredDocumentation","src":"1989:51:13","text":"Returns proxy's current implementation address."},"functionSelector":"5c60da1b","id":1653,"implemented":true,"kind":"function","modifiers":[],"name":"implementation","nameLocation":"2054:14:13","nodeType":"FunctionDefinition","parameters":{"id":1644,"nodeType":"ParameterList","parameters":[],"src":"2068:2:13"},"returnParameters":{"id":1647,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1646,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1653,"src":"2092:7:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1645,"name":"address","nodeType":"ElementaryTypeName","src":"2092:7:13","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2091:9:13"},"scope":1816,"src":"2045:107:13","stateMutability":"view","virtual":false,"visibility":"public"},{"body":{"id":1805,"nodeType":"Block","src":"2545:2290:13","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1664,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"2609:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1667,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2639:1:13","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":1666,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2631:7:13","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1665,"name":"address","nodeType":"ElementaryTypeName","src":"2631:7:13","typeDescriptions":{}}},"id":1668,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2631:10:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2609:32:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a206e756c6c20696d706c656d656e746174696f6e","id":1670,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2643:34:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a","typeString":"literal_string \"WitnetProxy: null implementation\""},"value":"WitnetProxy: null implementation"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a","typeString":"literal_string \"WitnetProxy: null implementation\""}],"id":1663,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2601:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2601:77:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1672,"nodeType":"ExpressionStatement","src":"2601:77:13"},{"assignments":[1674],"declarations":[{"constant":false,"id":1674,"mutability":"mutable","name":"_oldImplementation","nameLocation":"2697:18:13","nodeType":"VariableDeclaration","scope":1805,"src":"2689:26:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1673,"name":"address","nodeType":"ElementaryTypeName","src":"2689:7:13","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1677,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":1675,"name":"implementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1653,"src":"2718:14:13","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":1676,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2718:16:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2689:45:13"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1683,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1678,"name":"_oldImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1674,"src":"2748:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1681,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2778:1:13","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":1680,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2770:7:13","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1679,"name":"address","nodeType":"ElementaryTypeName","src":"2770:7:13","typeDescriptions":{}}},"id":1682,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2770:10:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2748:32:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1759,"nodeType":"IfStatement","src":"2744:1258:13","trueBody":{"id":1758,"nodeType":"Block","src":"2782:1220:13","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1687,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1685,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"2876:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":1686,"name":"_oldImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1674,"src":"2898:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2876:40:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a206e6f7468696e6720746f2075706772616465","id":1688,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2918:33:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084","typeString":"literal_string \"WitnetProxy: nothing to upgrade\""},"value":"WitnetProxy: nothing to upgrade"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084","typeString":"literal_string \"WitnetProxy: nothing to upgrade\""}],"id":1684,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2868:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2868:84:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1690,"nodeType":"ExpressionStatement","src":"2868:84:13"},{"clauses":[{"block":{"id":1704,"nodeType":"Block","src":"3128:86:13","statements":[{"expression":{"arguments":[{"id":1700,"name":"_isUpgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1697,"src":"3154:13:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a206e6f742075706772616461626c65","id":1701,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3169:29:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f","typeString":"literal_string \"WitnetProxy: not upgradable\""},"value":"WitnetProxy: not upgradable"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f","typeString":"literal_string \"WitnetProxy: not upgradable\""}],"id":1699,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3146:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3146:53:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1703,"nodeType":"ExpressionStatement","src":"3146:53:13"}]},"errorName":"","id":1705,"nodeType":"TryCatchClause","parameters":{"id":1698,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1697,"mutability":"mutable","name":"_isUpgradable","nameLocation":"3113:13:13","nodeType":"VariableDeclaration","scope":1705,"src":"3108:18:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1696,"name":"bool","nodeType":"ElementaryTypeName","src":"3108:4:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3107:20:13"},"src":"3099:115:13"},{"block":{"id":1710,"nodeType":"Block","src":"3221:85:13","statements":[{"expression":{"arguments":[{"hexValue":"5769746e657450726f78793a20756e61626c6520746f20636865636b207570677261646162696c697479","id":1707,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3246:44:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc","typeString":"literal_string \"WitnetProxy: unable to check upgradability\""},"value":"WitnetProxy: unable to check upgradability"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc","typeString":"literal_string \"WitnetProxy: unable to check upgradability\""}],"id":1706,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"3239:6:13","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":1708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3239:52:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1709,"nodeType":"ExpressionStatement","src":"3239:52:13"}]},"errorName":"","id":1711,"nodeType":"TryCatchClause","src":"3215:91:13"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":1692,"name":"_oldImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1674,"src":"3064:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1691,"name":"Upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8256,"src":"3053:10:13","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Upgradable_$8256_$","typeString":"type(contract Upgradable)"}},"id":1693,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3053:30:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Upgradable_$8256","typeString":"contract Upgradable"}},"id":1694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"isUpgradable","nodeType":"MemberAccess","referencedDeclaration":8249,"src":"3053:43:13","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bool_$","typeString":"function () view external returns (bool)"}},"id":1695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3053:45:13","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1712,"nodeType":"TryStatement","src":"3049:257:13"},{"assignments":[1714,1716],"declarations":[{"constant":false,"id":1714,"mutability":"mutable","name":"_wasCalled","nameLocation":"3421:10:13","nodeType":"VariableDeclaration","scope":1758,"src":"3416:15:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1713,"name":"bool","nodeType":"ElementaryTypeName","src":"3416:4:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":1716,"mutability":"mutable","name":"_result","nameLocation":"3446:7:13","nodeType":"VariableDeclaration","scope":1758,"src":"3433:20:13","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":1715,"name":"bytes","nodeType":"ElementaryTypeName","src":"3433:5:13","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":1726,"initialValue":{"arguments":[{"arguments":[{"hexValue":"697355706772616461626c6546726f6d286164647265737329","id":1721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3551:27:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_6b58960af5008b519145bb1cb07a67ee0927d8e642573c92f5babc4d0c2721d7","typeString":"literal_string \"isUpgradableFrom(address)\""},"value":"isUpgradableFrom(address)"},{"expression":{"id":1722,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3600:3:13","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"3600:10:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_6b58960af5008b519145bb1cb07a67ee0927d8e642573c92f5babc4d0c2721d7","typeString":"literal_string \"isUpgradableFrom(address)\""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":1719,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3506:3:13","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":1720,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodeWithSignature","nodeType":"MemberAccess","src":"3506:23:13","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$","typeString":"function (string memory) pure returns (bytes memory)"}},"id":1724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3506:122:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":1717,"name":"_oldImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1674,"src":"3457:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"delegatecall","nodeType":"MemberAccess","src":"3457:31:13","typeDescriptions":{"typeIdentifier":"t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) returns (bool,bytes memory)"}},"id":1725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3457:185:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"3415:227:13"},{"expression":{"arguments":[{"id":1728,"name":"_wasCalled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1714,"src":"3664:10:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a206e6f7420636f6d706c69616e74","id":1729,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3676:28:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65","typeString":"literal_string \"WitnetProxy: not compliant\""},"value":"WitnetProxy: not compliant"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65","typeString":"literal_string \"WitnetProxy: not compliant\""}],"id":1727,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3656:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1730,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3656:49:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1731,"nodeType":"ExpressionStatement","src":"3656:49:13"},{"expression":{"arguments":[{"arguments":[{"id":1735,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1716,"src":"3738:7:13","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":1737,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3748:4:13","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":1736,"name":"bool","nodeType":"ElementaryTypeName","src":"3748:4:13","typeDescriptions":{}}}],"id":1738,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"3747:6:13","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}],"expression":{"id":1733,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3727:3:13","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":1734,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"decode","nodeType":"MemberAccess","src":"3727:10:13","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":1739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3727:27:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a206e6f7420617574686f72697a6564","id":1740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3756:29:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2","typeString":"literal_string \"WitnetProxy: not authorized\""},"value":"WitnetProxy: not authorized"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2","typeString":"literal_string \"WitnetProxy: not authorized\""}],"id":1732,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3719:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1741,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3719:67:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1742,"nodeType":"ExpressionStatement","src":"3719:67:13"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":1754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":1745,"name":"_oldImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1674,"src":"3836:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1744,"name":"Upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8256,"src":"3825:10:13","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Upgradable_$8256_$","typeString":"type(contract Upgradable)"}},"id":1746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3825:30:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Upgradable_$8256","typeString":"contract Upgradable"}},"id":1747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"proxiableUUID","nodeType":"MemberAccess","referencedDeclaration":8159,"src":"3825:44:13","typeDescriptions":{"typeIdentifier":"t_function_external_pure$__$returns$_t_bytes32_$","typeString":"function () pure external returns (bytes32)"}},"id":1748,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3825:46:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":1750,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"3886:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1749,"name":"Upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8256,"src":"3875:10:13","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Upgradable_$8256_$","typeString":"type(contract Upgradable)"}},"id":1751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3875:30:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Upgradable_$8256","typeString":"contract Upgradable"}},"id":1752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"proxiableUUID","nodeType":"MemberAccess","referencedDeclaration":8159,"src":"3875:44:13","typeDescriptions":{"typeIdentifier":"t_function_external_pure$__$returns$_t_bytes32_$","typeString":"function () pure external returns (bytes32)"}},"id":1753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3875:46:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3825:96:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a2070726f786961626c655555494473206d69736d61746368","id":1755,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3939:38:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8","typeString":"literal_string \"WitnetProxy: proxiableUUIDs mismatch\""},"value":"WitnetProxy: proxiableUUIDs mismatch"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8","typeString":"literal_string \"WitnetProxy: proxiableUUIDs mismatch\""}],"id":1743,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3800:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1756,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3800:191:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1757,"nodeType":"ExpressionStatement","src":"3800:191:13"}]}},{"assignments":[1761,null],"declarations":[{"constant":false,"id":1761,"mutability":"mutable","name":"_wasInitialized","nameLocation":"4089:15:13","nodeType":"VariableDeclaration","scope":1805,"src":"4084:20:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1760,"name":"bool","nodeType":"ElementaryTypeName","src":"4084:4:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":1770,"initialValue":{"arguments":[{"arguments":[{"hexValue":"696e697469616c697a6528627974657329","id":1766,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4195:19:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_439fab91f8ccf5be59586b9cf7bb7786c67a661a95ce1cfc146c1ed62922ae26","typeString":"literal_string \"initialize(bytes)\""},"value":"initialize(bytes)"},{"id":1767,"name":"_initData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1658,"src":"4232:9:13","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_439fab91f8ccf5be59586b9cf7bb7786c67a661a95ce1cfc146c1ed62922ae26","typeString":"literal_string \"initialize(bytes)\""},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":1764,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4154:3:13","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":1765,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodeWithSignature","nodeType":"MemberAccess","src":"4154:23:13","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithsignature_pure$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$","typeString":"function (string memory) pure returns (bytes memory)"}},"id":1768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4154:101:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":1762,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"4109:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1763,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"delegatecall","nodeType":"MemberAccess","src":"4109:31:13","typeDescriptions":{"typeIdentifier":"t_function_baredelegatecall_nonpayable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) returns (bool,bytes memory)"}},"id":1769,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4109:156:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"4083:182:13"},{"expression":{"arguments":[{"id":1772,"name":"_wasInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1761,"src":"4283:15:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657450726f78793a20756e61626c6520746f20696e697469616c697a65","id":1773,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4300:35:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c","typeString":"literal_string \"WitnetProxy: unable to initialize\""},"value":"WitnetProxy: unable to initialize"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c","typeString":"literal_string \"WitnetProxy: unable to initialize\""}],"id":1771,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4275:7:13","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1774,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4275:61:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1775,"nodeType":"ExpressionStatement","src":"4275:61:13"},{"expression":{"id":1780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1776,"name":"_proxySlot","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1815,"src":"4428:10:13","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetProxySlot_$1612_storage_ptr_$","typeString":"function () pure returns (struct WitnetProxy.WitnetProxySlot storage pointer)"}},"id":1777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4428:12:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetProxySlot_$1612_storage_ptr","typeString":"struct WitnetProxy.WitnetProxySlot storage pointer"}},"id":1778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"implementation","nodeType":"MemberAccess","referencedDeclaration":1611,"src":"4428:27:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1779,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"4458:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4428:48:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1781,"nodeType":"ExpressionStatement","src":"4428:48:13"},{"eventCall":{"arguments":[{"id":1783,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"4500:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1782,"name":"Upgraded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1617,"src":"4491:8:13","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":1784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4491:28:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1785,"nodeType":"EmitStatement","src":"4486:33:13"},{"clauses":[{"block":{"id":1796,"nodeType":"Block","src":"4707:45:13","statements":[{"expression":{"id":1794,"name":"_isUpgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1792,"src":"4728:13:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":1662,"id":1795,"nodeType":"Return","src":"4721:20:13"}]},"errorName":"","id":1797,"nodeType":"TryCatchClause","parameters":{"id":1793,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1792,"mutability":"mutable","name":"_isUpgradable","nameLocation":"4692:13:13","nodeType":"VariableDeclaration","scope":1797,"src":"4687:18:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1791,"name":"bool","nodeType":"ElementaryTypeName","src":"4687:4:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4686:20:13"},"src":"4678:74:13"},{"block":{"id":1802,"nodeType":"Block","src":"4767:62:13","statements":[{"expression":{"arguments":[{"hexValue":"5769746e657450726f78793a206e6f7420636f6d706c69616e74","id":1799,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4789:28:13","typeDescriptions":{"typeIdentifier":"t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65","typeString":"literal_string \"WitnetProxy: not compliant\""},"value":"WitnetProxy: not compliant"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65","typeString":"literal_string \"WitnetProxy: not compliant\""}],"id":1798,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"4781:6:13","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":1800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4781:37:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1801,"nodeType":"ExpressionStatement","src":"4781:37:13"}]},"errorName":"","id":1803,"nodeType":"TryCatchClause","src":"4761:68:13"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":1787,"name":"_newImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1656,"src":"4643:18:13","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":1786,"name":"Upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8256,"src":"4632:10:13","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Upgradable_$8256_$","typeString":"type(contract Upgradable)"}},"id":1788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4632:30:13","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Upgradable_$8256","typeString":"contract Upgradable"}},"id":1789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"isUpgradable","nodeType":"MemberAccess","referencedDeclaration":8249,"src":"4632:43:13","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bool_$","typeString":"function () view external returns (bool)"}},"id":1790,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4632:45:13","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1804,"nodeType":"TryStatement","src":"4628:201:13"}]},"documentation":{"id":1654,"nodeType":"StructuredDocumentation","src":"2158:277:13","text":"Upgrades the `implementation` address.\n @param _newImplementation New implementation address.\n @param _initData Raw data with which new implementation will be initialized.\n @return Returns whether new implementation would be further upgradable, or not."},"functionSelector":"6fbc15e9","id":1806,"implemented":true,"kind":"function","modifiers":[],"name":"upgradeTo","nameLocation":"2449:9:13","nodeType":"FunctionDefinition","parameters":{"id":1659,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1656,"mutability":"mutable","name":"_newImplementation","nameLocation":"2467:18:13","nodeType":"VariableDeclaration","scope":1806,"src":"2459:26:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1655,"name":"address","nodeType":"ElementaryTypeName","src":"2459:7:13","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1658,"mutability":"mutable","name":"_initData","nameLocation":"2500:9:13","nodeType":"VariableDeclaration","scope":1806,"src":"2487:22:13","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":1657,"name":"bytes","nodeType":"ElementaryTypeName","src":"2487:5:13","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2458:52:13"},"returnParameters":{"id":1662,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1661,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1806,"src":"2535:4:13","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1660,"name":"bool","nodeType":"ElementaryTypeName","src":"2535:4:13","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2534:6:13"},"scope":1816,"src":"2440:2395:13","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"body":{"id":1814,"nodeType":"Block","src":"5030:208:13","statements":[{"AST":{"nodeType":"YulBlock","src":"5049:183:13","statements":[{"nodeType":"YulAssignment","src":"5142:80:13","value":{"kind":"number","nodeType":"YulLiteral","src":"5156:66:13","type":"","value":"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc"},"variableNames":[{"name":"_slot.slot","nodeType":"YulIdentifier","src":"5142:10:13"}]}]},"evmVersion":"london","externalReferences":[{"declaration":1811,"isOffset":false,"isSlot":true,"src":"5142:10:13","suffix":"slot","valueSize":1}],"id":1813,"nodeType":"InlineAssembly","src":"5040:192:13"}]},"documentation":{"id":1807,"nodeType":"StructuredDocumentation","src":"4841:109:13","text":"@dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address."},"id":1815,"implemented":true,"kind":"function","modifiers":[],"name":"_proxySlot","nameLocation":"4964:10:13","nodeType":"FunctionDefinition","parameters":{"id":1808,"nodeType":"ParameterList","parameters":[],"src":"4974:2:13"},"returnParameters":{"id":1812,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1811,"mutability":"mutable","name":"_slot","nameLocation":"5023:5:13","nodeType":"VariableDeclaration","scope":1815,"src":"4999:29:13","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetProxySlot_$1612_storage_ptr","typeString":"struct WitnetProxy.WitnetProxySlot"},"typeName":{"id":1810,"nodeType":"UserDefinedTypeName","pathNode":{"id":1809,"name":"WitnetProxySlot","nodeType":"IdentifierPath","referencedDeclaration":1612,"src":"4999:15:13"},"referencedDeclaration":1612,"src":"4999:15:13","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetProxySlot_$1612_storage_ptr","typeString":"struct WitnetProxy.WitnetProxySlot"}},"visibility":"internal"}],"src":"4998:31:13"},"scope":1816,"src":"4955:283:13","stateMutability":"pure","virtual":false,"visibility":"private"}],"scope":1817,"src":"378:4863:13","usedErrors":[]}],"src":"33:5209:13"},"id":13},"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol","exportedSymbols":{"IWitnetRequest":[3829],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Proxiable":[8160],"Upgradable":[8256],"Witnet":[4619],"WitnetProxy":[1816],"WitnetRequestBoard":[481],"WitnetRequestBoardUpgradableBase":[1878]},"id":1879,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1818,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:14"},{"id":1819,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:14"},{"absolutePath":"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol","file":"../WitnetRequestBoard.sol","id":1820,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1879,"sourceUnit":482,"src":"160:35:14","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Proxiable.sol","file":"../patterns/Proxiable.sol","id":1821,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1879,"sourceUnit":8161,"src":"196:35:14","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Upgradable.sol","file":"../patterns/Upgradable.sol","id":1822,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1879,"sourceUnit":8257,"src":"232:36:14","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol","file":"./WitnetProxy.sol","id":1823,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":1879,"sourceUnit":1817,"src":"307:27:14","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":1825,"name":"Proxiable","nodeType":"IdentifierPath","referencedDeclaration":8160,"src":"529:9:14"},"id":1826,"nodeType":"InheritanceSpecifier","src":"529:9:14"},{"baseName":{"id":1827,"name":"Upgradable","nodeType":"IdentifierPath","referencedDeclaration":8256,"src":"548:10:14"},"id":1828,"nodeType":"InheritanceSpecifier","src":"548:10:14"},{"baseName":{"id":1829,"name":"WitnetRequestBoard","nodeType":"IdentifierPath","referencedDeclaration":481,"src":"568:18:14"},"id":1830,"nodeType":"InheritanceSpecifier","src":"568:18:14"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":1824,"nodeType":"StructuredDocumentation","src":"336:127:14","text":"@title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":1878,"linearizedBaseContracts":[1878,481,4284,4106,3993,3963,3912,8256,8160,7995],"name":"WitnetRequestBoardUpgradableBase","nameLocation":"481:32:14","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":1832,"mutability":"immutable","name":"_VERSION","nameLocation":"620:8:14","nodeType":"VariableDeclaration","scope":1878,"src":"593:35:14","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1831,"name":"bytes32","nodeType":"ElementaryTypeName","src":"593:7:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"body":{"id":1846,"nodeType":"Block","src":"756:39:14","statements":[{"expression":{"id":1844,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1842,"name":"_VERSION","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1832,"src":"766:8:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1843,"name":"_versionTag","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1836,"src":"777:11:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"766:22:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":1845,"nodeType":"ExpressionStatement","src":"766:22:14"}]},"id":1847,"implemented":true,"kind":"constructor","modifiers":[{"arguments":[{"id":1839,"name":"_upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1834,"src":"739:11:14","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":1840,"kind":"baseConstructorSpecifier","modifierName":{"id":1838,"name":"Upgradable","nodeType":"IdentifierPath","referencedDeclaration":8256,"src":"728:10:14"},"nodeType":"ModifierInvocation","src":"728:23:14"}],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1837,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1834,"mutability":"mutable","name":"_upgradable","nameLocation":"665:11:14","nodeType":"VariableDeclaration","scope":1847,"src":"660:16:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1833,"name":"bool","nodeType":"ElementaryTypeName","src":"660:4:14","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":1836,"mutability":"mutable","name":"_versionTag","nameLocation":"698:11:14","nodeType":"VariableDeclaration","scope":1847,"src":"690:19:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1835,"name":"bytes32","nodeType":"ElementaryTypeName","src":"690:7:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"646:73:14"},"returnParameters":{"id":1841,"nodeType":"ParameterList","parameters":[],"src":"756:0:14"},"scope":1878,"src":"635:160:14","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":1855,"nodeType":"Block","src":"895:76:14","statements":[{"expression":{"arguments":[{"hexValue":"5769746e657452657175657374426f61726455706772616461626c65426173653a206e6f7420696d706c656d656e746564","id":1852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"912:51:14","typeDescriptions":{"typeIdentifier":"t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094","typeString":"literal_string \"WitnetRequestBoardUpgradableBase: not implemented\""},"value":"WitnetRequestBoardUpgradableBase: not implemented"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094","typeString":"literal_string \"WitnetRequestBoardUpgradableBase: not implemented\""}],"id":1851,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"905:6:14","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":1853,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"905:59:14","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1854,"nodeType":"ExpressionStatement","src":"905:59:14"}]},"documentation":{"id":1848,"nodeType":"StructuredDocumentation","src":"801:61:14","text":"@dev Reverts if proxy delegatecalls to unexistent method."},"id":1856,"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1849,"nodeType":"ParameterList","parameters":[],"src":"875:2:14"},"returnParameters":{"id":1850,"nodeType":"ParameterList","parameters":[],"src":"895:0:14"},"scope":1878,"src":"867:104:14","stateMutability":"payable","virtual":false,"visibility":"external"},{"baseFunctions":[8159],"body":{"id":1866,"nodeType":"Block","src":"1561:171:14","statements":[{"expression":{"components":[{"hexValue":"307839393639633661666634313163356535663038303735303036393365386638313963653838353239363135636661366361623536396232343738386131303138","id":1863,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1649:66:14","typeDescriptions":{"typeIdentifier":"t_rational_69390756064512329630361390616420164850804969538608511277072710346237241069592_by_1","typeString":"int_const 6939...(69 digits omitted)...9592"},"value":"0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018"}],"id":1864,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"1578:147:14","typeDescriptions":{"typeIdentifier":"t_rational_69390756064512329630361390616420164850804969538608511277072710346237241069592_by_1","typeString":"int_const 6939...(69 digits omitted)...9592"}},"functionReturnParameters":1862,"id":1865,"nodeType":"Return","src":"1571:154:14"}]},"documentation":{"id":1857,"nodeType":"StructuredDocumentation","src":"1218:272:14","text":"@dev Gets immutable \"heritage blood line\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\n      If implemented as an Upgradable touch, upgrading this contract to another one with a different \n      `proxiableUUID()` value should fail."},"functionSelector":"52d1902d","id":1867,"implemented":true,"kind":"function","modifiers":[],"name":"proxiableUUID","nameLocation":"1504:13:14","nodeType":"FunctionDefinition","overrides":{"id":1859,"nodeType":"OverrideSpecifier","overrides":[],"src":"1534:8:14"},"parameters":{"id":1858,"nodeType":"ParameterList","parameters":[],"src":"1517:2:14"},"returnParameters":{"id":1862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1861,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1867,"src":"1552:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1860,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1552:7:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1551:9:14"},"scope":1878,"src":"1495:237:14","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[8255],"body":{"id":1876,"nodeType":"Block","src":"2113:32:14","statements":[{"expression":{"id":1874,"name":"_VERSION","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1832,"src":"2130:8:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":1873,"id":1875,"nodeType":"Return","src":"2123:15:14"}]},"documentation":{"id":1868,"nodeType":"StructuredDocumentation","src":"1983:67:14","text":"Retrieves human-readable version tag of current implementation."},"functionSelector":"54fd4d50","id":1877,"implemented":true,"kind":"function","modifiers":[],"name":"version","nameLocation":"2064:7:14","nodeType":"FunctionDefinition","overrides":{"id":1870,"nodeType":"OverrideSpecifier","overrides":[],"src":"2086:8:14"},"parameters":{"id":1869,"nodeType":"ParameterList","parameters":[],"src":"2071:2:14"},"returnParameters":{"id":1873,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1872,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1877,"src":"2104:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1871,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2104:7:14","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2103:9:14"},"scope":1878,"src":"2055:90:14","stateMutability":"view","virtual":false,"visibility":"public"}],"scope":1879,"src":"463:1685:14","usedErrors":[]}],"src":"33:2116:14"},"id":14},"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol","exportedSymbols":{"IERC20":[3611],"IWitnetRequest":[3829],"IWitnetRequestBoardAdmin":[3851],"IWitnetRequestBoardAdminACLs":[3887],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Payable":[8151],"Proxiable":[8160],"Upgradable":[8256],"Witnet":[4619],"WitnetBoardData":[1554],"WitnetBoardDataACLs":[1604],"WitnetBuffer":[5261],"WitnetDecoderLib":[6386],"WitnetParserLib":[7528],"WitnetProxy":[1816],"WitnetRequestBoard":[481],"WitnetRequestBoardTrustableBase":[3416],"WitnetRequestBoardUpgradableBase":[1878]},"id":3417,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":1880,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:15"},{"id":1881,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:15"},{"absolutePath":"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol","file":"../WitnetRequestBoardUpgradableBase.sol","id":1882,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3417,"sourceUnit":1879,"src":"100:49:15","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol","file":"../../data/WitnetBoardDataACLs.sol","id":1883,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3417,"sourceUnit":1605,"src":"150:44:15","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol","file":"../../interfaces/IWitnetRequestBoardAdmin.sol","id":1884,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3417,"sourceUnit":3852,"src":"195:55:15","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol","file":"../../interfaces/IWitnetRequestBoardAdminACLs.sol","id":1885,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3417,"sourceUnit":3888,"src":"251:59:15","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol","file":"../../libs/WitnetParserLib.sol","id":1886,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3417,"sourceUnit":7529,"src":"311:40:15","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Payable.sol","file":"../../patterns/Payable.sol","id":1887,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3417,"sourceUnit":8152,"src":"352:36:15","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":1889,"name":"Payable","nodeType":"IdentifierPath","referencedDeclaration":8151,"src":"842:7:15"},"id":1890,"nodeType":"InheritanceSpecifier","src":"842:7:15"},{"baseName":{"id":1891,"name":"IWitnetRequestBoardAdmin","nodeType":"IdentifierPath","referencedDeclaration":3851,"src":"859:24:15"},"id":1892,"nodeType":"InheritanceSpecifier","src":"859:24:15"},{"baseName":{"id":1893,"name":"IWitnetRequestBoardAdminACLs","nodeType":"IdentifierPath","referencedDeclaration":3887,"src":"893:28:15"},"id":1894,"nodeType":"InheritanceSpecifier","src":"893:28:15"},{"baseName":{"id":1895,"name":"WitnetBoardDataACLs","nodeType":"IdentifierPath","referencedDeclaration":1604,"src":"939:19:15"},"id":1896,"nodeType":"InheritanceSpecifier","src":"939:19:15"},{"baseName":{"id":1897,"name":"WitnetRequestBoardUpgradableBase","nodeType":"IdentifierPath","referencedDeclaration":1878,"src":"968:32:15"},"id":1898,"nodeType":"InheritanceSpecifier","src":"968:32:15"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":1888,"nodeType":"StructuredDocumentation","src":"390:386:15","text":"@title Witnet Request Board \"trustable\" base implementation contract.\n @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\n @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\n The result of the requests will be posted back to this contract by the bridge nodes too.\n @author The Witnet Foundation"},"fullyImplemented":false,"id":3416,"linearizedBaseContracts":[3416,1878,481,4284,4106,3993,3963,3912,8256,8160,7995,1604,1554,3887,3851,8151],"name":"WitnetRequestBoardTrustableBase","nameLocation":"794:31:15","nodeType":"ContractDefinition","nodes":[{"id":1901,"libraryName":{"id":1899,"name":"Witnet","nodeType":"IdentifierPath","referencedDeclaration":4619,"src":"1021:6:15"},"nodeType":"UsingForDirective","src":"1015:23:15","typeName":{"id":1900,"name":"bytes","nodeType":"ElementaryTypeName","src":"1032:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},{"id":1905,"libraryName":{"id":1902,"name":"WitnetParserLib","nodeType":"IdentifierPath","referencedDeclaration":7528,"src":"1049:15:15"},"nodeType":"UsingForDirective","src":"1043:40:15","typeName":{"id":1904,"nodeType":"UserDefinedTypeName","pathNode":{"id":1903,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1069:13:15"},"referencedDeclaration":4342,"src":"1069:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}}},{"body":{"id":1921,"nodeType":"Block","src":"1261:2:15","statements":[]},"id":1922,"implemented":true,"kind":"constructor","modifiers":[{"arguments":[{"id":1914,"name":"_currency","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1911,"src":"1179:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":1915,"kind":"baseConstructorSpecifier","modifierName":{"id":1913,"name":"Payable","nodeType":"IdentifierPath","referencedDeclaration":8151,"src":"1171:7:15"},"nodeType":"ModifierInvocation","src":"1171:18:15"},{"arguments":[{"id":1917,"name":"_upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1907,"src":"1231:11:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"id":1918,"name":"_versionTag","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1909,"src":"1244:11:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"id":1919,"kind":"baseConstructorSpecifier","modifierName":{"id":1916,"name":"WitnetRequestBoardUpgradableBase","nodeType":"IdentifierPath","referencedDeclaration":1878,"src":"1198:32:15"},"nodeType":"ModifierInvocation","src":"1198:58:15"}],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":1912,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1907,"mutability":"mutable","name":"_upgradable","nameLocation":"1110:11:15","nodeType":"VariableDeclaration","scope":1922,"src":"1105:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1906,"name":"bool","nodeType":"ElementaryTypeName","src":"1105:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":1909,"mutability":"mutable","name":"_versionTag","nameLocation":"1131:11:15","nodeType":"VariableDeclaration","scope":1922,"src":"1123:19:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":1908,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1123:7:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":1911,"mutability":"mutable","name":"_currency","nameLocation":"1152:9:15","nodeType":"VariableDeclaration","scope":1922,"src":"1144:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1910,"name":"address","nodeType":"ElementaryTypeName","src":"1144:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1104:58:15"},"returnParameters":{"id":1920,"nodeType":"ParameterList","parameters":[],"src":"1261:0:15"},"scope":3416,"src":"1093:170:15","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"baseFunctions":[7994],"body":{"id":2012,"nodeType":"Block","src":"1726:802:15","statements":[{"assignments":[1930],"declarations":[{"constant":false,"id":1930,"mutability":"mutable","name":"_owner","nameLocation":"1744:6:15","nodeType":"VariableDeclaration","scope":2012,"src":"1736:14:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1929,"name":"address","nodeType":"ElementaryTypeName","src":"1736:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":1934,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1931,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"1753:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1932,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1753:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1933,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"1753:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1736:31:15"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":1935,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1930,"src":"1781:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":1938,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1799:1:15","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":1937,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1791:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1936,"name":"address","nodeType":"ElementaryTypeName","src":"1791:7:15","typeDescriptions":{}}},"id":1939,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1791:10:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1781:20:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":1961,"nodeType":"Block","src":"1931:143:15","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":1954,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1995:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"1995:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":1956,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1930,"src":"2009:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1995:20:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206f6e6c79206f776e6572","id":1958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2017:45:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d","typeString":"literal_string \"WitnetRequestBoardTrustableBase: only owner\""},"value":"WitnetRequestBoardTrustableBase: only owner"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d","typeString":"literal_string \"WitnetRequestBoardTrustableBase: only owner\""}],"id":1953,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1987:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1959,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1987:76:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1960,"nodeType":"ExpressionStatement","src":"1987:76:15"}]},"id":1962,"nodeType":"IfStatement","src":"1777:297:15","trueBody":{"id":1952,"nodeType":"Block","src":"1803:122:15","statements":[{"expression":{"id":1944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":1941,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1930,"src":"1858:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":1942,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1867:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"1867:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1858:19:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1945,"nodeType":"ExpressionStatement","src":"1858:19:15"},{"expression":{"id":1950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1946,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"1891:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1947,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1891:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1948,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"1891:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":1949,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1930,"src":"1908:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1891:23:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1951,"nodeType":"ExpressionStatement","src":"1891:23:15"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1963,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"2096:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1964,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2096:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1965,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"base","nodeType":"MemberAccess","referencedDeclaration":1280,"src":"2096:13:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":1968,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2121:1:15","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":1967,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2113:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":1966,"name":"address","nodeType":"ElementaryTypeName","src":"2113:7:15","typeDescriptions":{}}},"id":1969,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2113:10:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2096:27:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":1982,"nodeType":"IfStatement","src":"2092:222:15","trueBody":{"id":1981,"nodeType":"Block","src":"2125:189:15","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":1977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1972,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"2223:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1973,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2223:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1974,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"base","nodeType":"MemberAccess","referencedDeclaration":1280,"src":"2223:13:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":1975,"name":"base","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8231,"src":"2240:4:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":1976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2240:6:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2223:23:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a20616c726561647920696e697469616c697a6564","id":1978,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2248:54:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b","typeString":"literal_string \"WitnetRequestBoardTrustableBase: already initialized\""},"value":"WitnetRequestBoardTrustableBase: already initialized"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b","typeString":"literal_string \"WitnetRequestBoardTrustableBase: already initialized\""}],"id":1971,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2215:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":1979,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2215:88:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":1980,"nodeType":"ExpressionStatement","src":"2215:88:15"}]}},{"expression":{"id":1988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":1983,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"2331:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":1984,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2331:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":1985,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"base","nodeType":"MemberAccess","referencedDeclaration":1280,"src":"2331:13:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"id":1986,"name":"base","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8231,"src":"2347:4:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":1987,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2347:6:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2331:22:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":1989,"nodeType":"ExpressionStatement","src":"2331:22:15"},{"eventCall":{"arguments":[{"expression":{"id":1991,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2378:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":1992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"2378:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":1993,"name":"base","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8231,"src":"2390:4:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":1994,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2390:6:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":1995,"name":"codehash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8240,"src":"2398:8:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_bytes32_$","typeString":"function () view returns (bytes32)"}},"id":1996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2398:10:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[],"expression":{"argumentTypes":[],"id":1997,"name":"version","nodeType":"Identifier","overloadedDeclarations":[1877],"referencedDeclaration":1877,"src":"2410:7:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_bytes32_$","typeString":"function () view returns (bytes32)"}},"id":1998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2410:9:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":1990,"name":"Upgraded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8185,"src":"2369:8:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (address,address,bytes32,bytes32)"}},"id":1999,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2369:51:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2000,"nodeType":"EmitStatement","src":"2364:56:15"},{"expression":{"arguments":[{"arguments":[{"id":2004,"name":"_initData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1925,"src":"2497:9:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":2006,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2509:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2005,"name":"address","nodeType":"ElementaryTypeName","src":"2509:7:15","typeDescriptions":{}}},"id":2007,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"2509:9:15","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"type(address[] memory)"}}],"id":2008,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"2508:11:15","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"type(address[] memory)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"type(address[] memory)"}],"expression":{"id":2002,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2486:3:15","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2003,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"decode","nodeType":"MemberAccess","src":"2486:10:15","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":2009,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2486:34:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":2001,"name":"setReporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2139,"src":"2473:12:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":2010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2473:48:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2011,"nodeType":"ExpressionStatement","src":"2473:48:15"}]},"documentation":{"id":1923,"nodeType":"StructuredDocumentation","src":"1511:140:15","text":"Initialize storage-context when invoked as delegatecall. \n @dev Must fail when trying to initialize same instance more than once."},"functionSelector":"439fab91","id":2013,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"1665:10:15","nodeType":"FunctionDefinition","overrides":{"id":1927,"nodeType":"OverrideSpecifier","overrides":[],"src":"1717:8:15"},"parameters":{"id":1926,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1925,"mutability":"mutable","name":"_initData","nameLocation":"1689:9:15","nodeType":"VariableDeclaration","scope":2013,"src":"1676:22:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":1924,"name":"bytes","nodeType":"ElementaryTypeName","src":"1676:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1675:24:15"},"returnParameters":{"id":1928,"nodeType":"ParameterList","parameters":[],"src":"1726:0:15"},"scope":3416,"src":"1656:872:15","stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"baseFunctions":[8222],"body":{"id":2036,"nodeType":"Block","src":"2691:226:15","statements":[{"assignments":[2023],"declarations":[{"constant":false,"id":2023,"mutability":"mutable","name":"_owner","nameLocation":"2709:6:15","nodeType":"VariableDeclaration","scope":2036,"src":"2701:14:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2022,"name":"address","nodeType":"ElementaryTypeName","src":"2701:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":2027,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2024,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"2718:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2718:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2026,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"2718:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2701:31:15"},{"expression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":2033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":2028,"name":"isUpgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8249,"src":"2851:12:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_bool_$","typeString":"function () view returns (bool)"}},"id":2029,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2851:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2032,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2030,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2023,"src":"2885:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":2031,"name":"_from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2016,"src":"2895:5:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2885:15:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2851:49:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":2034,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2749:161:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":2021,"id":2035,"nodeType":"Return","src":"2742:168:15"}]},"documentation":{"id":2014,"nodeType":"StructuredDocumentation","src":"2534:73:15","text":"Tells whether provided address could eventually upgrade the contract."},"functionSelector":"6b58960a","id":2037,"implemented":true,"kind":"function","modifiers":[],"name":"isUpgradableFrom","nameLocation":"2621:16:15","nodeType":"FunctionDefinition","overrides":{"id":2018,"nodeType":"OverrideSpecifier","overrides":[],"src":"2667:8:15"},"parameters":{"id":2017,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2016,"mutability":"mutable","name":"_from","nameLocation":"2646:5:15","nodeType":"VariableDeclaration","scope":2037,"src":"2638:13:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2015,"name":"address","nodeType":"ElementaryTypeName","src":"2638:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2637:15:15"},"returnParameters":{"id":2021,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2020,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2037,"src":"2685:4:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2019,"name":"bool","nodeType":"ElementaryTypeName","src":"2685:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2684:6:15"},"scope":3416,"src":"2612:305:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[3844],"body":{"id":2048,"nodeType":"Block","src":"3283:38:15","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2044,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"3300:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3300:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2046,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"3300:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":2043,"id":2047,"nodeType":"Return","src":"3293:21:15"}]},"documentation":{"id":2038,"nodeType":"StructuredDocumentation","src":"3165:29:15","text":"Gets admin/owner address."},"functionSelector":"8da5cb5b","id":2049,"implemented":true,"kind":"function","modifiers":[],"name":"owner","nameLocation":"3208:5:15","nodeType":"FunctionDefinition","overrides":{"id":2040,"nodeType":"OverrideSpecifier","overrides":[],"src":"3244:8:15"},"parameters":{"id":2039,"nodeType":"ParameterList","parameters":[],"src":"3213:2:15"},"returnParameters":{"id":2043,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2042,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2049,"src":"3270:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2041,"name":"address","nodeType":"ElementaryTypeName","src":"3270:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3269:9:15"},"scope":3416,"src":"3199:122:15","stateMutability":"view","virtual":false,"visibility":"public"},{"baseFunctions":[3850],"body":{"id":2080,"nodeType":"Block","src":"3466:191:15","statements":[{"assignments":[2059],"declarations":[{"constant":false,"id":2059,"mutability":"mutable","name":"_owner","nameLocation":"3484:6:15","nodeType":"VariableDeclaration","scope":2080,"src":"3476:14:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2058,"name":"address","nodeType":"ElementaryTypeName","src":"3476:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":2063,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2060,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"3493:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2061,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3493:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2062,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"3493:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"3476:31:15"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2064,"name":"_newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2052,"src":"3521:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":2065,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2059,"src":"3534:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3521:19:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2079,"nodeType":"IfStatement","src":"3517:134:15","trueBody":{"id":2078,"nodeType":"Block","src":"3542:109:15","statements":[{"expression":{"id":2071,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2067,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"3556:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3556:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2069,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":1282,"src":"3556:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2070,"name":"_newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2052,"src":"3573:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3556:26:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2072,"nodeType":"ExpressionStatement","src":"3556:26:15"},{"eventCall":{"arguments":[{"id":2074,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2059,"src":"3622:6:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":2075,"name":"_newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2052,"src":"3630:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2073,"name":"OwnershipTransferred","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3838,"src":"3601:20:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":2076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3601:39:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2077,"nodeType":"EmitStatement","src":"3596:44:15"}]}}]},"documentation":{"id":2050,"nodeType":"StructuredDocumentation","src":"3327:24:15","text":"Transfers ownership."},"functionSelector":"f2fde38b","id":2081,"implemented":true,"kind":"function","modifiers":[{"id":2056,"kind":"modifierInvocation","modifierName":{"id":2055,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":1369,"src":"3452:9:15"},"nodeType":"ModifierInvocation","src":"3452:9:15"}],"name":"transferOwnership","nameLocation":"3365:17:15","nodeType":"FunctionDefinition","overrides":{"id":2054,"nodeType":"OverrideSpecifier","overrides":[],"src":"3435:8:15"},"parameters":{"id":2053,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2052,"mutability":"mutable","name":"_newOwner","nameLocation":"3391:9:15","nodeType":"VariableDeclaration","scope":2081,"src":"3383:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2051,"name":"address","nodeType":"ElementaryTypeName","src":"3383:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3382:19:15"},"returnParameters":{"id":2057,"nodeType":"ParameterList","parameters":[],"src":"3466:0:15"},"scope":3416,"src":"3356:301:15","stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"baseFunctions":[3872],"body":{"id":2096,"nodeType":"Block","src":"4118:54:15","statements":[{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2090,"name":"_acls","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1603,"src":"4135:5:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardACLs_$1568_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer)"}},"id":2091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4135:7:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer"}},"id":2092,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isReporter_","nodeType":"MemberAccess","referencedDeclaration":1567,"src":"4135:19:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":2094,"indexExpression":{"id":2093,"name":"_reporter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2084,"src":"4155:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4135:30:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":2089,"id":2095,"nodeType":"Return","src":"4128:37:15"}]},"documentation":{"id":2082,"nodeType":"StructuredDocumentation","src":"3905:133:15","text":"Tells whether given address is included in the active reporters control list.\n @param _reporter The address to be checked."},"functionSelector":"044ad7be","id":2097,"implemented":true,"kind":"function","modifiers":[],"name":"isReporter","nameLocation":"4052:10:15","nodeType":"FunctionDefinition","overrides":{"id":2086,"nodeType":"OverrideSpecifier","overrides":[],"src":"4094:8:15"},"parameters":{"id":2085,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2084,"mutability":"mutable","name":"_reporter","nameLocation":"4071:9:15","nodeType":"VariableDeclaration","scope":2097,"src":"4063:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2083,"name":"address","nodeType":"ElementaryTypeName","src":"4063:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4062:19:15"},"returnParameters":{"id":2089,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2088,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2097,"src":"4112:4:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2087,"name":"bool","nodeType":"ElementaryTypeName","src":"4112:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4111:6:15"},"scope":3416,"src":"4043:129:15","stateMutability":"view","virtual":false,"visibility":"public"},{"baseFunctions":[3879],"body":{"id":2138,"nodeType":"Block","src":"4546:214:15","statements":[{"body":{"id":2132,"nodeType":"Block","src":"4605:110:15","statements":[{"assignments":[2119],"declarations":[{"constant":false,"id":2119,"mutability":"mutable","name":"_reporter","nameLocation":"4627:9:15","nodeType":"VariableDeclaration","scope":2132,"src":"4619:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2118,"name":"address","nodeType":"ElementaryTypeName","src":"4619:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":2123,"initialValue":{"baseExpression":{"id":2120,"name":"_reporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2101,"src":"4639:10:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2122,"indexExpression":{"id":2121,"name":"ix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2108,"src":"4650:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4639:14:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4619:34:15"},{"expression":{"id":2130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2124,"name":"_acls","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1603,"src":"4667:5:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardACLs_$1568_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer)"}},"id":2125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4667:7:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer"}},"id":2126,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isReporter_","nodeType":"MemberAccess","referencedDeclaration":1567,"src":"4667:19:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":2128,"indexExpression":{"id":2127,"name":"_reporter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2119,"src":"4687:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4667:30:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":2129,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4700:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"4667:37:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2131,"nodeType":"ExpressionStatement","src":"4667:37:15"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2114,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2111,"name":"ix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2108,"src":"4574:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":2112,"name":"_reporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2101,"src":"4579:10:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"4579:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4574:22:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2133,"initializationExpression":{"assignments":[2108],"declarations":[{"constant":false,"id":2108,"mutability":"mutable","name":"ix","nameLocation":"4566:2:15","nodeType":"VariableDeclaration","scope":2133,"src":"4561:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2107,"name":"uint","nodeType":"ElementaryTypeName","src":"4561:4:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2110,"initialValue":{"hexValue":"30","id":2109,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4571:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"4561:11:15"},"loopExpression":{"expression":{"id":2116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4598:5:15","subExpression":{"id":2115,"name":"ix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2108,"src":"4598:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2117,"nodeType":"ExpressionStatement","src":"4598:5:15"},"nodeType":"ForStatement","src":"4556:159:15"},{"eventCall":{"arguments":[{"id":2135,"name":"_reporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2101,"src":"4742:10:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":2134,"name":"ReportersSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3859,"src":"4729:12:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":2136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4729:24:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2137,"nodeType":"EmitStatement","src":"4724:29:15"}]},"documentation":{"id":2098,"nodeType":"StructuredDocumentation","src":"4178:258:15","text":"Adds given addresses to the active reporters control list.\n @dev Can only be called from the owner address.\n @dev Emits the `ReportersSet` event. \n @param _reporters List of addresses to be added to the active reporters control list."},"functionSelector":"4c9f72e3","id":2139,"implemented":true,"kind":"function","modifiers":[{"id":2105,"kind":"modifierInvocation","modifierName":{"id":2104,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":1369,"src":"4532:9:15"},"nodeType":"ModifierInvocation","src":"4532:9:15"}],"name":"setReporters","nameLocation":"4450:12:15","nodeType":"FunctionDefinition","overrides":{"id":2103,"nodeType":"OverrideSpecifier","overrides":[],"src":"4515:8:15"},"parameters":{"id":2102,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2101,"mutability":"mutable","name":"_reporters","nameLocation":"4480:10:15","nodeType":"VariableDeclaration","scope":2139,"src":"4463:27:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2099,"name":"address","nodeType":"ElementaryTypeName","src":"4463:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2100,"nodeType":"ArrayTypeName","src":"4463:9:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"4462:29:15"},"returnParameters":{"id":2106,"nodeType":"ParameterList","parameters":[],"src":"4546:0:15"},"scope":3416,"src":"4441:319:15","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[3886],"body":{"id":2180,"nodeType":"Block","src":"5147:223:15","statements":[{"body":{"id":2174,"nodeType":"Block","src":"5208:113:15","statements":[{"assignments":[2161],"declarations":[{"constant":false,"id":2161,"mutability":"mutable","name":"_reporter","nameLocation":"5230:9:15","nodeType":"VariableDeclaration","scope":2174,"src":"5222:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2160,"name":"address","nodeType":"ElementaryTypeName","src":"5222:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":2165,"initialValue":{"baseExpression":{"id":2162,"name":"_exReporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2143,"src":"5242:12:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2164,"indexExpression":{"id":2163,"name":"ix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2150,"src":"5255:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5242:16:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"5222:36:15"},{"expression":{"id":2172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2166,"name":"_acls","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1603,"src":"5272:5:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardACLs_$1568_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer)"}},"id":2167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5272:7:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardACLs_$1568_storage_ptr","typeString":"struct WitnetBoardDataACLs.WitnetBoardACLs storage pointer"}},"id":2168,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isReporter_","nodeType":"MemberAccess","referencedDeclaration":1567,"src":"5272:19:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":2170,"indexExpression":{"id":2169,"name":"_reporter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2161,"src":"5292:9:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5272:30:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":2171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5305:5:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"5272:38:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2173,"nodeType":"ExpressionStatement","src":"5272:38:15"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2156,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2153,"name":"ix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2150,"src":"5175:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":2154,"name":"_exReporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2143,"src":"5180:12:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":2155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5180:19:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5175:24:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2175,"initializationExpression":{"assignments":[2150],"declarations":[{"constant":false,"id":2150,"mutability":"mutable","name":"ix","nameLocation":"5167:2:15","nodeType":"VariableDeclaration","scope":2175,"src":"5162:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2149,"name":"uint","nodeType":"ElementaryTypeName","src":"5162:4:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2152,"initialValue":{"hexValue":"30","id":2151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5172:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5162:11:15"},"loopExpression":{"expression":{"id":2158,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5201:5:15","subExpression":{"id":2157,"name":"ix","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2150,"src":"5201:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2159,"nodeType":"ExpressionStatement","src":"5201:5:15"},"nodeType":"ForStatement","src":"5157:164:15"},{"eventCall":{"arguments":[{"id":2177,"name":"_exReporters","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2143,"src":"5350:12:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"id":2176,"name":"ReportersUnset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3864,"src":"5335:14:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":2178,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5335:28:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2179,"nodeType":"EmitStatement","src":"5330:33:15"}]},"documentation":{"id":2140,"nodeType":"StructuredDocumentation","src":"4766:267:15","text":"Removes given addresses from the active reporters control list.\n @dev Can only be called from the owner address.\n @dev Emits the `ReportersUnset` event. \n @param _exReporters List of addresses to be added to the active reporters control list."},"functionSelector":"28a78d9b","id":2181,"implemented":true,"kind":"function","modifiers":[{"id":2147,"kind":"modifierInvocation","modifierName":{"id":2146,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":1369,"src":"5133:9:15"},"nodeType":"ModifierInvocation","src":"5133:9:15"}],"name":"unsetReporters","nameLocation":"5047:14:15","nodeType":"FunctionDefinition","overrides":{"id":2145,"nodeType":"OverrideSpecifier","overrides":[],"src":"5116:8:15"},"parameters":{"id":2144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2143,"mutability":"mutable","name":"_exReporters","nameLocation":"5079:12:15","nodeType":"VariableDeclaration","scope":2181,"src":"5062:29:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2141,"name":"address","nodeType":"ElementaryTypeName","src":"5062:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2142,"nodeType":"ArrayTypeName","src":"5062:9:15","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"5061:31:15"},"returnParameters":{"id":2148,"nodeType":"ParameterList","parameters":[],"src":"5147:0:15"},"scope":3416,"src":"5038:332:15","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[3925],"body":{"id":2236,"nodeType":"Block","src":"6410:684:15","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":2203,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2201,"name":"_drTxHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2186,"src":"6428:9:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":2202,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6441:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"6428:14:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c6544656661756c743a205769746e65742064725478486173682063616e6e6f74206265207a65726f","id":2204,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6444:68:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\""},"value":"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\""}],"id":2200,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6420:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6420:93:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2206,"nodeType":"ExpressionStatement","src":"6420:93:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2208,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2188,"src":"6685:10:15","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},"id":2209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"6685:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":2210,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6706:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"6685:22:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c6544656661756c743a20726573756c742063616e6e6f7420626520656d707479","id":2212,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6709:60:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: result cannot be empty\""},"value":"WitnetRequestBoardTrustableDefault: result cannot be empty"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: result cannot be empty\""}],"id":2207,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6677:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6677:93:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2214,"nodeType":"ExpressionStatement","src":"6677:93:15"},{"expression":{"arguments":[{"arguments":[{"expression":{"id":2218,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6861:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6861:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2217,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6853:8:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":2216,"name":"address","nodeType":"ElementaryTypeName","src":"6853:8:15","stateMutability":"payable","typeDescriptions":{}}},"id":2220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6853:19:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"arguments":[{"id":2222,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2184,"src":"6918:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2223,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"6944:5:15","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":2224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"6944:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":2225,"name":"_drTxHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2186,"src":"6977:9:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2226,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2188,"src":"7004:10:15","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"id":2221,"name":"__reportResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3415,"src":"6886:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,uint256,bytes32,bytes memory) returns (uint256)"}},"id":2227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6886:142:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2215,"name":"_safeTransferTo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8150,"src":"6824:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$_t_uint256_$returns$__$","typeString":"function (address payable,uint256)"}},"id":2228,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6824:214:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2229,"nodeType":"ExpressionStatement","src":"6824:214:15"},{"eventCall":{"arguments":[{"id":2231,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2184,"src":"7066:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2232,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"7076:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"7076:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2230,"name":"PostedResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3904,"src":"7053:12:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address)"}},"id":2234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7053:34:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2235,"nodeType":"EmitStatement","src":"7048:39:15"}]},"documentation":{"id":2182,"nodeType":"StructuredDocumentation","src":"5618:541:15","text":"Reports the Witnet-provided result to a previously posted request. \n @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\n @dev Fails if:\n @dev - the `_queryId` is not in 'Posted' status.\n @dev - provided `_drTxHash` is zero;\n @dev - length of provided `_result` is zero.\n @param _queryId The unique identifier of the data request.\n @param _drTxHash The hash of the solving tally transaction in Witnet.\n @param _cborBytes The result itself as bytes."},"functionSelector":"6280bce8","id":2237,"implemented":true,"kind":"function","modifiers":[{"id":2192,"kind":"modifierInvocation","modifierName":{"id":2191,"name":"onlyReporters","nodeType":"IdentifierPath","referencedDeclaration":1595,"src":"6338:13:15"},"nodeType":"ModifierInvocation","src":"6338:13:15"},{"arguments":[{"id":2194,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2184,"src":"6369:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2195,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"6379:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"6379:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2197,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"6379:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2198,"kind":"modifierInvocation","modifierName":{"id":2193,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"6360:8:15"},"nodeType":"ModifierInvocation","src":"6360:45:15"}],"name":"reportResult","nameLocation":"6173:12:15","nodeType":"FunctionDefinition","overrides":{"id":2190,"nodeType":"OverrideSpecifier","overrides":[],"src":"6321:8:15"},"parameters":{"id":2189,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2184,"mutability":"mutable","name":"_queryId","nameLocation":"6207:8:15","nodeType":"VariableDeclaration","scope":2237,"src":"6199:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2183,"name":"uint256","nodeType":"ElementaryTypeName","src":"6199:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2186,"mutability":"mutable","name":"_drTxHash","nameLocation":"6237:9:15","nodeType":"VariableDeclaration","scope":2237,"src":"6229:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2185,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6229:7:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2188,"mutability":"mutable","name":"_cborBytes","nameLocation":"6275:10:15","nodeType":"VariableDeclaration","scope":2237,"src":"6260:25:15","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":2187,"name":"bytes","nodeType":"ElementaryTypeName","src":"6260:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"6185:110:15"},"returnParameters":{"id":2199,"nodeType":"ParameterList","parameters":[],"src":"6410:0:15"},"scope":3416,"src":"6164:930:15","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"baseFunctions":[3937],"body":{"id":2301,"nodeType":"Block","src":"7948:736:15","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2262,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2259,"name":"_timestamp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2242,"src":"7966:10:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"expression":{"id":2260,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"7980:5:15","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":2261,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"7980:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7966:29:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c6544656661756c743a206261642074696d657374616d70","id":2263,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7997:51:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: bad timestamp\""},"value":"WitnetRequestBoardTrustableDefault: bad timestamp"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: bad timestamp\""}],"id":2258,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7958:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2264,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7958:91:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2265,"nodeType":"ExpressionStatement","src":"7958:91:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":2269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2267,"name":"_drTxHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2244,"src":"8067:9:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":2268,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8080:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"8067:14:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c6544656661756c743a205769746e65742064725478486173682063616e6e6f74206265207a65726f","id":2270,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8083:68:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\""},"value":"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\""}],"id":2266,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"8059:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8059:93:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2272,"nodeType":"ExpressionStatement","src":"8059:93:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2274,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2246,"src":"8324:10:15","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},"id":2275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"8324:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":2276,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8345:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"8324:22:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c6544656661756c743a20726573756c742063616e6e6f7420626520656d707479","id":2278,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8348:60:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: result cannot be empty\""},"value":"WitnetRequestBoardTrustableDefault: result cannot be empty"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84","typeString":"literal_string \"WitnetRequestBoardTrustableDefault: result cannot be empty\""}],"id":2273,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"8316:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2279,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8316:93:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2280,"nodeType":"ExpressionStatement","src":"8316:93:15"},{"expression":{"arguments":[{"arguments":[{"expression":{"id":2284,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8456:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"8456:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2283,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8448:8:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":2282,"name":"address","nodeType":"ElementaryTypeName","src":"8448:8:15","stateMutability":"payable","typeDescriptions":{}}},"id":2286,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8448:19:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"arguments":[{"id":2288,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2240,"src":"8513:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":2289,"name":"_timestamp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2242,"src":"8539:10:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":2290,"name":"_drTxHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2244,"src":"8567:9:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":2291,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2246,"src":"8594:10:15","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"id":2287,"name":"__reportResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3415,"src":"8481:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,uint256,bytes32,bytes memory) returns (uint256)"}},"id":2292,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8481:137:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2281,"name":"_safeTransferTo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8150,"src":"8419:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$_t_uint256_$returns$__$","typeString":"function (address payable,uint256)"}},"id":2293,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8419:209:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2294,"nodeType":"ExpressionStatement","src":"8419:209:15"},{"eventCall":{"arguments":[{"id":2296,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2240,"src":"8656:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2297,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"8666:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"8666:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2295,"name":"PostedResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3904,"src":"8643:12:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address)"}},"id":2299,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8643:34:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2300,"nodeType":"EmitStatement","src":"8638:39:15"}]},"documentation":{"id":2238,"nodeType":"StructuredDocumentation","src":"7100:565:15","text":"Reports the Witnet-provided result to a previously posted request.\n @dev Fails if:\n @dev - called from unauthorized address;\n @dev - the `_queryId` is not in 'Posted' status.\n @dev - provided `_drTxHash` is zero;\n @dev - length of provided `_result` is zero.\n @param _queryId The unique query identifier\n @param _timestamp The timestamp of the solving tally transaction in Witnet.\n @param _drTxHash The hash of the solving tally transaction in Witnet.\n @param _cborBytes The result itself as bytes."},"functionSelector":"c8f5cdd5","id":2302,"implemented":true,"kind":"function","modifiers":[{"id":2250,"kind":"modifierInvocation","modifierName":{"id":2249,"name":"onlyReporters","nodeType":"IdentifierPath","referencedDeclaration":1595,"src":"7876:13:15"},"nodeType":"ModifierInvocation","src":"7876:13:15"},{"arguments":[{"id":2252,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2240,"src":"7907:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2253,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"7917:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"7917:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2255,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"7917:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2256,"kind":"modifierInvocation","modifierName":{"id":2251,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"7898:8:15"},"nodeType":"ModifierInvocation","src":"7898:45:15"}],"name":"reportResult","nameLocation":"7679:12:15","nodeType":"FunctionDefinition","overrides":{"id":2248,"nodeType":"OverrideSpecifier","overrides":[],"src":"7859:8:15"},"parameters":{"id":2247,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2240,"mutability":"mutable","name":"_queryId","nameLocation":"7713:8:15","nodeType":"VariableDeclaration","scope":2302,"src":"7705:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2239,"name":"uint256","nodeType":"ElementaryTypeName","src":"7705:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2242,"mutability":"mutable","name":"_timestamp","nameLocation":"7743:10:15","nodeType":"VariableDeclaration","scope":2302,"src":"7735:18:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2241,"name":"uint256","nodeType":"ElementaryTypeName","src":"7735:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2244,"mutability":"mutable","name":"_drTxHash","nameLocation":"7775:9:15","nodeType":"VariableDeclaration","scope":2302,"src":"7767:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2243,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7767:7:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2246,"mutability":"mutable","name":"_cborBytes","nameLocation":"7813:10:15","nodeType":"VariableDeclaration","scope":2302,"src":"7798:25:15","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":2245,"name":"bytes","nodeType":"ElementaryTypeName","src":"7798:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"7691:142:15"},"returnParameters":{"id":2257,"nodeType":"ParameterList","parameters":[],"src":"7948:0:15"},"scope":3416,"src":"7670:1014:15","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"baseFunctions":[3947],"body":{"id":2455,"nodeType":"Block","src":"9580:2067:15","statements":[{"assignments":[2316],"declarations":[{"constant":false,"id":2316,"mutability":"mutable","name":"_batchReward","nameLocation":"9595:12:15","nodeType":"VariableDeclaration","scope":2455,"src":"9590:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2315,"name":"uint","nodeType":"ElementaryTypeName","src":"9590:4:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2317,"nodeType":"VariableDeclarationStatement","src":"9590:17:15"},{"assignments":[2319],"declarations":[{"constant":false,"id":2319,"mutability":"mutable","name":"_batchSize","nameLocation":"9622:10:15","nodeType":"VariableDeclaration","scope":2455,"src":"9617:15:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2318,"name":"uint","nodeType":"ElementaryTypeName","src":"9617:4:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2322,"initialValue":{"expression":{"id":2320,"name":"_batchResults","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2307,"src":"9635:13:15","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory[] memory"}},"id":2321,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"9635:20:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"9617:38:15"},{"body":{"id":2439,"nodeType":"Block","src":"9708:1680:15","statements":[{"assignments":[2335],"declarations":[{"constant":false,"id":2335,"mutability":"mutable","name":"_result","nameLocation":"9741:7:15","nodeType":"VariableDeclaration","scope":2439,"src":"9722:26:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult"},"typeName":{"id":2334,"nodeType":"UserDefinedTypeName","pathNode":{"id":2333,"name":"BatchResult","nodeType":"IdentifierPath","referencedDeclaration":3956,"src":"9722:11:15"},"referencedDeclaration":3956,"src":"9722:11:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_storage_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult"}},"visibility":"internal"}],"id":2339,"initialValue":{"baseExpression":{"id":2336,"name":"_batchResults","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2307,"src":"9751:13:15","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory[] memory"}},"id":2338,"indexExpression":{"id":2337,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2324,"src":"9765:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9751:17:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"nodeType":"VariableDeclarationStatement","src":"9722:46:15"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":2347,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":2341,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"9802:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2342,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"9802:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2340,"name":"_getQueryStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1455,"src":"9786:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_enum$_QueryStatus_$4315_$","typeString":"function (uint256) view returns (enum Witnet.QueryStatus)"}},"id":2343,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9786:32:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"expression":{"id":2344,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"9822:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"9822:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2346,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"9822:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"9786:61:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":2361,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2358,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10102:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2359,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"drTxHash","nodeType":"MemberAccess","referencedDeclaration":3953,"src":"10102:16:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":2360,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10122:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10102:21:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":2372,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10379:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2373,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cborBytes","nodeType":"MemberAccess","referencedDeclaration":3955,"src":"10379:17:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":2374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"10379:24:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":2375,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10407:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10379:29:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":2396,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2387,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10666:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2388,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","referencedDeclaration":3951,"src":"10666:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":2389,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10686:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10666:21:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2395,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2391,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10691:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","referencedDeclaration":3951,"src":"10691:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":2393,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"10711:5:15","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":2394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"10711:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10691:35:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"10666:60:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":2434,"nodeType":"Block","src":"10979:399:15","statements":[{"expression":{"id":2425,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2407,"name":"_batchReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2316,"src":"10997:12:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"expression":{"id":2409,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"11049:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2410,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"11049:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2411,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"11086:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2412,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","referencedDeclaration":3951,"src":"11086:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":2413,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11107:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11086:22:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":2417,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"11129:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2418,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","referencedDeclaration":3951,"src":"11129:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"11086:60:15","trueExpression":{"expression":{"id":2415,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"11111:5:15","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":2416,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","src":"11111:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2420,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"11168:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2421,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"drTxHash","nodeType":"MemberAccess","referencedDeclaration":3953,"src":"11168:16:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":2422,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"11206:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2423,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cborBytes","nodeType":"MemberAccess","referencedDeclaration":3955,"src":"11206:17:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2408,"name":"__reportResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3415,"src":"11013:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$_t_uint256_$_t_bytes32_$_t_bytes_memory_ptr_$returns$_t_uint256_$","typeString":"function (uint256,uint256,bytes32,bytes memory) returns (uint256)"}},"id":2424,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11013:228:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10997:244:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2426,"nodeType":"ExpressionStatement","src":"10997:244:15"},{"eventCall":{"arguments":[{"expression":{"id":2428,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"11298:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2429,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"11298:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2430,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11335:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"11335:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2427,"name":"PostedResult","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3904,"src":"11264:12:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address)"}},"id":2432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11264:99:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2433,"nodeType":"EmitStatement","src":"11259:104:15"}]},"id":2435,"nodeType":"IfStatement","src":"10662:716:15","trueBody":{"id":2406,"nodeType":"Block","src":"10728:245:15","statements":[{"condition":{"id":2397,"name":"_verbose","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2309,"src":"10750:8:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2405,"nodeType":"IfStatement","src":"10746:213:15","trueBody":{"id":2404,"nodeType":"Block","src":"10760:199:15","statements":[{"eventCall":{"arguments":[{"expression":{"id":2399,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10829:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2400,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"10829:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206261642074696d657374616d70","id":2401,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10870:48:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad timestamp\""},"value":"WitnetRequestBoardTrustableBase: bad timestamp"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad timestamp\""}],"id":2398,"name":"BatchReportError","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3962,"src":"10787:16:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$","typeString":"function (uint256,string memory)"}},"id":2402,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10787:153:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2403,"nodeType":"EmitStatement","src":"10782:158:15"}]}}]}},"id":2436,"nodeType":"IfStatement","src":"10375:1003:15","trueBody":{"id":2386,"nodeType":"Block","src":"10410:246:15","statements":[{"condition":{"id":2377,"name":"_verbose","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2309,"src":"10432:8:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2385,"nodeType":"IfStatement","src":"10428:214:15","trueBody":{"id":2384,"nodeType":"Block","src":"10442:200:15","statements":[{"eventCall":{"arguments":[{"expression":{"id":2379,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10511:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2380,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"10511:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206261642063626f724279746573","id":2381,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10553:48:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad cborBytes\""},"value":"WitnetRequestBoardTrustableBase: bad cborBytes"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad cborBytes\""}],"id":2378,"name":"BatchReportError","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3962,"src":"10469:16:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$","typeString":"function (uint256,string memory)"}},"id":2382,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10469:154:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2383,"nodeType":"EmitStatement","src":"10464:159:15"}]}}]}},"id":2437,"nodeType":"IfStatement","src":"10098:1280:15","trueBody":{"id":2371,"nodeType":"Block","src":"10125:244:15","statements":[{"condition":{"id":2362,"name":"_verbose","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2309,"src":"10147:8:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2370,"nodeType":"IfStatement","src":"10143:212:15","trueBody":{"id":2369,"nodeType":"Block","src":"10157:198:15","statements":[{"eventCall":{"arguments":[{"expression":{"id":2364,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"10226:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2365,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"10226:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a20626164206472547848617368","id":2366,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10267:47:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad drTxHash\""},"value":"WitnetRequestBoardTrustableBase: bad drTxHash"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad drTxHash\""}],"id":2363,"name":"BatchReportError","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3962,"src":"10184:16:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$","typeString":"function (uint256,string memory)"}},"id":2367,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10184:152:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2368,"nodeType":"EmitStatement","src":"10179:157:15"}]}}]}},"id":2438,"nodeType":"IfStatement","src":"9782:1596:15","trueBody":{"id":2357,"nodeType":"Block","src":"9849:243:15","statements":[{"condition":{"id":2348,"name":"_verbose","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2309,"src":"9871:8:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2356,"nodeType":"IfStatement","src":"9867:211:15","trueBody":{"id":2355,"nodeType":"Block","src":"9881:197:15","statements":[{"eventCall":{"arguments":[{"expression":{"id":2350,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2335,"src":"9950:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult memory"}},"id":2351,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queryId","nodeType":"MemberAccess","referencedDeclaration":3949,"src":"9950:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206261642071756572794964","id":2352,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9991:46:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad queryId\""},"value":"WitnetRequestBoardTrustableBase: bad queryId"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bad queryId\""}],"id":2349,"name":"BatchReportError","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3962,"src":"9908:16:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_string_memory_ptr_$returns$__$","typeString":"function (uint256,string memory)"}},"id":2353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9908:151:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2354,"nodeType":"EmitStatement","src":"9903:156:15"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2327,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2324,"src":"9684:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":2328,"name":"_batchSize","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2319,"src":"9689:10:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9684:15:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2440,"initializationExpression":{"assignments":[2324],"declarations":[{"constant":false,"id":2324,"mutability":"mutable","name":"_i","nameLocation":"9676:2:15","nodeType":"VariableDeclaration","scope":2440,"src":"9671:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2323,"name":"uint","nodeType":"ElementaryTypeName","src":"9671:4:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2326,"initialValue":{"hexValue":"30","id":2325,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9681:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"9671:11:15"},"loopExpression":{"expression":{"id":2331,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"9701:5:15","subExpression":{"id":2330,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2324,"src":"9701:2:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2332,"nodeType":"ExpressionStatement","src":"9701:5:15"},"nodeType":"ForStatement","src":"9665:1723:15"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2443,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2441,"name":"_batchReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2316,"src":"11502:12:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":2442,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11517:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11502:16:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2454,"nodeType":"IfStatement","src":"11498:143:15","trueBody":{"id":2453,"nodeType":"Block","src":"11520:121:15","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":2447,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11575:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2448,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"11575:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2446,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11567:8:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":2445,"name":"address","nodeType":"ElementaryTypeName","src":"11567:8:15","stateMutability":"payable","typeDescriptions":{}}},"id":2449,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11567:19:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},{"id":2450,"name":"_batchReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2316,"src":"11604:12:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2444,"name":"_safeTransferTo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8150,"src":"11534:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$_t_uint256_$returns$__$","typeString":"function (address payable,uint256)"}},"id":2451,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11534:96:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2452,"nodeType":"ExpressionStatement","src":"11534:96:15"}]}}]},"documentation":{"id":2303,"nodeType":"StructuredDocumentation","src":"8690:713:15","text":"Reports Witnet-provided results to multiple requests within a single EVM tx.\n @dev Fails if called from unauthorized address.\n @dev Emits a PostedResult event for every succesfully reported result, if any.\n @param _batchResults Array of BatchedResult structs, every one containing:\n         - unique query identifier;\n         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\n         - hash of the corresponding data request tx at the Witnet side-chain level;\n         - data request result in raw bytes.\n @param _verbose If true, emits a BatchReportError event for every failing report, if any. "},"functionSelector":"81a398b5","id":2456,"implemented":true,"kind":"function","modifiers":[{"id":2313,"kind":"modifierInvocation","modifierName":{"id":2312,"name":"onlyReporters","nodeType":"IdentifierPath","referencedDeclaration":1595,"src":"9562:13:15"},"nodeType":"ModifierInvocation","src":"9562:13:15"}],"name":"reportResultBatch","nameLocation":"9417:17:15","nodeType":"FunctionDefinition","overrides":{"id":2311,"nodeType":"OverrideSpecifier","overrides":[],"src":"9545:8:15"},"parameters":{"id":2310,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2307,"mutability":"mutable","name":"_batchResults","nameLocation":"9469:13:15","nodeType":"VariableDeclaration","scope":2456,"src":"9448:34:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult[]"},"typeName":{"baseType":{"id":2305,"nodeType":"UserDefinedTypeName","pathNode":{"id":2304,"name":"BatchResult","nodeType":"IdentifierPath","referencedDeclaration":3956,"src":"9448:11:15"},"referencedDeclaration":3956,"src":"9448:11:15","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_storage_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult"}},"id":2306,"nodeType":"ArrayTypeName","src":"9448:13:15","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_BatchResult_$3956_storage_$dyn_storage_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult[]"}},"visibility":"internal"},{"constant":false,"id":2309,"mutability":"mutable","name":"_verbose","nameLocation":"9501:8:15","nodeType":"VariableDeclaration","scope":2456,"src":"9496:13:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2308,"name":"bool","nodeType":"ElementaryTypeName","src":"9496:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"9434:85:15"},"returnParameters":{"id":2314,"nodeType":"ParameterList","parameters":[],"src":"9580:0:15"},"scope":3416,"src":"9408:2239:15","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"baseFunctions":[3977],"body":{"id":2510,"nodeType":"Block","src":"12431:334:15","statements":[{"assignments":[2476],"declarations":[{"constant":false,"id":2476,"mutability":"mutable","name":"__query","nameLocation":"12462:7:15","nodeType":"VariableDeclaration","scope":2510,"src":"12441:28:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"},"typeName":{"id":2475,"nodeType":"UserDefinedTypeName","pathNode":{"id":2474,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"12441:12:15"},"referencedDeclaration":4310,"src":"12441:12:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}},"visibility":"internal"}],"id":2482,"initialValue":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2477,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"12472:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2478,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12472:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"12472:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2481,"indexExpression":{"id":2480,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2459,"src":"12489:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"12472:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"nodeType":"VariableDeclarationStatement","src":"12441:57:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2484,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12529:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"12529:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":2486,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2476,"src":"12543:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":2487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":4309,"src":"12543:12:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12529:26:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206f6e6c7920726571756573746572","id":2489,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12569:49:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee","typeString":"literal_string \"WitnetRequestBoardTrustableBase: only requester\""},"value":"WitnetRequestBoardTrustableBase: only requester"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee","typeString":"literal_string \"WitnetRequestBoardTrustableBase: only requester\""}],"id":2483,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"12508:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12508:120:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2491,"nodeType":"ExpressionStatement","src":"12508:120:15"},{"expression":{"id":2495,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2492,"name":"_response","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2470,"src":"12638:9:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":2493,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2476,"src":"12650:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":2494,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"response","nodeType":"MemberAccess","referencedDeclaration":4307,"src":"12650:16:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage","typeString":"struct Witnet.Response storage ref"}},"src":"12638:28:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response memory"}},"id":2496,"nodeType":"ExpressionStatement","src":"12638:28:15"},{"expression":{"id":2502,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"12676:33:15","subExpression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2497,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"12683:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12683:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2499,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"12683:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2501,"indexExpression":{"id":2500,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2459,"src":"12700:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12683:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2503,"nodeType":"ExpressionStatement","src":"12676:33:15"},{"eventCall":{"arguments":[{"id":2505,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2459,"src":"12737:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2506,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12747:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2507,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"12747:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2504,"name":"DeletedQuery","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3911,"src":"12724:12:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address)"}},"id":2508,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12724:34:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2509,"nodeType":"EmitStatement","src":"12719:39:15"}]},"documentation":{"id":2457,"nodeType":"StructuredDocumentation","src":"11899:337:15","text":"Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\n @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\n @dev the one that actually posted the given request.\n @param _queryId The unique query identifier."},"functionSelector":"7c1fbda3","id":2511,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2463,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2459,"src":"12337:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2464,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"12347:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2465,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"12347:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2466,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"12347:27:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2467,"kind":"modifierInvocation","modifierName":{"id":2462,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"12328:8:15"},"nodeType":"ModifierInvocation","src":"12328:47:15"}],"name":"deleteQuery","nameLocation":"12250:11:15","nodeType":"FunctionDefinition","overrides":{"id":2461,"nodeType":"OverrideSpecifier","overrides":[],"src":"12311:8:15"},"parameters":{"id":2460,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2459,"mutability":"mutable","name":"_queryId","nameLocation":"12270:8:15","nodeType":"VariableDeclaration","scope":2511,"src":"12262:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2458,"name":"uint256","nodeType":"ElementaryTypeName","src":"12262:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12261:18:15"},"returnParameters":{"id":2471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2470,"mutability":"mutable","name":"_response","nameLocation":"12416:9:15","nodeType":"VariableDeclaration","scope":2511,"src":"12393:32:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":2469,"nodeType":"UserDefinedTypeName","pathNode":{"id":2468,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"12393:15:15"},"referencedDeclaration":4336,"src":"12393:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"src":"12392:34:15"},"scope":3416,"src":"12241:524:15","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"baseFunctions":[3986],"body":{"id":2629,"nodeType":"Block","src":"13543:1008:15","statements":[{"assignments":[2522],"declarations":[{"constant":false,"id":2522,"mutability":"mutable","name":"_value","nameLocation":"13561:6:15","nodeType":"VariableDeclaration","scope":2629,"src":"13553:14:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2521,"name":"uint256","nodeType":"ElementaryTypeName","src":"13553:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2525,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":2523,"name":"_getMsgValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8142,"src":"13570:12:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":2524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13570:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"13553:31:15"},{"assignments":[2527],"declarations":[{"constant":false,"id":2527,"mutability":"mutable","name":"_gasPrice","nameLocation":"13602:9:15","nodeType":"VariableDeclaration","scope":2629,"src":"13594:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2526,"name":"uint256","nodeType":"ElementaryTypeName","src":"13594:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2530,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":2528,"name":"_getGasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8136,"src":"13614:12:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":2529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13614:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"13594:34:15"},{"assignments":[2532],"declarations":[{"constant":false,"id":2532,"mutability":"mutable","name":"minResultReward","nameLocation":"13703:15:15","nodeType":"VariableDeclaration","scope":2629,"src":"13695:23:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2531,"name":"uint256","nodeType":"ElementaryTypeName","src":"13695:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2536,"initialValue":{"arguments":[{"id":2534,"name":"_gasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2527,"src":"13736:9:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2533,"name":"estimateReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2706,"src":"13721:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":2535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13721:25:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"13695:51:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2540,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2538,"name":"_value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2522,"src":"13764:6:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":2539,"name":"minResultReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2532,"src":"13774:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"13764:25:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a2072657761726420746f6f206c6f77","id":2541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13791:49:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a","typeString":"literal_string \"WitnetRequestBoardTrustableBase: reward too low\""},"value":"WitnetRequestBoardTrustableBase: reward too low"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a","typeString":"literal_string \"WitnetRequestBoardTrustableBase: reward too low\""}],"id":2537,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"13756:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13756:85:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2543,"nodeType":"ExpressionStatement","src":"13756:85:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2553,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":2547,"name":"_addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2515,"src":"13906:5:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}],"id":2546,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13898:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2545,"name":"address","nodeType":"ElementaryTypeName","src":"13898:7:15","typeDescriptions":{}}},"id":2548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13898:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":2551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13924:1:15","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":2550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13916:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2549,"name":"address","nodeType":"ElementaryTypeName","src":"13916:7:15","typeDescriptions":{}}},"id":2552,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13916:10:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13898:28:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206e756c6c20736372697074","id":2554,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13928:46:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4","typeString":"literal_string \"WitnetRequestBoardTrustableBase: null script\""},"value":"WitnetRequestBoardTrustableBase: null script"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4","typeString":"literal_string \"WitnetRequestBoardTrustableBase: null script\""}],"id":2544,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"13890:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2555,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13890:85:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2556,"nodeType":"ExpressionStatement","src":"13890:85:15"},{"assignments":[2558],"declarations":[{"constant":false,"id":2558,"mutability":"mutable","name":"_bytecode","nameLocation":"13998:9:15","nodeType":"VariableDeclaration","scope":2629,"src":"13985:22:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2557,"name":"bytes","nodeType":"ElementaryTypeName","src":"13985:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":2562,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":2559,"name":"_addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2515,"src":"14010:5:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"id":2560,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"bytecode","nodeType":"MemberAccess","referencedDeclaration":3822,"src":"14010:14:15","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes_memory_ptr_$","typeString":"function () view external returns (bytes memory)"}},"id":2561,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14010:16:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"13985:41:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2564,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2558,"src":"14044:9:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":2565,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"14044:16:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":2566,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14063:1:15","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14044:20:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a20656d70747920736372697074","id":2568,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14066:47:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c","typeString":"literal_string \"WitnetRequestBoardTrustableBase: empty script\""},"value":"WitnetRequestBoardTrustableBase: empty script"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c","typeString":"literal_string \"WitnetRequestBoardTrustableBase: empty script\""}],"id":2563,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"14036:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14036:78:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2570,"nodeType":"ExpressionStatement","src":"14036:78:15"},{"expression":{"id":2576,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2571,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2519,"src":"14125:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2575,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"14136:22:15","subExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2572,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"14139:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14139:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"numQueries","nodeType":"MemberAccess","referencedDeclaration":1284,"src":"14139:19:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14125:33:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2577,"nodeType":"ExpressionStatement","src":"14125:33:15"},{"expression":{"id":2586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2578,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"14168:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2579,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14168:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"14168:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2582,"indexExpression":{"id":2581,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2519,"src":"14185:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14168:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"id":2583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":4309,"src":"14168:31:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":2584,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"14202:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"14202:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14168:44:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2587,"nodeType":"ExpressionStatement","src":"14168:44:15"},{"assignments":[2592],"declarations":[{"constant":false,"id":2592,"mutability":"mutable","name":"_request","nameLocation":"14246:8:15","nodeType":"VariableDeclaration","scope":2629,"src":"14223:31:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":2591,"nodeType":"UserDefinedTypeName","pathNode":{"id":2590,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"14223:14:15"},"referencedDeclaration":4327,"src":"14223:14:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"id":2596,"initialValue":{"arguments":[{"id":2594,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2519,"src":"14273:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2593,"name":"_getRequestData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1527,"src":"14257:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Request_$4327_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Request storage pointer)"}},"id":2595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14257:25:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"14223:59:15"},{"expression":{"id":2601,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2597,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2592,"src":"14292:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2599,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"addr","nodeType":"MemberAccess","referencedDeclaration":4318,"src":"14292:13:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2600,"name":"_addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2515,"src":"14308:5:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"src":"14292:21:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"id":2602,"nodeType":"ExpressionStatement","src":"14292:21:15"},{"expression":{"id":2609,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2603,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2592,"src":"14323:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2605,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":4322,"src":"14323:13:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":2606,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2558,"src":"14339:9:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":2607,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":4301,"src":"14339:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$bound_to$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2608,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14339:16:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"14323:32:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2610,"nodeType":"ExpressionStatement","src":"14323:32:15"},{"expression":{"id":2615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2611,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2592,"src":"14365:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2613,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"gasprice","nodeType":"MemberAccess","referencedDeclaration":4324,"src":"14365:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2614,"name":"_gasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2527,"src":"14385:9:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14365:29:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2616,"nodeType":"ExpressionStatement","src":"14365:29:15"},{"expression":{"id":2621,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2617,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2592,"src":"14404:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2619,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"reward","nodeType":"MemberAccess","referencedDeclaration":4326,"src":"14404:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2620,"name":"_value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2522,"src":"14422:6:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14404:24:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2622,"nodeType":"ExpressionStatement","src":"14404:24:15"},{"eventCall":{"arguments":[{"id":2624,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2519,"src":"14523:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":2625,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"14533:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2626,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"14533:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2623,"name":"PostedRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3897,"src":"14509:13:15","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address)"}},"id":2627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14509:35:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2628,"nodeType":"EmitStatement","src":"14504:40:15"}]},"documentation":{"id":2512,"nodeType":"StructuredDocumentation","src":"12771:637:15","text":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\n A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \n result to this request.\n @dev Fails if:\n @dev - provided reward is too low.\n @dev - provided script is zero address.\n @dev - provided script bytecode is empty.\n @param _addr The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\n @return _queryId An unique query identifier."},"functionSelector":"b281a7bd","id":2630,"implemented":true,"kind":"function","modifiers":[],"name":"postRequest","nameLocation":"13422:11:15","nodeType":"FunctionDefinition","overrides":{"id":2517,"nodeType":"OverrideSpecifier","overrides":[],"src":"13495:8:15"},"parameters":{"id":2516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2515,"mutability":"mutable","name":"_addr","nameLocation":"13449:5:15","nodeType":"VariableDeclaration","scope":2630,"src":"13434:20:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"},"typeName":{"id":2514,"nodeType":"UserDefinedTypeName","pathNode":{"id":2513,"name":"IWitnetRequest","nodeType":"IdentifierPath","referencedDeclaration":3829,"src":"13434:14:15"},"referencedDeclaration":3829,"src":"13434:14:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"visibility":"internal"}],"src":"13433:22:15"},"returnParameters":{"id":2520,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2519,"mutability":"mutable","name":"_queryId","nameLocation":"13529:8:15","nodeType":"VariableDeclaration","scope":2630,"src":"13521:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2518,"name":"uint256","nodeType":"ElementaryTypeName","src":"13521:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"13520:18:15"},"scope":3416,"src":"13413:1138:15","stateMutability":"payable","virtual":true,"visibility":"public"},{"baseFunctions":[3992],"body":{"id":2696,"nodeType":"Block","src":"15280:683:15","statements":[{"assignments":[2647],"declarations":[{"constant":false,"id":2647,"mutability":"mutable","name":"_request","nameLocation":"15313:8:15","nodeType":"VariableDeclaration","scope":2696,"src":"15290:31:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":2646,"nodeType":"UserDefinedTypeName","pathNode":{"id":2645,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"15290:14:15"},"referencedDeclaration":4327,"src":"15290:14:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"id":2651,"initialValue":{"arguments":[{"id":2649,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2633,"src":"15340:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2648,"name":"_getRequestData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1527,"src":"15324:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Request_$4327_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Request storage pointer)"}},"id":2650,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15324:25:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"15290:59:15"},{"assignments":[2653],"declarations":[{"constant":false,"id":2653,"mutability":"mutable","name":"_newReward","nameLocation":"15368:10:15","nodeType":"VariableDeclaration","scope":2696,"src":"15360:18:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2652,"name":"uint256","nodeType":"ElementaryTypeName","src":"15360:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2659,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2658,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2654,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2647,"src":"15381:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2655,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"reward","nodeType":"MemberAccess","referencedDeclaration":4326,"src":"15381:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":2656,"name":"_getMsgValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8142,"src":"15399:12:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":2657,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15399:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15381:32:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15360:53:15"},{"assignments":[2661],"declarations":[{"constant":false,"id":2661,"mutability":"mutable","name":"_newGasPrice","nameLocation":"15431:12:15","nodeType":"VariableDeclaration","scope":2696,"src":"15423:20:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2660,"name":"uint256","nodeType":"ElementaryTypeName","src":"15423:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2664,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":2662,"name":"_getGasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8136,"src":"15446:12:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":2663,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15446:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15423:37:15"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2665,"name":"_newGasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2661,"src":"15555:12:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":2666,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2647,"src":"15570:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2667,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"gasprice","nodeType":"MemberAccess","referencedDeclaration":4324,"src":"15570:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15555:32:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2689,"nodeType":"IfStatement","src":"15551:368:15","trueBody":{"id":2688,"nodeType":"Block","src":"15589:330:15","statements":[{"assignments":[2670],"declarations":[{"constant":false,"id":2670,"mutability":"mutable","name":"_minResultReward","nameLocation":"15665:16:15","nodeType":"VariableDeclaration","scope":2688,"src":"15657:24:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2669,"name":"uint256","nodeType":"ElementaryTypeName","src":"15657:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":2674,"initialValue":{"arguments":[{"id":2672,"name":"_newGasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2661,"src":"15699:12:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2671,"name":"estimateReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2706,"src":"15684:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":2673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15684:28:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15657:55:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2678,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":2676,"name":"_newReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2653,"src":"15751:10:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":2677,"name":"_minResultReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2670,"src":"15765:16:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15751:30:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a2072657761726420746f6f206c6f77","id":2679,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"15799:49:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a","typeString":"literal_string \"WitnetRequestBoardTrustableBase: reward too low\""},"value":"WitnetRequestBoardTrustableBase: reward too low"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a","typeString":"literal_string \"WitnetRequestBoardTrustableBase: reward too low\""}],"id":2675,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"15726:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2680,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15726:136:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2681,"nodeType":"ExpressionStatement","src":"15726:136:15"},{"expression":{"id":2686,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2682,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2647,"src":"15876:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2684,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"gasprice","nodeType":"MemberAccess","referencedDeclaration":4324,"src":"15876:17:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2685,"name":"_newGasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2661,"src":"15896:12:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15876:32:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2687,"nodeType":"ExpressionStatement","src":"15876:32:15"}]}},{"expression":{"id":2694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2690,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2647,"src":"15928:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2692,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"reward","nodeType":"MemberAccess","referencedDeclaration":4326,"src":"15928:15:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":2693,"name":"_newReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2653,"src":"15946:10:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15928:28:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2695,"nodeType":"ExpressionStatement","src":"15928:28:15"}]},"documentation":{"id":2631,"nodeType":"StructuredDocumentation","src":"14561:561:15","text":"Increments the reward of a previously posted request by adding the transaction value to it.\n @dev Updates request `gasPrice` in case this method is called with a higher \n @dev gas price value than the one used in previous calls to `postRequest` or\n @dev `upgradeReward`. \n @dev Fails if the `_queryId` is not in 'Posted' status.\n @dev Fails also in case the request `gasPrice` is increased, and the new \n @dev reward value gets below new recalculated threshold. \n @param _queryId The unique query identifier."},"functionSelector":"66bfdc75","id":2697,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2637,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2633,"src":"15239:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2638,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"15249:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"15249:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2640,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"15249:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2641,"kind":"modifierInvocation","modifierName":{"id":2636,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"15230:8:15"},"nodeType":"ModifierInvocation","src":"15230:45:15"}],"name":"upgradeReward","nameLocation":"15136:13:15","nodeType":"FunctionDefinition","overrides":{"id":2635,"nodeType":"OverrideSpecifier","overrides":[],"src":"15207:8:15"},"parameters":{"id":2634,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2633,"mutability":"mutable","name":"_queryId","nameLocation":"15158:8:15","nodeType":"VariableDeclaration","scope":2697,"src":"15150:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2632,"name":"uint256","nodeType":"ElementaryTypeName","src":"15150:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"15149:18:15"},"returnParameters":{"id":2642,"nodeType":"ParameterList","parameters":[],"src":"15280:0:15"},"scope":3416,"src":"15127:836:15","stateMutability":"payable","virtual":true,"visibility":"public"},{"baseFunctions":[4006],"documentation":{"id":2698,"nodeType":"StructuredDocumentation","src":"16211:158:15","text":"Estimates the amount of reward we need to insert for a given gas price.\n @param _gasPrice The gas price for which we need to calculate the rewards."},"functionSelector":"d2e87561","id":2706,"implemented":false,"kind":"function","modifiers":[],"name":"estimateReward","nameLocation":"16383:14:15","nodeType":"FunctionDefinition","overrides":{"id":2702,"nodeType":"OverrideSpecifier","overrides":[],"src":"16453:8:15"},"parameters":{"id":2701,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2700,"mutability":"mutable","name":"_gasPrice","nameLocation":"16406:9:15","nodeType":"VariableDeclaration","scope":2706,"src":"16398:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2699,"name":"uint256","nodeType":"ElementaryTypeName","src":"16398:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16397:19:15"},"returnParameters":{"id":2705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2704,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2706,"src":"16479:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2703,"name":"uint256","nodeType":"ElementaryTypeName","src":"16479:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16478:9:15"},"scope":3416,"src":"16374:114:15","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[4012],"body":{"id":2719,"nodeType":"Block","src":"16667:47:15","statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":2717,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2713,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"16684:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2714,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16684:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2715,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numQueries","nodeType":"MemberAccess","referencedDeclaration":1284,"src":"16684:19:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":2716,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16706:1:15","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"16684:23:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":2712,"id":2718,"nodeType":"Return","src":"16677:30:15"}]},"documentation":{"id":2707,"nodeType":"StructuredDocumentation","src":"16494:72:15","text":"Returns next request id to be generated by the Witnet Request Board."},"functionSelector":"c805dd0f","id":2720,"implemented":true,"kind":"function","modifiers":[],"name":"getNextQueryId","nameLocation":"16580:14:15","nodeType":"FunctionDefinition","overrides":{"id":2709,"nodeType":"OverrideSpecifier","overrides":[],"src":"16628:8:15"},"parameters":{"id":2708,"nodeType":"ParameterList","parameters":[],"src":"16594:2:15"},"returnParameters":{"id":2712,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2711,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2720,"src":"16654:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2710,"name":"uint256","nodeType":"ElementaryTypeName","src":"16654:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16653:9:15"},"scope":3416,"src":"16571:143:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4021],"body":{"id":2736,"nodeType":"Block","src":"16917:50:15","statements":[{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2730,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"16934:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16934:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2732,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"16934:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2734,"indexExpression":{"id":2733,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2723,"src":"16951:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16934:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"functionReturnParameters":2729,"id":2735,"nodeType":"Return","src":"16927:33:15"}]},"documentation":{"id":2721,"nodeType":"StructuredDocumentation","src":"16720:77:15","text":"Gets the whole Query data contents, if any, no matter its current status."},"functionSelector":"c2485ebd","id":2737,"implemented":true,"kind":"function","modifiers":[],"name":"getQueryData","nameLocation":"16811:12:15","nodeType":"FunctionDefinition","overrides":{"id":2725,"nodeType":"OverrideSpecifier","overrides":[],"src":"16868:8:15"},"parameters":{"id":2724,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2723,"mutability":"mutable","name":"_queryId","nameLocation":"16832:8:15","nodeType":"VariableDeclaration","scope":2737,"src":"16824:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2722,"name":"uint256","nodeType":"ElementaryTypeName","src":"16824:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"16823:18:15"},"returnParameters":{"id":2729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2728,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2737,"src":"16892:19:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_memory_ptr","typeString":"struct Witnet.Query"},"typeName":{"id":2727,"nodeType":"UserDefinedTypeName","pathNode":{"id":2726,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"16892:12:15"},"referencedDeclaration":4310,"src":"16892:12:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}},"visibility":"internal"}],"src":"16891:21:15"},"scope":3416,"src":"16802:165:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4030],"body":{"id":2751,"nodeType":"Block","src":"17139:50:15","statements":[{"expression":{"arguments":[{"id":2748,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2740,"src":"17172:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2747,"name":"_getQueryStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1455,"src":"17156:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_enum$_QueryStatus_$4315_$","typeString":"function (uint256) view returns (enum Witnet.QueryStatus)"}},"id":2749,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"17156:25:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"functionReturnParameters":2746,"id":2750,"nodeType":"Return","src":"17149:32:15"}]},"documentation":{"id":2738,"nodeType":"StructuredDocumentation","src":"16973:39:15","text":"Gets current status of given query."},"functionSelector":"6f07abcc","id":2752,"implemented":true,"kind":"function","modifiers":[],"name":"getQueryStatus","nameLocation":"17026:14:15","nodeType":"FunctionDefinition","overrides":{"id":2742,"nodeType":"OverrideSpecifier","overrides":[],"src":"17089:8:15"},"parameters":{"id":2741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2740,"mutability":"mutable","name":"_queryId","nameLocation":"17049:8:15","nodeType":"VariableDeclaration","scope":2752,"src":"17041:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2739,"name":"uint256","nodeType":"ElementaryTypeName","src":"17041:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17040:18:15"},"returnParameters":{"id":2746,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2745,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2752,"src":"17115:18:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"typeName":{"id":2744,"nodeType":"UserDefinedTypeName","pathNode":{"id":2743,"name":"Witnet.QueryStatus","nodeType":"IdentifierPath","referencedDeclaration":4315,"src":"17115:18:15"},"referencedDeclaration":4315,"src":"17115:18:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"visibility":"internal"}],"src":"17114:20:15"},"scope":3416,"src":"17017:172:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4039],"body":{"id":2800,"nodeType":"Block","src":"17646:209:15","statements":[{"assignments":[2772],"declarations":[{"constant":false,"id":2772,"mutability":"mutable","name":"__query","nameLocation":"17677:7:15","nodeType":"VariableDeclaration","scope":2800,"src":"17656:28:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"},"typeName":{"id":2771,"nodeType":"UserDefinedTypeName","pathNode":{"id":2770,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"17656:12:15"},"referencedDeclaration":4310,"src":"17656:12:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}},"visibility":"internal"}],"id":2778,"initialValue":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2773,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"17687:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2774,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"17687:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2775,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"17687:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2777,"indexExpression":{"id":2776,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2755,"src":"17704:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17687:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17656:57:15"},{"expression":{"id":2782,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2779,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2766,"src":"17723:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_memory_ptr","typeString":"struct Witnet.Request memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":2780,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2772,"src":"17734:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":2781,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"request","nodeType":"MemberAccess","referencedDeclaration":4304,"src":"17734:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage","typeString":"struct Witnet.Request storage ref"}},"src":"17723:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_memory_ptr","typeString":"struct Witnet.Request memory"}},"id":2783,"nodeType":"ExpressionStatement","src":"17723:26:15"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2790,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":2784,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2772,"src":"17763:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":2785,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":4309,"src":"17763:12:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":2788,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17787:1:15","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":2787,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17779:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2786,"name":"address","nodeType":"ElementaryTypeName","src":"17779:7:15","typeDescriptions":{}}},"id":2789,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"17779:10:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17763:26:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2799,"nodeType":"IfStatement","src":"17759:90:15","trueBody":{"id":2798,"nodeType":"Block","src":"17791:58:15","statements":[{"expression":{"id":2796,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":2791,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2766,"src":"17805:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_memory_ptr","typeString":"struct Witnet.Request memory"}},"id":2793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"requester","nodeType":"MemberAccess","referencedDeclaration":4320,"src":"17805:18:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":2794,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2772,"src":"17826:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":2795,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":4309,"src":"17826:12:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17805:33:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2797,"nodeType":"ExpressionStatement","src":"17805:33:15"}]}}]},"documentation":{"id":2753,"nodeType":"StructuredDocumentation","src":"17195:261:15","text":"Retrieves the whole Request record posted to the Witnet Request Board.\n @dev Fails if the `_queryId` is not valid or, if it has already been reported\n @dev or deleted.\n @param _queryId The unique identifier of a previously posted query."},"functionSelector":"99f65804","id":2801,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2759,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2755,"src":"17556:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2760,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"17566:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"17566:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2762,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"17566:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2763,"kind":"modifierInvocation","modifierName":{"id":2758,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"17547:8:15"},"nodeType":"ModifierInvocation","src":"17547:45:15"}],"name":"readRequest","nameLocation":"17470:11:15","nodeType":"FunctionDefinition","overrides":{"id":2757,"nodeType":"OverrideSpecifier","overrides":[],"src":"17530:8:15"},"parameters":{"id":2756,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2755,"mutability":"mutable","name":"_queryId","nameLocation":"17490:8:15","nodeType":"VariableDeclaration","scope":2801,"src":"17482:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2754,"name":"uint256","nodeType":"ElementaryTypeName","src":"17482:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17481:18:15"},"returnParameters":{"id":2767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2766,"mutability":"mutable","name":"_request","nameLocation":"17632:8:15","nodeType":"VariableDeclaration","scope":2801,"src":"17610:30:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_memory_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":2765,"nodeType":"UserDefinedTypeName","pathNode":{"id":2764,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"17610:14:15"},"referencedDeclaration":4327,"src":"17610:14:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"src":"17609:32:15"},"scope":3416,"src":"17461:394:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4047],"body":{"id":2859,"nodeType":"Block","src":"18335:686:15","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"id":2817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":2812,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2804,"src":"18382:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2811,"name":"_getQueryStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1455,"src":"18366:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_enum$_QueryStatus_$4315_$","typeString":"function (uint256) view returns (enum Witnet.QueryStatus)"}},"id":2813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18366:25:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"expression":{"id":2814,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"18395:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2815,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"18395:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2816,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Unknown","nodeType":"MemberAccess","referencedDeclaration":4311,"src":"18395:26:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"src":"18366:55:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206e6f742079657420706f73746564","id":2818,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"18435:49:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6","typeString":"literal_string \"WitnetRequestBoardTrustableBase: not yet posted\""},"value":"WitnetRequestBoardTrustableBase: not yet posted"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6","typeString":"literal_string \"WitnetRequestBoardTrustableBase: not yet posted\""}],"id":2810,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"18345:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18345:149:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2820,"nodeType":"ExpressionStatement","src":"18345:149:15"},{"assignments":[2825],"declarations":[{"constant":false,"id":2825,"mutability":"mutable","name":"_request","nameLocation":"18527:8:15","nodeType":"VariableDeclaration","scope":2859,"src":"18504:31:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":2824,"nodeType":"UserDefinedTypeName","pathNode":{"id":2823,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"18504:14:15"},"referencedDeclaration":4327,"src":"18504:14:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"id":2829,"initialValue":{"arguments":[{"id":2827,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2804,"src":"18554:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2826,"name":"_getRequestData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1527,"src":"18538:15:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Request_$4327_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Request storage pointer)"}},"id":2828,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18538:25:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"18504:59:15"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":2832,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2825,"src":"18585:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2833,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"addr","nodeType":"MemberAccess","referencedDeclaration":4318,"src":"18585:13:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}],"id":2831,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18577:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2830,"name":"address","nodeType":"ElementaryTypeName","src":"18577:7:15","typeDescriptions":{}}},"id":2834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18577:22:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":2837,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18611:1:15","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":2836,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18603:7:15","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":2835,"name":"address","nodeType":"ElementaryTypeName","src":"18603:7:15","typeDescriptions":{}}},"id":2838,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18603:10:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18577:36:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":2858,"nodeType":"IfStatement","src":"18573:441:15","trueBody":{"id":2857,"nodeType":"Block","src":"18615:399:15","statements":[{"expression":{"id":2845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":2840,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2808,"src":"18798:9:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":2841,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2825,"src":"18810:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2842,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"addr","nodeType":"MemberAccess","referencedDeclaration":4318,"src":"18810:13:15","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"id":2843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"bytecode","nodeType":"MemberAccess","referencedDeclaration":3822,"src":"18810:22:15","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes_memory_ptr_$","typeString":"function () view external returns (bytes memory)"}},"id":2844,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18810:24:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"18798:36:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":2846,"nodeType":"ExpressionStatement","src":"18798:36:15"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":2853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":2848,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2808,"src":"18873:9:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":2849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":4301,"src":"18873:14:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$bound_to$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18873:16:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":2851,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2825,"src":"18893:8:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":2852,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":4322,"src":"18893:13:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"18873:33:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a2062797465636f6465206368616e67656420616674657220706f7374696e67","id":2854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"18924:65:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bytecode changed after posting\""},"value":"WitnetRequestBoardTrustableBase: bytecode changed after posting"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce","typeString":"literal_string \"WitnetRequestBoardTrustableBase: bytecode changed after posting\""}],"id":2847,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"18848:7:15","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":2855,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"18848:155:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2856,"nodeType":"ExpressionStatement","src":"18848:155:15"}]}}]},"documentation":{"id":2802,"nodeType":"StructuredDocumentation","src":"17865:334:15","text":"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\n @dev Fails if the `_queryId` is not valid, or if the related script bytecode \n @dev got changed after being posted. Returns empty array once it gets reported, \n @dev or deleted.\n @param _queryId The unique query identifier."},"functionSelector":"3b885f2a","id":2860,"implemented":true,"kind":"function","modifiers":[],"name":"readRequestBytecode","nameLocation":"18213:19:15","nodeType":"FunctionDefinition","overrides":{"id":2806,"nodeType":"OverrideSpecifier","overrides":[],"src":"18281:8:15"},"parameters":{"id":2805,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2804,"mutability":"mutable","name":"_queryId","nameLocation":"18241:8:15","nodeType":"VariableDeclaration","scope":2860,"src":"18233:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2803,"name":"uint256","nodeType":"ElementaryTypeName","src":"18233:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18232:18:15"},"returnParameters":{"id":2809,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2808,"mutability":"mutable","name":"_bytecode","nameLocation":"18320:9:15","nodeType":"VariableDeclaration","scope":2860,"src":"18307:22:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2807,"name":"bytes","nodeType":"ElementaryTypeName","src":"18307:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"18306:24:15"},"scope":3416,"src":"18204:817:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4055],"body":{"id":2883,"nodeType":"Block","src":"19514:67:15","statements":[{"expression":{"expression":{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2875,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"19531:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"19531:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2877,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"19531:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2879,"indexExpression":{"id":2878,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2863,"src":"19548:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19531:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"id":2880,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"request","nodeType":"MemberAccess","referencedDeclaration":4304,"src":"19531:34:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage","typeString":"struct Witnet.Request storage ref"}},"id":2881,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"gasprice","nodeType":"MemberAccess","referencedDeclaration":4324,"src":"19531:43:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":2874,"id":2882,"nodeType":"Return","src":"19524:50:15"}]},"documentation":{"id":2861,"nodeType":"StructuredDocumentation","src":"19027:312:15","text":"Retrieves the gas price that any assigned reporter will have to pay when reporting \n result to a previously posted Witnet data request.\n @dev Fails if the `_queryId` is not valid or, if it has already been \n @dev reported, or deleted. \n @param _queryId The unique query identifier"},"functionSelector":"3ae97295","id":2884,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2867,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2863,"src":"19447:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2868,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"19457:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"19457:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2870,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"19457:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2871,"kind":"modifierInvocation","modifierName":{"id":2866,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"19438:8:15"},"nodeType":"ModifierInvocation","src":"19438:45:15"}],"name":"readRequestGasPrice","nameLocation":"19353:19:15","nodeType":"FunctionDefinition","overrides":{"id":2865,"nodeType":"OverrideSpecifier","overrides":[],"src":"19421:8:15"},"parameters":{"id":2864,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2863,"mutability":"mutable","name":"_queryId","nameLocation":"19381:8:15","nodeType":"VariableDeclaration","scope":2884,"src":"19373:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2862,"name":"uint256","nodeType":"ElementaryTypeName","src":"19373:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19372:18:15"},"returnParameters":{"id":2874,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2873,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2884,"src":"19501:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2872,"name":"uint256","nodeType":"ElementaryTypeName","src":"19501:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19500:9:15"},"scope":3416,"src":"19344:237:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4063],"body":{"id":2907,"nodeType":"Block","src":"19997:65:15","statements":[{"expression":{"expression":{"expression":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":2899,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"20014:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":2900,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"20014:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":2901,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"20014:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":2903,"indexExpression":{"id":2902,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2887,"src":"20031:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20014:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"id":2904,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"request","nodeType":"MemberAccess","referencedDeclaration":4304,"src":"20014:34:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage","typeString":"struct Witnet.Request storage ref"}},"id":2905,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"reward","nodeType":"MemberAccess","referencedDeclaration":4326,"src":"20014:41:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":2898,"id":2906,"nodeType":"Return","src":"20007:48:15"}]},"documentation":{"id":2885,"nodeType":"StructuredDocumentation","src":"19587:237:15","text":"Retrieves the reward currently set for a previously posted request.\n @dev Fails if the `_queryId` is not valid or, if it has already been \n @dev reported, or deleted. \n @param _queryId The unique query identifier"},"functionSelector":"1dd27daf","id":2908,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2891,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2887,"src":"19930:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2892,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"19940:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"19940:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2894,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Posted","nodeType":"MemberAccess","referencedDeclaration":4312,"src":"19940:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2895,"kind":"modifierInvocation","modifierName":{"id":2890,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"19921:8:15"},"nodeType":"ModifierInvocation","src":"19921:45:15"}],"name":"readRequestReward","nameLocation":"19838:17:15","nodeType":"FunctionDefinition","overrides":{"id":2889,"nodeType":"OverrideSpecifier","overrides":[],"src":"19904:8:15"},"parameters":{"id":2888,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2887,"mutability":"mutable","name":"_queryId","nameLocation":"19864:8:15","nodeType":"VariableDeclaration","scope":2908,"src":"19856:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2886,"name":"uint256","nodeType":"ElementaryTypeName","src":"19856:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19855:18:15"},"returnParameters":{"id":2898,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2897,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2908,"src":"19984:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2896,"name":"uint256","nodeType":"ElementaryTypeName","src":"19984:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19983:9:15"},"scope":3416,"src":"19829:233:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4072],"body":{"id":2928,"nodeType":"Block","src":"20472:50:15","statements":[{"expression":{"arguments":[{"id":2925,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2911,"src":"20506:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2924,"name":"_getResponseData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1544,"src":"20489:16:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Response_$4336_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Response storage pointer)"}},"id":2926,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"20489:26:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"functionReturnParameters":2923,"id":2927,"nodeType":"Return","src":"20482:33:15"}]},"documentation":{"id":2909,"nodeType":"StructuredDocumentation","src":"20068:209:15","text":"Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier"},"functionSelector":"754e5bea","id":2929,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2915,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2911,"src":"20378:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2916,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"20388:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2917,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"20388:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2918,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"20388:27:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2919,"kind":"modifierInvocation","modifierName":{"id":2914,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"20369:8:15"},"nodeType":"ModifierInvocation","src":"20369:47:15"}],"name":"readResponse","nameLocation":"20291:12:15","nodeType":"FunctionDefinition","overrides":{"id":2913,"nodeType":"OverrideSpecifier","overrides":[],"src":"20352:8:15"},"parameters":{"id":2912,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2911,"mutability":"mutable","name":"_queryId","nameLocation":"20312:8:15","nodeType":"VariableDeclaration","scope":2929,"src":"20304:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2910,"name":"uint256","nodeType":"ElementaryTypeName","src":"20304:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20303:18:15"},"returnParameters":{"id":2923,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2922,"mutability":"mutable","name":"_response","nameLocation":"20457:9:15","nodeType":"VariableDeclaration","scope":2929,"src":"20434:32:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":2921,"nodeType":"UserDefinedTypeName","pathNode":{"id":2920,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"20434:15:15"},"referencedDeclaration":4336,"src":"20434:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"src":"20433:34:15"},"scope":3416,"src":"20282:240:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4080],"body":{"id":2949,"nodeType":"Block","src":"20922:59:15","statements":[{"expression":{"expression":{"arguments":[{"id":2945,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2932,"src":"20956:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2944,"name":"_getResponseData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1544,"src":"20939:16:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Response_$4336_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Response storage pointer)"}},"id":2946,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"20939:26:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":2947,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"drTxHash","nodeType":"MemberAccess","referencedDeclaration":4333,"src":"20939:35:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2943,"id":2948,"nodeType":"Return","src":"20932:42:15"}]},"documentation":{"id":2930,"nodeType":"StructuredDocumentation","src":"20528:208:15","text":"Retrieves the hash of the Witnet transaction that actually solved the referred query.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"dc3c71cd","id":2950,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2936,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2932,"src":"20853:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2937,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"20863:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"20863:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2939,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"20863:27:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2940,"kind":"modifierInvocation","modifierName":{"id":2935,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"20844:8:15"},"nodeType":"ModifierInvocation","src":"20844:47:15"}],"name":"readResponseDrTxHash","nameLocation":"20750:20:15","nodeType":"FunctionDefinition","overrides":{"id":2934,"nodeType":"OverrideSpecifier","overrides":[],"src":"20827:8:15"},"parameters":{"id":2933,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2932,"mutability":"mutable","name":"_queryId","nameLocation":"20779:8:15","nodeType":"VariableDeclaration","scope":2950,"src":"20771:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2931,"name":"uint256","nodeType":"ElementaryTypeName","src":"20771:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20770:18:15"},"returnParameters":{"id":2943,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2942,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2950,"src":"20909:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2941,"name":"bytes32","nodeType":"ElementaryTypeName","src":"20909:7:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"20908:9:15"},"scope":3416,"src":"20741:240:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4088],"body":{"id":2970,"nodeType":"Block","src":"21365:59:15","statements":[{"expression":{"expression":{"arguments":[{"id":2966,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2953,"src":"21399:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2965,"name":"_getResponseData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1544,"src":"21382:16:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Response_$4336_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Response storage pointer)"}},"id":2967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"21382:26:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":2968,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"reporter","nodeType":"MemberAccess","referencedDeclaration":4329,"src":"21382:35:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":2964,"id":2969,"nodeType":"Return","src":"21375:42:15"}]},"documentation":{"id":2951,"nodeType":"StructuredDocumentation","src":"20987:200:15","text":"Retrieves the address that reported the result to a previously-posted request.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier"},"functionSelector":"9d96fced","id":2971,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2957,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2953,"src":"21296:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2958,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"21306:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"21306:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2960,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"21306:27:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2961,"kind":"modifierInvocation","modifierName":{"id":2956,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"21287:8:15"},"nodeType":"ModifierInvocation","src":"21287:47:15"}],"name":"readResponseReporter","nameLocation":"21201:20:15","nodeType":"FunctionDefinition","overrides":{"id":2955,"nodeType":"OverrideSpecifier","overrides":[],"src":"21270:8:15"},"parameters":{"id":2954,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2953,"mutability":"mutable","name":"_queryId","nameLocation":"21230:8:15","nodeType":"VariableDeclaration","scope":2971,"src":"21222:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2952,"name":"uint256","nodeType":"ElementaryTypeName","src":"21222:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21221:18:15"},"returnParameters":{"id":2964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2971,"src":"21352:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2962,"name":"address","nodeType":"ElementaryTypeName","src":"21352:7:15","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21351:9:15"},"scope":3416,"src":"21192:232:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4097],"body":{"id":3002,"nodeType":"Block","src":"21820:152:15","statements":[{"assignments":[2991],"declarations":[{"constant":false,"id":2991,"mutability":"mutable","name":"_response","nameLocation":"21854:9:15","nodeType":"VariableDeclaration","scope":3002,"src":"21830:33:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":2990,"nodeType":"UserDefinedTypeName","pathNode":{"id":2989,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"21830:15:15"},"referencedDeclaration":4336,"src":"21830:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"id":2995,"initialValue":{"arguments":[{"id":2993,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2974,"src":"21883:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":2992,"name":"_getResponseData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1544,"src":"21866:16:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Response_$4336_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Response storage pointer)"}},"id":2994,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"21866:26:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"nodeType":"VariableDeclarationStatement","src":"21830:62:15"},{"expression":{"arguments":[{"expression":{"id":2998,"name":"_response","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2991,"src":"21945:9:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":2999,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cborBytes","nodeType":"MemberAccess","referencedDeclaration":4335,"src":"21945:19:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}],"expression":{"id":2996,"name":"WitnetParserLib","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7528,"src":"21909:15:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetParserLib_$7528_$","typeString":"type(library WitnetParserLib)"}},"id":2997,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"resultFromCborBytes","nodeType":"MemberAccess","referencedDeclaration":6421,"src":"21909:35:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (bytes memory) pure returns (struct Witnet.Result memory)"}},"id":3000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"21909:56:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"functionReturnParameters":2986,"id":3001,"nodeType":"Return","src":"21902:63:15"}]},"documentation":{"id":2972,"nodeType":"StructuredDocumentation","src":"21430:201:15","text":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier"},"functionSelector":"d4da69ac","id":3003,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":2978,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2974,"src":"21738:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":2979,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"21748:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":2980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"21748:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":2981,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"21748:27:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":2982,"kind":"modifierInvocation","modifierName":{"id":2977,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"21729:8:15"},"nodeType":"ModifierInvocation","src":"21729:47:15"}],"name":"readResponseResult","nameLocation":"21645:18:15","nodeType":"FunctionDefinition","overrides":{"id":2976,"nodeType":"OverrideSpecifier","overrides":[],"src":"21712:8:15"},"parameters":{"id":2975,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2974,"mutability":"mutable","name":"_queryId","nameLocation":"21672:8:15","nodeType":"VariableDeclaration","scope":3003,"src":"21664:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2973,"name":"uint256","nodeType":"ElementaryTypeName","src":"21664:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21663:18:15"},"returnParameters":{"id":2986,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2985,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3003,"src":"21794:20:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":2984,"nodeType":"UserDefinedTypeName","pathNode":{"id":2983,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"21794:13:15"},"referencedDeclaration":4342,"src":"21794:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"21793:22:15"},"scope":3416,"src":"21636:336:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4105],"body":{"id":3023,"nodeType":"Block","src":"22375:60:15","statements":[{"expression":{"expression":{"arguments":[{"id":3019,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3006,"src":"22409:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":3018,"name":"_getResponseData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1544,"src":"22392:16:15","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_struct$_Response_$4336_storage_ptr_$","typeString":"function (uint256) view returns (struct Witnet.Response storage pointer)"}},"id":3020,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"22392:26:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":3021,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"timestamp","nodeType":"MemberAccess","referencedDeclaration":4331,"src":"22392:36:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":3017,"id":3022,"nodeType":"Return","src":"22385:43:15"}]},"documentation":{"id":3004,"nodeType":"StructuredDocumentation","src":"21978:218:15","text":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"20f9241e","id":3024,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":3010,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3006,"src":"22306:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":3011,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"22316:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":3012,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"QueryStatus","nodeType":"MemberAccess","referencedDeclaration":4315,"src":"22316:18:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_QueryStatus_$4315_$","typeString":"type(enum Witnet.QueryStatus)"}},"id":3013,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Reported","nodeType":"MemberAccess","referencedDeclaration":4313,"src":"22316:27:15","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}}],"id":3014,"kind":"modifierInvocation","modifierName":{"id":3009,"name":"inStatus","nodeType":"IdentifierPath","referencedDeclaration":1322,"src":"22297:8:15"},"nodeType":"ModifierInvocation","src":"22297:47:15"}],"name":"readResponseTimestamp","nameLocation":"22210:21:15","nodeType":"FunctionDefinition","overrides":{"id":3008,"nodeType":"OverrideSpecifier","overrides":[],"src":"22280:8:15"},"parameters":{"id":3007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3006,"mutability":"mutable","name":"_queryId","nameLocation":"22240:8:15","nodeType":"VariableDeclaration","scope":3024,"src":"22232:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3005,"name":"uint256","nodeType":"ElementaryTypeName","src":"22232:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22231:18:15"},"returnParameters":{"id":3017,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3016,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3024,"src":"22362:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3015,"name":"uint256","nodeType":"ElementaryTypeName","src":"22362:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22361:9:15"},"scope":3416,"src":"22201:234:15","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[4120],"body":{"id":3039,"nodeType":"Block","src":"22995:71:15","statements":[{"expression":{"arguments":[{"id":3036,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3027,"src":"23048:10:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":3034,"name":"WitnetParserLib","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7528,"src":"23012:15:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetParserLib_$7528_$","typeString":"type(library WitnetParserLib)"}},"id":3035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"resultFromCborBytes","nodeType":"MemberAccess","referencedDeclaration":6421,"src":"23012:35:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (bytes memory) pure returns (struct Witnet.Result memory)"}},"id":3037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"23012:47:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"functionReturnParameters":3033,"id":3038,"nodeType":"Return","src":"23005:54:15"}]},"documentation":{"id":3025,"nodeType":"StructuredDocumentation","src":"22683:171:15","text":"Decode raw CBOR bytes into a Witnet.Result instance.\n @param _cborBytes Raw bytes representing a CBOR-encoded value.\n @return A `Witnet.Result` instance."},"functionSelector":"e99e47f3","id":3040,"implemented":true,"kind":"function","modifiers":[],"name":"resultFromCborBytes","nameLocation":"22868:19:15","nodeType":"FunctionDefinition","overrides":{"id":3029,"nodeType":"OverrideSpecifier","overrides":[],"src":"22943:8:15"},"parameters":{"id":3028,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3027,"mutability":"mutable","name":"_cborBytes","nameLocation":"22901:10:15","nodeType":"VariableDeclaration","scope":3040,"src":"22888:23:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":3026,"name":"bytes","nodeType":"ElementaryTypeName","src":"22888:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"22887:25:15"},"returnParameters":{"id":3033,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3032,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3040,"src":"22969:20:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3031,"nodeType":"UserDefinedTypeName","pathNode":{"id":3030,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"22969:13:15"},"referencedDeclaration":4342,"src":"22969:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"22968:22:15"},"scope":3416,"src":"22859:207:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4130],"body":{"id":3056,"nodeType":"Block","src":"23373:71:15","statements":[{"expression":{"arguments":[{"id":3053,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3044,"src":"23426:10:15","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"expression":{"id":3051,"name":"WitnetParserLib","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7528,"src":"23390:15:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetParserLib_$7528_$","typeString":"type(library WitnetParserLib)"}},"id":3052,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"resultFromCborValue","nodeType":"MemberAccess","referencedDeclaration":6445,"src":"23390:35:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (struct Witnet.Result memory)"}},"id":3054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"23390:47:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"functionReturnParameters":3050,"id":3055,"nodeType":"Return","src":"23383:54:15"}]},"documentation":{"id":3041,"nodeType":"StructuredDocumentation","src":"23072:154:15","text":"Decode a CBOR value into a Witnet.Result instance.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return A `Witnet.Result` instance."},"functionSelector":"2565082b","id":3057,"implemented":true,"kind":"function","modifiers":[],"name":"resultFromCborValue","nameLocation":"23240:19:15","nodeType":"FunctionDefinition","overrides":{"id":3046,"nodeType":"OverrideSpecifier","overrides":[],"src":"23321:8:15"},"parameters":{"id":3045,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3044,"mutability":"mutable","name":"_cborValue","nameLocation":"23279:10:15","nodeType":"VariableDeclaration","scope":3057,"src":"23260:29:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":3043,"nodeType":"UserDefinedTypeName","pathNode":{"id":3042,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"23260:11:15"},"referencedDeclaration":4356,"src":"23260:11:15","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"23259:31:15"},"returnParameters":{"id":3050,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3049,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3057,"src":"23347:20:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3048,"nodeType":"UserDefinedTypeName","pathNode":{"id":3047,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"23347:13:15"},"referencedDeclaration":4342,"src":"23347:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"23346:22:15"},"scope":3416,"src":"23231:213:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4139],"body":{"id":3071,"nodeType":"Block","src":"23718:38:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3067,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3061,"src":"23735:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isOk","nodeType":"MemberAccess","referencedDeclaration":6458,"src":"23735:12:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (bool)"}},"id":3069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"23735:14:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":3066,"id":3070,"nodeType":"Return","src":"23728:21:15"}]},"documentation":{"id":3058,"nodeType":"StructuredDocumentation","src":"23450:153:15","text":"Tell if a Witnet.Result is successful.\n @param _result An instance of Witnet.Result.\n @return `true` if successful, `false` if errored."},"functionSelector":"a8604c1a","id":3072,"implemented":true,"kind":"function","modifiers":[],"name":"isOk","nameLocation":"23617:4:15","nodeType":"FunctionDefinition","overrides":{"id":3063,"nodeType":"OverrideSpecifier","overrides":[],"src":"23682:8:15"},"parameters":{"id":3062,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3061,"mutability":"mutable","name":"_result","nameLocation":"23643:7:15","nodeType":"VariableDeclaration","scope":3072,"src":"23622:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3060,"nodeType":"UserDefinedTypeName","pathNode":{"id":3059,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"23622:13:15"},"referencedDeclaration":4342,"src":"23622:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"23621:30:15"},"returnParameters":{"id":3066,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3065,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3072,"src":"23708:4:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3064,"name":"bool","nodeType":"ElementaryTypeName","src":"23708:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"23707:6:15"},"scope":3416,"src":"23608:148:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4148],"body":{"id":3086,"nodeType":"Block","src":"24030:41:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3082,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3076,"src":"24047:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3083,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"isError","nodeType":"MemberAccess","referencedDeclaration":6472,"src":"24047:15:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (bool)"}},"id":3084,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"24047:17:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":3081,"id":3085,"nodeType":"Return","src":"24040:24:15"}]},"documentation":{"id":3073,"nodeType":"StructuredDocumentation","src":"23762:150:15","text":"Tell if a Witnet.Result is errored.\n @param _result An instance of Witnet.Result.\n @return `true` if errored, `false` if successful."},"functionSelector":"7780cde1","id":3087,"implemented":true,"kind":"function","modifiers":[],"name":"isError","nameLocation":"23926:7:15","nodeType":"FunctionDefinition","overrides":{"id":3078,"nodeType":"OverrideSpecifier","overrides":[],"src":"23994:8:15"},"parameters":{"id":3077,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3076,"mutability":"mutable","name":"_result","nameLocation":"23955:7:15","nodeType":"VariableDeclaration","scope":3087,"src":"23934:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3075,"nodeType":"UserDefinedTypeName","pathNode":{"id":3074,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"23934:13:15"},"referencedDeclaration":4342,"src":"23934:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"23933:30:15"},"returnParameters":{"id":3081,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3080,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3087,"src":"24020:4:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3079,"name":"bool","nodeType":"ElementaryTypeName","src":"24020:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"24019:6:15"},"scope":3416,"src":"23917:154:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4157],"body":{"id":3101,"nodeType":"Block","src":"24381:41:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3097,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3091,"src":"24398:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3098,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asBytes","nodeType":"MemberAccess","referencedDeclaration":6493,"src":"24398:15:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bytes_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (bytes memory)"}},"id":3099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"24398:17:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":3096,"id":3100,"nodeType":"Return","src":"24391:24:15"}]},"documentation":{"id":3088,"nodeType":"StructuredDocumentation","src":"24077:178:15","text":"Decode a bytes value from a Witnet.Result as a `bytes` value.\n @param _result An instance of Witnet.Result.\n @return The `bytes` decoded from the Witnet.Result."},"functionSelector":"c683b465","id":3102,"implemented":true,"kind":"function","modifiers":[],"name":"asBytes","nameLocation":"24269:7:15","nodeType":"FunctionDefinition","overrides":{"id":3093,"nodeType":"OverrideSpecifier","overrides":[],"src":"24337:8:15"},"parameters":{"id":3092,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3091,"mutability":"mutable","name":"_result","nameLocation":"24298:7:15","nodeType":"VariableDeclaration","scope":3102,"src":"24277:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3090,"nodeType":"UserDefinedTypeName","pathNode":{"id":3089,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"24277:13:15"},"referencedDeclaration":4342,"src":"24277:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"24276:30:15"},"returnParameters":{"id":3096,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3095,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3102,"src":"24363:12:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":3094,"name":"bytes","nodeType":"ElementaryTypeName","src":"24363:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"24362:14:15"},"scope":3416,"src":"24260:162:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4166],"body":{"id":3116,"nodeType":"Block","src":"24733:43:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3112,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"24750:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3113,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asBytes32","nodeType":"MemberAccess","referencedDeclaration":6514,"src":"24750:17:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bytes32_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (bytes32)"}},"id":3114,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"24750:19:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":3111,"id":3115,"nodeType":"Return","src":"24743:26:15"}]},"documentation":{"id":3103,"nodeType":"StructuredDocumentation","src":"24428:182:15","text":"Decode a bytes value from a Witnet.Result as a `bytes32` value.\n @param _result An instance of Witnet.Result.\n @return The `bytes32` decoded from the Witnet.Result."},"functionSelector":"cf62d115","id":3117,"implemented":true,"kind":"function","modifiers":[],"name":"asBytes32","nameLocation":"24624:9:15","nodeType":"FunctionDefinition","overrides":{"id":3108,"nodeType":"OverrideSpecifier","overrides":[],"src":"24694:8:15"},"parameters":{"id":3107,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3106,"mutability":"mutable","name":"_result","nameLocation":"24655:7:15","nodeType":"VariableDeclaration","scope":3117,"src":"24634:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3105,"nodeType":"UserDefinedTypeName","pathNode":{"id":3104,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"24634:13:15"},"referencedDeclaration":4342,"src":"24634:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"24633:30:15"},"returnParameters":{"id":3111,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3110,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3117,"src":"24720:7:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3109,"name":"bytes32","nodeType":"ElementaryTypeName","src":"24720:7:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"24719:9:15"},"scope":3416,"src":"24615:161:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4176],"body":{"id":3132,"nodeType":"Block","src":"25130:45:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3128,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3121,"src":"25147:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3129,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asErrorCode","nodeType":"MemberAccess","referencedDeclaration":6550,"src":"25147:19:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_enum$_ErrorCodes_$4618_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (enum Witnet.ErrorCodes)"}},"id":3130,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"25147:21:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"functionReturnParameters":3127,"id":3131,"nodeType":"Return","src":"25140:28:15"}]},"documentation":{"id":3118,"nodeType":"StructuredDocumentation","src":"24782:213:15","text":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\n @param _result An instance of `Witnet.Result`.\n @return The `CBORValue.Error memory` decoded from the Witnet.Result."},"functionSelector":"db04f16d","id":3133,"implemented":true,"kind":"function","modifiers":[],"name":"asErrorCode","nameLocation":"25009:11:15","nodeType":"FunctionDefinition","overrides":{"id":3123,"nodeType":"OverrideSpecifier","overrides":[],"src":"25081:8:15"},"parameters":{"id":3122,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3121,"mutability":"mutable","name":"_result","nameLocation":"25042:7:15","nodeType":"VariableDeclaration","scope":3133,"src":"25021:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3120,"nodeType":"UserDefinedTypeName","pathNode":{"id":3119,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"25021:13:15"},"referencedDeclaration":4342,"src":"25021:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"25020:30:15"},"returnParameters":{"id":3127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3126,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3133,"src":"25107:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":3125,"nodeType":"UserDefinedTypeName","pathNode":{"id":3124,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"25107:17:15"},"referencedDeclaration":4618,"src":"25107:17:15","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"}],"src":"25106:19:15"},"scope":3416,"src":"25000:175:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4188],"body":{"id":3184,"nodeType":"Block","src":"25767:416:15","statements":[{"clauses":[{"block":{"id":3159,"nodeType":"Block","src":"25864:49:15","statements":[{"expression":{"components":[{"id":3155,"name":"_code","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3151,"src":"25886:5:15","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},{"id":3156,"name":"_message","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3153,"src":"25893:8:15","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"id":3157,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25885:17:15","typeDescriptions":{"typeIdentifier":"t_tuple$_t_enum$_ErrorCodes_$4618_$_t_string_memory_ptr_$","typeString":"tuple(enum Witnet.ErrorCodes,string memory)"}},"functionReturnParameters":3145,"id":3158,"nodeType":"Return","src":"25878:24:15"}]},"errorName":"","id":3160,"nodeType":"TryCatchClause","parameters":{"id":3154,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3151,"mutability":"mutable","name":"_code","nameLocation":"25833:5:15","nodeType":"VariableDeclaration","scope":3160,"src":"25815:23:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":3150,"nodeType":"UserDefinedTypeName","pathNode":{"id":3149,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"25815:17:15"},"referencedDeclaration":4618,"src":"25815:17:15","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"},{"constant":false,"id":3153,"mutability":"mutable","name":"_message","nameLocation":"25854:8:15","nodeType":"VariableDeclaration","scope":3160,"src":"25840:22:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3152,"name":"string","nodeType":"ElementaryTypeName","src":"25840:6:15","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"25814:49:15"},"src":"25806:107:15"},{"block":{"id":3170,"nodeType":"Block","src":"25958:68:15","statements":[{"expression":{"components":[{"expression":{"expression":{"id":3164,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"25980:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":3165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"25980:17:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":3166,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Unknown","nodeType":"MemberAccess","referencedDeclaration":4362,"src":"25980:25:15","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},{"id":3167,"name":"_reason","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3162,"src":"26007:7:15","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"id":3168,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25979:36:15","typeDescriptions":{"typeIdentifier":"t_tuple$_t_enum$_ErrorCodes_$4618_$_t_string_memory_ptr_$","typeString":"tuple(enum Witnet.ErrorCodes,string memory)"}},"functionReturnParameters":3145,"id":3169,"nodeType":"Return","src":"25972:43:15"}]},"errorName":"Error","id":3171,"nodeType":"TryCatchClause","parameters":{"id":3163,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3162,"mutability":"mutable","name":"_reason","nameLocation":"25949:7:15","nodeType":"VariableDeclaration","scope":3171,"src":"25935:21:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3161,"name":"string","nodeType":"ElementaryTypeName","src":"25935:6:15","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"25934:23:15"},"src":"25923:103:15"},{"block":{"id":3181,"nodeType":"Block","src":"26056:121:15","statements":[{"expression":{"components":[{"expression":{"expression":{"id":3175,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"26078:6:15","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":3176,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"26078:17:15","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":3177,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"UnhandledIntercept","nodeType":"MemberAccess","referencedDeclaration":4617,"src":"26078:36:15","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a206661696c696e6720617373657274","id":3178,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"26116:49:15","typeDescriptions":{"typeIdentifier":"t_stringliteral_fbb50222c74bfe8631293cf020cc5738ef183271e64651aa21f72fe1ef0a08b1","typeString":"literal_string \"WitnetRequestBoardTrustableBase: failing assert\""},"value":"WitnetRequestBoardTrustableBase: failing assert"}],"id":3179,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"26077:89:15","typeDescriptions":{"typeIdentifier":"t_tuple$_t_enum$_ErrorCodes_$4618_$_t_stringliteral_fbb50222c74bfe8631293cf020cc5738ef183271e64651aa21f72fe1ef0a08b1_$","typeString":"tuple(enum Witnet.ErrorCodes,literal_string \"WitnetRequestBoardTrustableBase: failing assert\")"}},"functionReturnParameters":3145,"id":3180,"nodeType":"Return","src":"26070:96:15"}]},"errorName":"","id":3182,"nodeType":"TryCatchClause","parameters":{"id":3174,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3173,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3182,"src":"26042:12:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":3172,"name":"bytes","nodeType":"ElementaryTypeName","src":"26042:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"26041:14:15"},"src":"26035:142:15"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3146,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3137,"src":"25781:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3147,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asErrorMessage","nodeType":"MemberAccess","referencedDeclaration":7034,"src":"25781:22:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_enum$_ErrorCodes_$4618_$_t_string_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (enum Witnet.ErrorCodes,string memory)"}},"id":3148,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"25781:24:15","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_enum$_ErrorCodes_$4618_$_t_string_memory_ptr_$","typeString":"tuple(enum Witnet.ErrorCodes,string memory)"}},"id":3183,"nodeType":"TryStatement","src":"25777:400:15"}]},"documentation":{"id":3134,"nodeType":"StructuredDocumentation","src":"25181:433:15","text":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\n @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\n @param _result An instance of `Witnet.Result`.\n @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."},"functionSelector":"d74803be","id":3185,"implemented":true,"kind":"function","modifiers":[],"name":"asErrorMessage","nameLocation":"25628:14:15","nodeType":"FunctionDefinition","overrides":{"id":3139,"nodeType":"OverrideSpecifier","overrides":[],"src":"25703:8:15"},"parameters":{"id":3138,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3137,"mutability":"mutable","name":"_result","nameLocation":"25664:7:15","nodeType":"VariableDeclaration","scope":3185,"src":"25643:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3136,"nodeType":"UserDefinedTypeName","pathNode":{"id":3135,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"25643:13:15"},"referencedDeclaration":4342,"src":"25643:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"25642:30:15"},"returnParameters":{"id":3145,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3142,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3185,"src":"25729:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":3141,"nodeType":"UserDefinedTypeName","pathNode":{"id":3140,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"25729:17:15"},"referencedDeclaration":4618,"src":"25729:17:15","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"},{"constant":false,"id":3144,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3185,"src":"25748:13:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3143,"name":"string","nodeType":"ElementaryTypeName","src":"25748:6:15","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"25728:34:15"},"scope":3416,"src":"25619:564:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4198],"body":{"id":3200,"nodeType":"Block","src":"26515:44:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3196,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3189,"src":"26532:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3197,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asRawError","nodeType":"MemberAccess","referencedDeclaration":7057,"src":"26532:18:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (uint64[] memory)"}},"id":3198,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"26532:20:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"functionReturnParameters":3195,"id":3199,"nodeType":"Return","src":"26525:27:15"}]},"documentation":{"id":3186,"nodeType":"StructuredDocumentation","src":"26189:195:15","text":"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\n @param _result An instance of `Witnet.Result`.\n @return The `uint64[]` raw error as decoded from the `Witnet.Result`."},"functionSelector":"b0768328","id":3201,"implemented":true,"kind":"function","modifiers":[],"name":"asRawError","nameLocation":"26398:10:15","nodeType":"FunctionDefinition","overrides":{"id":3191,"nodeType":"OverrideSpecifier","overrides":[],"src":"26469:8:15"},"parameters":{"id":3190,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3189,"mutability":"mutable","name":"_result","nameLocation":"26430:7:15","nodeType":"VariableDeclaration","scope":3201,"src":"26409:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3188,"nodeType":"UserDefinedTypeName","pathNode":{"id":3187,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"26409:13:15"},"referencedDeclaration":4342,"src":"26409:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"26408:30:15"},"returnParameters":{"id":3195,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3194,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3201,"src":"26494:15:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":3192,"name":"uint64","nodeType":"ElementaryTypeName","src":"26494:6:15","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":3193,"nodeType":"ArrayTypeName","src":"26494:8:15","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"26493:17:15"},"scope":3416,"src":"26389:170:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4207],"body":{"id":3215,"nodeType":"Block","src":"26861:40:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3211,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3205,"src":"26878:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3212,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asBool","nodeType":"MemberAccess","referencedDeclaration":7078,"src":"26878:14:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (bool)"}},"id":3213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"26878:16:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":3210,"id":3214,"nodeType":"Return","src":"26871:23:15"}]},"documentation":{"id":3202,"nodeType":"StructuredDocumentation","src":"26565:179:15","text":"Decode a boolean value from a Witnet.Result as an `bool` value.\n @param _result An instance of Witnet.Result.\n @return The `bool` decoded from the Witnet.Result."},"functionSelector":"d4ced132","id":3216,"implemented":true,"kind":"function","modifiers":[],"name":"asBool","nameLocation":"26758:6:15","nodeType":"FunctionDefinition","overrides":{"id":3207,"nodeType":"OverrideSpecifier","overrides":[],"src":"26825:8:15"},"parameters":{"id":3206,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3205,"mutability":"mutable","name":"_result","nameLocation":"26786:7:15","nodeType":"VariableDeclaration","scope":3216,"src":"26765:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3204,"nodeType":"UserDefinedTypeName","pathNode":{"id":3203,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"26765:13:15"},"referencedDeclaration":4342,"src":"26765:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"26764:30:15"},"returnParameters":{"id":3210,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3209,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3216,"src":"26851:4:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3208,"name":"bool","nodeType":"ElementaryTypeName","src":"26851:4:15","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"26850:6:15"},"scope":3416,"src":"26749:152:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4216],"body":{"id":3230,"nodeType":"Block","src":"27600:43:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3226,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3220,"src":"27617:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3227,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asFixed16","nodeType":"MemberAccess","referencedDeclaration":7099,"src":"27617:17:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_int32_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (int32)"}},"id":3228,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"27617:19:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"functionReturnParameters":3225,"id":3229,"nodeType":"Return","src":"27610:26:15"}]},"documentation":{"id":3217,"nodeType":"StructuredDocumentation","src":"26907:572:15","text":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\n @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\n by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\n use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n @param _result An instance of Witnet.Result.\n @return The `int128` decoded from the Witnet.Result."},"functionSelector":"2241f2db","id":3231,"implemented":true,"kind":"function","modifiers":[],"name":"asFixed16","nameLocation":"27493:9:15","nodeType":"FunctionDefinition","overrides":{"id":3222,"nodeType":"OverrideSpecifier","overrides":[],"src":"27563:8:15"},"parameters":{"id":3221,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3220,"mutability":"mutable","name":"_result","nameLocation":"27524:7:15","nodeType":"VariableDeclaration","scope":3231,"src":"27503:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3219,"nodeType":"UserDefinedTypeName","pathNode":{"id":3218,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"27503:13:15"},"referencedDeclaration":4342,"src":"27503:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"27502:30:15"},"returnParameters":{"id":3225,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3224,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3231,"src":"27589:5:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":3223,"name":"int32","nodeType":"ElementaryTypeName","src":"27589:5:15","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"27588:7:15"},"scope":3416,"src":"27484:159:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4226],"body":{"id":3246,"nodeType":"Block","src":"27982:48:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3242,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3235,"src":"27999:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asFixed16Array","nodeType":"MemberAccess","referencedDeclaration":7121,"src":"27999:22:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_int32_$dyn_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (int32[] memory)"}},"id":3244,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"27999:24:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[] memory"}},"functionReturnParameters":3241,"id":3245,"nodeType":"Return","src":"27992:31:15"}]},"documentation":{"id":3232,"nodeType":"StructuredDocumentation","src":"27649:198:15","text":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\n @param _result An instance of Witnet.Result.\n @return The `int128[]` decoded from the Witnet.Result."},"functionSelector":"0f572d2c","id":3247,"implemented":true,"kind":"function","modifiers":[],"name":"asFixed16Array","nameLocation":"27861:14:15","nodeType":"FunctionDefinition","overrides":{"id":3237,"nodeType":"OverrideSpecifier","overrides":[],"src":"27936:8:15"},"parameters":{"id":3236,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3235,"mutability":"mutable","name":"_result","nameLocation":"27897:7:15","nodeType":"VariableDeclaration","scope":3247,"src":"27876:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3234,"nodeType":"UserDefinedTypeName","pathNode":{"id":3233,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"27876:13:15"},"referencedDeclaration":4342,"src":"27876:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"27875:30:15"},"returnParameters":{"id":3241,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3240,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3247,"src":"27962:14:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[]"},"typeName":{"baseType":{"id":3238,"name":"int32","nodeType":"ElementaryTypeName","src":"27962:5:15","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":3239,"nodeType":"ArrayTypeName","src":"27962:7:15","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}},"visibility":"internal"}],"src":"27961:16:15"},"scope":3416,"src":"27852:178:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4235],"body":{"id":3261,"nodeType":"Block","src":"28348:42:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3257,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3251,"src":"28365:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3258,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asInt128","nodeType":"MemberAccess","referencedDeclaration":7142,"src":"28365:16:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_int128_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (int128)"}},"id":3259,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"28365:18:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"functionReturnParameters":3256,"id":3260,"nodeType":"Return","src":"28358:25:15"}]},"documentation":{"id":3248,"nodeType":"StructuredDocumentation","src":"28036:191:15","text":"Decode a integer numeric value from a Witnet.Result as an `int128` value.\n @param _result An instance of Witnet.Result.\n @return The `int128` decoded from the Witnet.Result."},"functionSelector":"2b905fbb","id":3262,"implemented":true,"kind":"function","modifiers":[],"name":"asInt128","nameLocation":"28241:8:15","nodeType":"FunctionDefinition","overrides":{"id":3253,"nodeType":"OverrideSpecifier","overrides":[],"src":"28310:8:15"},"parameters":{"id":3252,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3251,"mutability":"mutable","name":"_result","nameLocation":"28271:7:15","nodeType":"VariableDeclaration","scope":3262,"src":"28250:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3250,"nodeType":"UserDefinedTypeName","pathNode":{"id":3249,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"28250:13:15"},"referencedDeclaration":4342,"src":"28250:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"28249:30:15"},"returnParameters":{"id":3256,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3255,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3262,"src":"28336:6:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"},"typeName":{"id":3254,"name":"int128","nodeType":"ElementaryTypeName","src":"28336:6:15","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"visibility":"internal"}],"src":"28335:8:15"},"scope":3416,"src":"28232:158:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4245],"body":{"id":3277,"nodeType":"Block","src":"28737:47:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3273,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3266,"src":"28754:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3274,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asInt128Array","nodeType":"MemberAccess","referencedDeclaration":7164,"src":"28754:21:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_int128_$dyn_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (int128[] memory)"}},"id":3275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"28754:23:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[] memory"}},"functionReturnParameters":3272,"id":3276,"nodeType":"Return","src":"28747:30:15"}]},"documentation":{"id":3263,"nodeType":"StructuredDocumentation","src":"28396:206:15","text":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\n @param _result An instance of Witnet.Result.\n @return The `int128[]` decoded from the Witnet.Result."},"functionSelector":"07e66852","id":3278,"implemented":true,"kind":"function","modifiers":[],"name":"asInt128Array","nameLocation":"28616:13:15","nodeType":"FunctionDefinition","overrides":{"id":3268,"nodeType":"OverrideSpecifier","overrides":[],"src":"28690:8:15"},"parameters":{"id":3267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3266,"mutability":"mutable","name":"_result","nameLocation":"28651:7:15","nodeType":"VariableDeclaration","scope":3278,"src":"28630:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3265,"nodeType":"UserDefinedTypeName","pathNode":{"id":3264,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"28630:13:15"},"referencedDeclaration":4342,"src":"28630:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"28629:30:15"},"returnParameters":{"id":3272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3271,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3278,"src":"28716:15:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[]"},"typeName":{"baseType":{"id":3269,"name":"int128","nodeType":"ElementaryTypeName","src":"28716:6:15","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":3270,"nodeType":"ArrayTypeName","src":"28716:8:15","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}},"visibility":"internal"}],"src":"28715:17:15"},"scope":3416,"src":"28607:177:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4254],"body":{"id":3292,"nodeType":"Block","src":"29099:42:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3288,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3282,"src":"29116:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3289,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asString","nodeType":"MemberAccess","referencedDeclaration":7185,"src":"29116:16:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_string_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (string memory)"}},"id":3290,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"29116:18:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":3287,"id":3291,"nodeType":"Return","src":"29109:25:15"}]},"documentation":{"id":3279,"nodeType":"StructuredDocumentation","src":"28790:181:15","text":"Decode a string value from a Witnet.Result as a `string` value.\n @param _result An instance of Witnet.Result.\n @return The `string` decoded from the Witnet.Result."},"functionSelector":"109a0e3c","id":3293,"implemented":true,"kind":"function","modifiers":[],"name":"asString","nameLocation":"28985:8:15","nodeType":"FunctionDefinition","overrides":{"id":3284,"nodeType":"OverrideSpecifier","overrides":[],"src":"29054:8:15"},"parameters":{"id":3283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3282,"mutability":"mutable","name":"_result","nameLocation":"29015:7:15","nodeType":"VariableDeclaration","scope":3293,"src":"28994:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3281,"nodeType":"UserDefinedTypeName","pathNode":{"id":3280,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"28994:13:15"},"referencedDeclaration":4342,"src":"28994:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"28993:30:15"},"returnParameters":{"id":3287,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3286,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3293,"src":"29080:13:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3285,"name":"string","nodeType":"ElementaryTypeName","src":"29080:6:15","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"29079:15:15"},"scope":3416,"src":"28976:165:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4264],"body":{"id":3308,"nodeType":"Block","src":"29478:47:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3304,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3297,"src":"29495:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3305,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asStringArray","nodeType":"MemberAccess","referencedDeclaration":7207,"src":"29495:21:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (string memory[] memory)"}},"id":3306,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"29495:23:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"functionReturnParameters":3303,"id":3307,"nodeType":"Return","src":"29488:30:15"}]},"documentation":{"id":3294,"nodeType":"StructuredDocumentation","src":"29147:196:15","text":"Decode an array of string values from a Witnet.Result as a `string[]` value.\n @param _result An instance of Witnet.Result.\n @return The `string[]` decoded from the Witnet.Result."},"functionSelector":"c87d969e","id":3309,"implemented":true,"kind":"function","modifiers":[],"name":"asStringArray","nameLocation":"29357:13:15","nodeType":"FunctionDefinition","overrides":{"id":3299,"nodeType":"OverrideSpecifier","overrides":[],"src":"29431:8:15"},"parameters":{"id":3298,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3297,"mutability":"mutable","name":"_result","nameLocation":"29392:7:15","nodeType":"VariableDeclaration","scope":3309,"src":"29371:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3296,"nodeType":"UserDefinedTypeName","pathNode":{"id":3295,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"29371:13:15"},"referencedDeclaration":4342,"src":"29371:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"29370:30:15"},"returnParameters":{"id":3303,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3302,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3309,"src":"29457:15:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":3300,"name":"string","nodeType":"ElementaryTypeName","src":"29457:6:15","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":3301,"nodeType":"ArrayTypeName","src":"29457:8:15","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"29456:17:15"},"scope":3416,"src":"29348:177:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4273],"body":{"id":3323,"nodeType":"Block","src":"29842:42:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3319,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3313,"src":"29859:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3320,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asUint64","nodeType":"MemberAccess","referencedDeclaration":7228,"src":"29859:16:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_uint64_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (uint64)"}},"id":3321,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"29859:18:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":3318,"id":3322,"nodeType":"Return","src":"29852:25:15"}]},"documentation":{"id":3310,"nodeType":"StructuredDocumentation","src":"29531:190:15","text":"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\n @param _result An instance of Witnet.Result.\n @return The `uint64` decoded from the Witnet.Result."},"functionSelector":"bc7e25ff","id":3324,"implemented":true,"kind":"function","modifiers":[],"name":"asUint64","nameLocation":"29735:8:15","nodeType":"FunctionDefinition","overrides":{"id":3315,"nodeType":"OverrideSpecifier","overrides":[],"src":"29805:8:15"},"parameters":{"id":3314,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3313,"mutability":"mutable","name":"_result","nameLocation":"29765:7:15","nodeType":"VariableDeclaration","scope":3324,"src":"29744:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3312,"nodeType":"UserDefinedTypeName","pathNode":{"id":3311,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"29744:13:15"},"referencedDeclaration":4342,"src":"29744:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"29743:30:15"},"returnParameters":{"id":3318,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3317,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3324,"src":"29830:6:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":3316,"name":"uint64","nodeType":"ElementaryTypeName","src":"29830:6:15","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"29829:8:15"},"scope":3416,"src":"29726:158:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"baseFunctions":[4283],"body":{"id":3339,"nodeType":"Block","src":"30230:47:15","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":3335,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3328,"src":"30247:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":3336,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"asUint64Array","nodeType":"MemberAccess","referencedDeclaration":7250,"src":"30247:21:15","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$bound_to$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (uint64[] memory)"}},"id":3337,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"30247:23:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"functionReturnParameters":3334,"id":3338,"nodeType":"Return","src":"30240:30:15"}]},"documentation":{"id":3325,"nodeType":"StructuredDocumentation","src":"29890:205:15","text":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\n @param _result An instance of Witnet.Result.\n @return The `uint64[]` decoded from the Witnet.Result."},"functionSelector":"4dcffaf3","id":3340,"implemented":true,"kind":"function","modifiers":[],"name":"asUint64Array","nameLocation":"30109:13:15","nodeType":"FunctionDefinition","overrides":{"id":3330,"nodeType":"OverrideSpecifier","overrides":[],"src":"30183:8:15"},"parameters":{"id":3329,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3328,"mutability":"mutable","name":"_result","nameLocation":"30144:7:15","nodeType":"VariableDeclaration","scope":3340,"src":"30123:28:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":3327,"nodeType":"UserDefinedTypeName","pathNode":{"id":3326,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"30123:13:15"},"referencedDeclaration":4342,"src":"30123:13:15","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"30122:30:15"},"returnParameters":{"id":3334,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3333,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3340,"src":"30209:15:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":3331,"name":"uint64","nodeType":"ElementaryTypeName","src":"30209:6:15","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":3332,"nodeType":"ArrayTypeName","src":"30209:8:15","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"30208:17:15"},"scope":3416,"src":"30100:177:15","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":3414,"nodeType":"Block","src":"30744:610:15","statements":[{"assignments":[3357],"declarations":[{"constant":false,"id":3357,"mutability":"mutable","name":"__query","nameLocation":"30775:7:15","nodeType":"VariableDeclaration","scope":3414,"src":"30754:28:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"},"typeName":{"id":3356,"nodeType":"UserDefinedTypeName","pathNode":{"id":3355,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"30754:12:15"},"referencedDeclaration":4310,"src":"30754:12:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}},"visibility":"internal"}],"id":3363,"initialValue":{"baseExpression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":3358,"name":"_state","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1553,"src":"30785:6:15","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetBoardState_$1290_storage_ptr_$","typeString":"function () pure returns (struct WitnetBoardData.WitnetBoardState storage pointer)"}},"id":3359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"30785:8:15","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetBoardState_$1290_storage_ptr","typeString":"struct WitnetBoardData.WitnetBoardState storage pointer"}},"id":3360,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"queries","nodeType":"MemberAccess","referencedDeclaration":1289,"src":"30785:16:15","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Query_$4310_storage_$","typeString":"mapping(uint256 => struct Witnet.Query storage ref)"}},"id":3362,"indexExpression":{"id":3361,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3342,"src":"30802:8:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30785:26:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage","typeString":"struct Witnet.Query storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30754:57:15"},{"assignments":[3368],"declarations":[{"constant":false,"id":3368,"mutability":"mutable","name":"__request","nameLocation":"30844:9:15","nodeType":"VariableDeclaration","scope":3414,"src":"30821:32:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":3367,"nodeType":"UserDefinedTypeName","pathNode":{"id":3366,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"30821:14:15"},"referencedDeclaration":4327,"src":"30821:14:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"id":3371,"initialValue":{"expression":{"id":3369,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3357,"src":"30856:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":3370,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"request","nodeType":"MemberAccess","referencedDeclaration":4304,"src":"30856:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage","typeString":"struct Witnet.Request storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30821:50:15"},{"assignments":[3376],"declarations":[{"constant":false,"id":3376,"mutability":"mutable","name":"__response","nameLocation":"30905:10:15","nodeType":"VariableDeclaration","scope":3414,"src":"30881:34:15","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":3375,"nodeType":"UserDefinedTypeName","pathNode":{"id":3374,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"30881:15:15"},"referencedDeclaration":4336,"src":"30881:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"id":3379,"initialValue":{"expression":{"id":3377,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3357,"src":"30918:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":3378,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"response","nodeType":"MemberAccess","referencedDeclaration":4307,"src":"30918:16:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage","typeString":"struct Witnet.Response storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30881:53:15"},{"expression":{"id":3384,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":3380,"name":"__response","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3376,"src":"30989:10:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":3382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"timestamp","nodeType":"MemberAccess","referencedDeclaration":4331,"src":"30989:20:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":3383,"name":"_timestamp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3344,"src":"31012:10:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30989:33:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":3385,"nodeType":"ExpressionStatement","src":"30989:33:15"},{"expression":{"id":3390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":3386,"name":"__response","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3376,"src":"31032:10:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":3388,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"drTxHash","nodeType":"MemberAccess","referencedDeclaration":4333,"src":"31032:19:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":3389,"name":"_drTxHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3346,"src":"31054:9:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"31032:31:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":3391,"nodeType":"ExpressionStatement","src":"31032:31:15"},{"expression":{"id":3397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":3392,"name":"__response","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3376,"src":"31073:10:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":3394,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"reporter","nodeType":"MemberAccess","referencedDeclaration":4329,"src":"31073:19:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":3395,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"31095:3:15","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":3396,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"31095:10:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"31073:32:15","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":3398,"nodeType":"ExpressionStatement","src":"31073:32:15"},{"expression":{"id":3403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":3399,"name":"__response","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3376,"src":"31115:10:15","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response storage pointer"}},"id":3401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cborBytes","nodeType":"MemberAccess","referencedDeclaration":4335,"src":"31115:20:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":3402,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3348,"src":"31138:10:15","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"31115:33:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":3404,"nodeType":"ExpressionStatement","src":"31115:33:15"},{"expression":{"id":3408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":3405,"name":"_reward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3351,"src":"31199:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":3406,"name":"__request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3368,"src":"31209:9:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request storage pointer"}},"id":3407,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"reward","nodeType":"MemberAccess","referencedDeclaration":4326,"src":"31209:16:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"31199:26:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":3409,"nodeType":"ExpressionStatement","src":"31199:26:15"},{"expression":{"id":3412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"31325:22:15","subExpression":{"expression":{"id":3410,"name":"__query","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3357,"src":"31332:7:15","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query storage pointer"}},"id":3411,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"request","nodeType":"MemberAccess","referencedDeclaration":4304,"src":"31332:15:15","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage","typeString":"struct Witnet.Request storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":3413,"nodeType":"ExpressionStatement","src":"31325:22:15"}]},"id":3415,"implemented":true,"kind":"function","modifiers":[],"name":"__reportResult","nameLocation":"30534:14:15","nodeType":"FunctionDefinition","parameters":{"id":3349,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3342,"mutability":"mutable","name":"_queryId","nameLocation":"30570:8:15","nodeType":"VariableDeclaration","scope":3415,"src":"30562:16:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3341,"name":"uint256","nodeType":"ElementaryTypeName","src":"30562:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3344,"mutability":"mutable","name":"_timestamp","nameLocation":"30600:10:15","nodeType":"VariableDeclaration","scope":3415,"src":"30592:18:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3343,"name":"uint256","nodeType":"ElementaryTypeName","src":"30592:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3346,"mutability":"mutable","name":"_drTxHash","nameLocation":"30632:9:15","nodeType":"VariableDeclaration","scope":3415,"src":"30624:17:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3345,"name":"bytes32","nodeType":"ElementaryTypeName","src":"30624:7:15","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":3348,"mutability":"mutable","name":"_cborBytes","nameLocation":"30668:10:15","nodeType":"VariableDeclaration","scope":3415,"src":"30655:23:15","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":3347,"name":"bytes","nodeType":"ElementaryTypeName","src":"30655:5:15","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"30548:140:15"},"returnParameters":{"id":3352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3351,"mutability":"mutable","name":"_reward","nameLocation":"30731:7:15","nodeType":"VariableDeclaration","scope":3415,"src":"30723:15:15","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3350,"name":"uint256","nodeType":"ElementaryTypeName","src":"30723:7:15","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30722:17:15"},"scope":3416,"src":"30525:829:15","stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"scope":3417,"src":"776:30580:15","usedErrors":[]}],"src":"33:31324:15"},"id":15},"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol","exportedSymbols":{"Destructible":[7986],"IERC20":[3611],"IWitnetRequest":[3829],"IWitnetRequestBoardAdmin":[3851],"IWitnetRequestBoardAdminACLs":[3887],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Payable":[8151],"Proxiable":[8160],"Upgradable":[8256],"Witnet":[4619],"WitnetBoardData":[1554],"WitnetBoardDataACLs":[1604],"WitnetBuffer":[5261],"WitnetDecoderLib":[6386],"WitnetParserLib":[7528],"WitnetProxy":[1816],"WitnetRequestBoard":[481],"WitnetRequestBoardTrustableBase":[3416],"WitnetRequestBoardTrustableDefault":[3521],"WitnetRequestBoardUpgradableBase":[1878]},"id":3522,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3418,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"75:31:16"},{"id":3419,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"107:33:16"},{"absolutePath":"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol","file":"./WitnetRequestBoardTrustableBase.sol","id":3420,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3522,"sourceUnit":3417,"src":"142:47:16","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Destructible.sol","file":"../../patterns/Destructible.sol","id":3421,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3522,"sourceUnit":7987,"src":"190:41:16","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":3423,"name":"Destructible","nodeType":"IdentifierPath","referencedDeclaration":7986,"src":"674:12:16"},"id":3424,"nodeType":"InheritanceSpecifier","src":"674:12:16"},{"baseName":{"id":3425,"name":"WitnetRequestBoardTrustableBase","nodeType":"IdentifierPath","referencedDeclaration":3416,"src":"696:31:16"},"id":3426,"nodeType":"InheritanceSpecifier","src":"696:31:16"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":3422,"nodeType":"StructuredDocumentation","src":"233:381:16","text":"@title Witnet Request Board \"trustable\" implementation contract.\n @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\n @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\n The result of the requests will be posted back to this contract by the bridge nodes too.\n @author The Witnet Foundation"},"fullyImplemented":true,"id":3521,"linearizedBaseContracts":[3521,3416,1878,481,4284,4106,3993,3963,3912,8256,8160,7995,1604,1554,3887,3851,8151,7986],"name":"WitnetRequestBoardTrustableDefault","nameLocation":"623:34:16","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":3428,"mutability":"immutable","name":"_ESTIMATED_REPORT_RESULT_GAS","nameLocation":"763:28:16","nodeType":"VariableDeclaration","scope":3521,"src":"736:55:16","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3427,"name":"uint256","nodeType":"ElementaryTypeName","src":"736:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"body":{"id":3449,"nodeType":"Block","src":"992:69:16","statements":[{"expression":{"id":3447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":3445,"name":"_ESTIMATED_REPORT_RESULT_GAS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3428,"src":"1002:28:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":3446,"name":"_reportResultGasLimit","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3434,"src":"1033:21:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1002:52:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":3448,"nodeType":"ExpressionStatement","src":"1002:52:16"}]},"id":3450,"implemented":true,"kind":"constructor","modifiers":[{"arguments":[{"id":3437,"name":"_upgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3430,"src":"950:11:16","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"id":3438,"name":"_versionTag","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3432,"src":"963:11:16","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":3441,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"984:1:16","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":3440,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"976:7:16","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":3439,"name":"address","nodeType":"ElementaryTypeName","src":"976:7:16","typeDescriptions":{}}},"id":3442,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"976:10:16","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":3443,"kind":"baseConstructorSpecifier","modifierName":{"id":3436,"name":"WitnetRequestBoardTrustableBase","nodeType":"IdentifierPath","referencedDeclaration":3416,"src":"918:31:16"},"nodeType":"ModifierInvocation","src":"918:69:16"}],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":3435,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3430,"mutability":"mutable","name":"_upgradable","nameLocation":"824:11:16","nodeType":"VariableDeclaration","scope":3450,"src":"819:16:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3429,"name":"bool","nodeType":"ElementaryTypeName","src":"819:4:16","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":3432,"mutability":"mutable","name":"_versionTag","nameLocation":"853:11:16","nodeType":"VariableDeclaration","scope":3450,"src":"845:19:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3431,"name":"bytes32","nodeType":"ElementaryTypeName","src":"845:7:16","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":3434,"mutability":"mutable","name":"_reportResultGasLimit","nameLocation":"882:21:16","nodeType":"VariableDeclaration","scope":3450,"src":"874:29:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3433,"name":"uint256","nodeType":"ElementaryTypeName","src":"874:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"809:100:16"},"returnParameters":{"id":3444,"nodeType":"ParameterList","parameters":[],"src":"992:0:16"},"scope":3521,"src":"798:263:16","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[2706],"body":{"id":3463,"nodeType":"Block","src":"1590:64:16","statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":3461,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":3459,"name":"_gasPrice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3453,"src":"1607:9:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":3460,"name":"_ESTIMATED_REPORT_RESULT_GAS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3428,"src":"1619:28:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1607:40:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":3458,"id":3462,"nodeType":"Return","src":"1600:47:16"}]},"documentation":{"id":3451,"nodeType":"StructuredDocumentation","src":"1309:158:16","text":"Estimates the amount of reward we need to insert for a given gas price.\n @param _gasPrice The gas price for which we need to calculate the rewards."},"functionSelector":"d2e87561","id":3464,"implemented":true,"kind":"function","modifiers":[],"name":"estimateReward","nameLocation":"1481:14:16","nodeType":"FunctionDefinition","overrides":{"id":3455,"nodeType":"OverrideSpecifier","overrides":[],"src":"1551:8:16"},"parameters":{"id":3454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3453,"mutability":"mutable","name":"_gasPrice","nameLocation":"1504:9:16","nodeType":"VariableDeclaration","scope":3464,"src":"1496:17:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3452,"name":"uint256","nodeType":"ElementaryTypeName","src":"1496:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1495:19:16"},"returnParameters":{"id":3458,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3457,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3464,"src":"1577:7:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3456,"name":"uint256","nodeType":"ElementaryTypeName","src":"1577:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1576:9:16"},"scope":3521,"src":"1472:182:16","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[7985],"body":{"id":3479,"nodeType":"Block","src":"2013:50:16","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":3474,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2044:3:16","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":3475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"2044:10:16","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":3473,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2036:8:16","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":3472,"name":"address","nodeType":"ElementaryTypeName","src":"2036:8:16","stateMutability":"payable","typeDescriptions":{}}},"id":3476,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2036:19:16","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":3471,"name":"selfdestruct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-21,"src":"2023:12:16","typeDescriptions":{"typeIdentifier":"t_function_selfdestruct_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":3477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2023:33:16","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":3478,"nodeType":"ExpressionStatement","src":"2023:33:16"}]},"documentation":{"id":3465,"nodeType":"StructuredDocumentation","src":"1902:58:16","text":"Destroys current instance. Only callable by the owner."},"functionSelector":"2b68b9c6","id":3480,"implemented":true,"kind":"function","modifiers":[{"id":3469,"kind":"modifierInvocation","modifierName":{"id":3468,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":1369,"src":"2003:9:16"},"nodeType":"ModifierInvocation","src":"2003:9:16"}],"name":"destruct","nameLocation":"1974:8:16","nodeType":"FunctionDefinition","overrides":{"id":3467,"nodeType":"OverrideSpecifier","overrides":[],"src":"1994:8:16"},"parameters":{"id":3466,"nodeType":"ParameterList","parameters":[],"src":"1982:2:16"},"returnParameters":{"id":3470,"nodeType":"ParameterList","parameters":[],"src":"2013:0:16"},"scope":3521,"src":"1965:98:16","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"baseFunctions":[8136],"body":{"id":3490,"nodeType":"Block","src":"2444:35:16","statements":[{"expression":{"expression":{"id":3487,"name":"tx","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-26,"src":"2461:2:16","typeDescriptions":{"typeIdentifier":"t_magic_transaction","typeString":"tx"}},"id":3488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"gasprice","nodeType":"MemberAccess","src":"2461:11:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":3486,"id":3489,"nodeType":"Return","src":"2454:18:16"}]},"documentation":{"id":3481,"nodeType":"StructuredDocumentation","src":"2311:35:16","text":"Gets current transaction price."},"id":3491,"implemented":true,"kind":"function","modifiers":[],"name":"_getGasPrice","nameLocation":"2360:12:16","nodeType":"FunctionDefinition","overrides":{"id":3483,"nodeType":"OverrideSpecifier","overrides":[],"src":"2405:8:16"},"parameters":{"id":3482,"nodeType":"ParameterList","parameters":[],"src":"2372:2:16"},"returnParameters":{"id":3486,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3485,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3491,"src":"2431:7:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3484,"name":"uint256","nodeType":"ElementaryTypeName","src":"2431:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2430:9:16"},"scope":3521,"src":"2351:128:16","stateMutability":"view","virtual":false,"visibility":"internal"},{"baseFunctions":[8142],"body":{"id":3501,"nodeType":"Block","src":"2614:33:16","statements":[{"expression":{"expression":{"id":3498,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2631:3:16","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":3499,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"2631:9:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":3497,"id":3500,"nodeType":"Return","src":"2624:16:16"}]},"documentation":{"id":3492,"nodeType":"StructuredDocumentation","src":"2485:31:16","text":"Gets current payment value."},"id":3502,"implemented":true,"kind":"function","modifiers":[],"name":"_getMsgValue","nameLocation":"2530:12:16","nodeType":"FunctionDefinition","overrides":{"id":3494,"nodeType":"OverrideSpecifier","overrides":[],"src":"2575:8:16"},"parameters":{"id":3493,"nodeType":"ParameterList","parameters":[],"src":"2542:2:16"},"returnParameters":{"id":3497,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3496,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3502,"src":"2601:7:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3495,"name":"uint256","nodeType":"ElementaryTypeName","src":"2601:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2600:9:16"},"scope":3521,"src":"2521:126:16","stateMutability":"view","virtual":false,"visibility":"internal"},{"baseFunctions":[8150],"body":{"id":3519,"nodeType":"Block","src":"2884:47:16","statements":[{"expression":{"arguments":[{"id":3516,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3507,"src":"2916:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":3513,"name":"_to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3505,"src":"2902:3:16","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":3512,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2894:8:16","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":3511,"name":"address","nodeType":"ElementaryTypeName","src":"2894:8:16","stateMutability":"payable","typeDescriptions":{}}},"id":3514,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2894:12:16","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":3515,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transfer","nodeType":"MemberAccess","src":"2894:21:16","typeDescriptions":{"typeIdentifier":"t_function_transfer_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":3517,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2894:30:16","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":3518,"nodeType":"ExpressionStatement","src":"2894:30:16"}]},"documentation":{"id":3503,"nodeType":"StructuredDocumentation","src":"2653:125:16","text":"Transfers ETHs to given address.\n @param _to Recipient address.\n @param _amount Amount of ETHs to transfer."},"id":3520,"implemented":true,"kind":"function","modifiers":[],"name":"_safeTransferTo","nameLocation":"2792:15:16","nodeType":"FunctionDefinition","overrides":{"id":3509,"nodeType":"OverrideSpecifier","overrides":[],"src":"2871:8:16"},"parameters":{"id":3508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3505,"mutability":"mutable","name":"_to","nameLocation":"2824:3:16","nodeType":"VariableDeclaration","scope":3520,"src":"2808:19:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":3504,"name":"address","nodeType":"ElementaryTypeName","src":"2808:15:16","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":3507,"mutability":"mutable","name":"_amount","nameLocation":"2837:7:16","nodeType":"VariableDeclaration","scope":3520,"src":"2829:15:16","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3506,"name":"uint256","nodeType":"ElementaryTypeName","src":"2829:7:16","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2807:38:16"},"returnParameters":{"id":3510,"nodeType":"ParameterList","parameters":[],"src":"2884:0:16"},"scope":3521,"src":"2783:148:16","stateMutability":"nonpayable","virtual":false,"visibility":"internal"}],"scope":3522,"src":"614:2322:16","usedErrors":[]}],"src":"75:2862:16"},"id":16},"witnet-solidity-bridge/contracts/interfaces/IERC165.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IERC165.sol","exportedSymbols":{"IERC165":[3533]},"id":3534,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3523,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:17"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3524,"nodeType":"StructuredDocumentation","src":"66:279:17","text":" @dev Interface of the ERC165 standard, as defined in the\n https://eips.ethereum.org/EIPS/eip-165[EIP].\n Implementers can declare support of contract interfaces, which can then be\n queried by others ({ERC165Checker}).\n For an implementation, see {ERC165}."},"fullyImplemented":false,"id":3533,"linearizedBaseContracts":[3533],"name":"IERC165","nameLocation":"356:7:17","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3525,"nodeType":"StructuredDocumentation","src":"370:340:17","text":" @dev Returns true if this contract implements the interface defined by\n `interfaceId`. See the corresponding\n https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\n to learn more about how these ids are created.\n This function call must use less than 30 000 gas."},"functionSelector":"01ffc9a7","id":3532,"implemented":false,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"724:17:17","nodeType":"FunctionDefinition","parameters":{"id":3528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3527,"mutability":"mutable","name":"interfaceId","nameLocation":"749:11:17","nodeType":"VariableDeclaration","scope":3532,"src":"742:18:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":3526,"name":"bytes4","nodeType":"ElementaryTypeName","src":"742:6:17","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"741:20:17"},"returnParameters":{"id":3531,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3530,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3532,"src":"785:4:17","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3529,"name":"bool","nodeType":"ElementaryTypeName","src":"785:4:17","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"784:6:17"},"scope":3533,"src":"715:76:17","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":3534,"src":"346:447:17","usedErrors":[]}],"src":"33:761:17"},"id":17},"witnet-solidity-bridge/contracts/interfaces/IERC20.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IERC20.sol","exportedSymbols":{"IERC20":[3611]},"id":3612,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3535,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:18"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3536,"nodeType":"StructuredDocumentation","src":"66:70:18","text":" @dev Interface of the ERC20 standard as defined in the EIP."},"fullyImplemented":false,"id":3611,"linearizedBaseContracts":[3611],"name":"IERC20","nameLocation":"147:6:18","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3537,"nodeType":"StructuredDocumentation","src":"160:46:18","text":"Returns the amount of tokens in existence."},"functionSelector":"18160ddd","id":3542,"implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"220:11:18","nodeType":"FunctionDefinition","parameters":{"id":3538,"nodeType":"ParameterList","parameters":[],"src":"231:2:18"},"returnParameters":{"id":3541,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3540,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3542,"src":"257:7:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3539,"name":"uint256","nodeType":"ElementaryTypeName","src":"257:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"256:9:18"},"scope":3611,"src":"211:55:18","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3543,"nodeType":"StructuredDocumentation","src":"272:53:18","text":"Returns the amount of tokens owned by `_account`."},"functionSelector":"70a08231","id":3550,"implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"339:9:18","nodeType":"FunctionDefinition","parameters":{"id":3546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3545,"mutability":"mutable","name":"_account","nameLocation":"357:8:18","nodeType":"VariableDeclaration","scope":3550,"src":"349:16:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3544,"name":"address","nodeType":"ElementaryTypeName","src":"349:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"348:18:18"},"returnParameters":{"id":3549,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3548,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3550,"src":"390:7:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3547,"name":"uint256","nodeType":"ElementaryTypeName","src":"390:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"389:9:18"},"scope":3611,"src":"330:69:18","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3551,"nodeType":"StructuredDocumentation","src":"405:179:18","text":"Moves `_amount` tokens from the caller's account to `_recipient`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"a9059cbb","id":3560,"implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"598:8:18","nodeType":"FunctionDefinition","parameters":{"id":3556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3553,"mutability":"mutable","name":"_recipient","nameLocation":"615:10:18","nodeType":"VariableDeclaration","scope":3560,"src":"607:18:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3552,"name":"address","nodeType":"ElementaryTypeName","src":"607:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3555,"mutability":"mutable","name":"_amount","nameLocation":"635:7:18","nodeType":"VariableDeclaration","scope":3560,"src":"627:15:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3554,"name":"uint256","nodeType":"ElementaryTypeName","src":"627:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"606:37:18"},"returnParameters":{"id":3559,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3560,"src":"662:4:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3557,"name":"bool","nodeType":"ElementaryTypeName","src":"662:4:18","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"661:6:18"},"scope":3611,"src":"589:79:18","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":3561,"nodeType":"StructuredDocumentation","src":"674:242:18","text":"Returns the remaining number of tokens that `_spender` will be\n allowed to spend on behalf of `_owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called."},"functionSelector":"dd62ed3e","id":3570,"implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"930:9:18","nodeType":"FunctionDefinition","parameters":{"id":3566,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3563,"mutability":"mutable","name":"_owner","nameLocation":"948:6:18","nodeType":"VariableDeclaration","scope":3570,"src":"940:14:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3562,"name":"address","nodeType":"ElementaryTypeName","src":"940:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3565,"mutability":"mutable","name":"_spender","nameLocation":"964:8:18","nodeType":"VariableDeclaration","scope":3570,"src":"956:16:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3564,"name":"address","nodeType":"ElementaryTypeName","src":"956:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"939:34:18"},"returnParameters":{"id":3569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3568,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3570,"src":"997:7:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3567,"name":"uint256","nodeType":"ElementaryTypeName","src":"997:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"996:9:18"},"scope":3611,"src":"921:85:18","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3571,"nodeType":"StructuredDocumentation","src":"1012:633:18","text":"Sets `_amount` as the allowance of `_spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n \n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event.     "},"functionSelector":"095ea7b3","id":3580,"implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"1659:7:18","nodeType":"FunctionDefinition","parameters":{"id":3576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3573,"mutability":"mutable","name":"_spender","nameLocation":"1675:8:18","nodeType":"VariableDeclaration","scope":3580,"src":"1667:16:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3572,"name":"address","nodeType":"ElementaryTypeName","src":"1667:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3575,"mutability":"mutable","name":"_amount","nameLocation":"1693:7:18","nodeType":"VariableDeclaration","scope":3580,"src":"1685:15:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3574,"name":"uint256","nodeType":"ElementaryTypeName","src":"1685:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1666:35:18"},"returnParameters":{"id":3579,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3578,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3580,"src":"1720:4:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3577,"name":"bool","nodeType":"ElementaryTypeName","src":"1720:4:18","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1719:6:18"},"scope":3611,"src":"1650:76:18","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":3581,"nodeType":"StructuredDocumentation","src":"1732:269:18","text":"Moves `amount` tokens from `_sender` to `_recipient` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event. "},"functionSelector":"23b872dd","id":3592,"implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"2015:12:18","nodeType":"FunctionDefinition","parameters":{"id":3588,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3583,"mutability":"mutable","name":"_sender","nameLocation":"2045:7:18","nodeType":"VariableDeclaration","scope":3592,"src":"2037:15:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3582,"name":"address","nodeType":"ElementaryTypeName","src":"2037:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3585,"mutability":"mutable","name":"_recipient","nameLocation":"2070:10:18","nodeType":"VariableDeclaration","scope":3592,"src":"2062:18:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3584,"name":"address","nodeType":"ElementaryTypeName","src":"2062:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3587,"mutability":"mutable","name":"_amount","nameLocation":"2098:7:18","nodeType":"VariableDeclaration","scope":3592,"src":"2090:15:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3586,"name":"uint256","nodeType":"ElementaryTypeName","src":"2090:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2027:84:18"},"returnParameters":{"id":3591,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3590,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3592,"src":"2130:4:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3589,"name":"bool","nodeType":"ElementaryTypeName","src":"2130:4:18","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2129:6:18"},"scope":3611,"src":"2006:130:18","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"anonymous":false,"documentation":{"id":3593,"nodeType":"StructuredDocumentation","src":"2142:134:18","text":"Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `:value` may be zero."},"id":3601,"name":"Transfer","nameLocation":"2287:8:18","nodeType":"EventDefinition","parameters":{"id":3600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3595,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"2312:4:18","nodeType":"VariableDeclaration","scope":3601,"src":"2296:20:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3594,"name":"address","nodeType":"ElementaryTypeName","src":"2296:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3597,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"2334:2:18","nodeType":"VariableDeclaration","scope":3601,"src":"2318:18:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3596,"name":"address","nodeType":"ElementaryTypeName","src":"2318:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3599,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"2346:5:18","nodeType":"VariableDeclaration","scope":3601,"src":"2338:13:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3598,"name":"uint256","nodeType":"ElementaryTypeName","src":"2338:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2295:57:18"},"src":"2281:72:18"},{"anonymous":false,"documentation":{"id":3602,"nodeType":"StructuredDocumentation","src":"2359:129:18","text":"Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance."},"id":3610,"name":"Approval","nameLocation":"2499:8:18","nodeType":"EventDefinition","parameters":{"id":3609,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3604,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"2524:5:18","nodeType":"VariableDeclaration","scope":3610,"src":"2508:21:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3603,"name":"address","nodeType":"ElementaryTypeName","src":"2508:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3606,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"2547:7:18","nodeType":"VariableDeclaration","scope":3610,"src":"2531:23:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3605,"name":"address","nodeType":"ElementaryTypeName","src":"2531:7:18","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3608,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"2564:5:18","nodeType":"VariableDeclaration","scope":3610,"src":"2556:13:18","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3607,"name":"uint256","nodeType":"ElementaryTypeName","src":"2556:7:18","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2507:63:18"},"src":"2493:78:18"}],"scope":3612,"src":"137:2436:18","usedErrors":[]}],"src":"33:2541:18"},"id":18},"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol","exportedSymbols":{"IERC165":[3533],"IERC2362":[15],"IWitnetPriceRouter":[3699]},"id":3700,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3613,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"32:31:19"},{"id":3614,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"64:33:19"},{"absolutePath":"ado-contracts/contracts/interfaces/IERC2362.sol","file":"ado-contracts/contracts/interfaces/IERC2362.sol","id":3615,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3700,"sourceUnit":16,"src":"99:57:19","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IERC165.sol","file":"./IERC165.sol","id":3616,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3700,"sourceUnit":3534,"src":"157:23:19","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":3618,"name":"IERC2362","nodeType":"IdentifierPath","referencedDeclaration":15,"src":"390:8:19"},"id":3619,"nodeType":"InheritanceSpecifier","src":"390:8:19"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":3617,"nodeType":"StructuredDocumentation","src":"182:156:19","text":"@title The Witnet Price Router basic interface.\n @dev Guides implementation of price feeds aggregation contracts.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":3699,"linearizedBaseContracts":[3699,15],"name":"IWitnetPriceRouter","nameLocation":"356:18:19","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":{"id":3620,"nodeType":"StructuredDocumentation","src":"406:205:19","text":"Emitted everytime a currency pair is attached to a new price feed contract\n @dev See https://github.com/adoracles/ADOIPs/blob/main/adoip-0010.md \n @dev to learn how these ids are created."},"id":3627,"name":"CurrencyPairSet","nameLocation":"622:15:19","nodeType":"EventDefinition","parameters":{"id":3626,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3622,"indexed":true,"mutability":"mutable","name":"erc2362ID","nameLocation":"654:9:19","nodeType":"VariableDeclaration","scope":3627,"src":"638:25:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3621,"name":"bytes32","nodeType":"ElementaryTypeName","src":"638:7:19","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":3625,"indexed":false,"mutability":"mutable","name":"pricefeed","nameLocation":"673:9:19","nodeType":"VariableDeclaration","scope":3627,"src":"665:17:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"},"typeName":{"id":3624,"nodeType":"UserDefinedTypeName","pathNode":{"id":3623,"name":"IERC165","nodeType":"IdentifierPath","referencedDeclaration":3533,"src":"665:7:19"},"referencedDeclaration":3533,"src":"665:7:19","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"}},"visibility":"internal"}],"src":"637:46:19"},"src":"616:68:19"},{"documentation":{"id":3628,"nodeType":"StructuredDocumentation","src":"690:104:19","text":"Helper pure function: returns hash of the provided ERC2362-compliant currency pair caption (aka ID)."},"functionSelector":"835262f5","id":3635,"implemented":false,"kind":"function","modifiers":[],"name":"currencyPairId","nameLocation":"808:14:19","nodeType":"FunctionDefinition","parameters":{"id":3631,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3630,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3635,"src":"823:13:19","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3629,"name":"string","nodeType":"ElementaryTypeName","src":"823:6:19","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"822:15:19"},"returnParameters":{"id":3634,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3633,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3635,"src":"869:7:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3632,"name":"bytes32","nodeType":"ElementaryTypeName","src":"869:7:19","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"868:9:19"},"scope":3699,"src":"799:79:19","stateMutability":"pure","virtual":true,"visibility":"external"},{"documentation":{"id":3636,"nodeType":"StructuredDocumentation","src":"884:116:19","text":"Returns the ERC-165-compliant price feed contract currently serving \n updates on the given currency pair."},"functionSelector":"8c0adf62","id":3644,"implemented":false,"kind":"function","modifiers":[],"name":"getPriceFeed","nameLocation":"1014:12:19","nodeType":"FunctionDefinition","parameters":{"id":3639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3638,"mutability":"mutable","name":"_erc2362id","nameLocation":"1035:10:19","nodeType":"VariableDeclaration","scope":3644,"src":"1027:18:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3637,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1027:7:19","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1026:20:19"},"returnParameters":{"id":3643,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3642,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3644,"src":"1078:7:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"},"typeName":{"id":3641,"nodeType":"UserDefinedTypeName","pathNode":{"id":3640,"name":"IERC165","nodeType":"IdentifierPath","referencedDeclaration":3533,"src":"1078:7:19"},"referencedDeclaration":3533,"src":"1078:7:19","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"}},"visibility":"internal"}],"src":"1077:9:19"},"scope":3699,"src":"1005:82:19","stateMutability":"view","virtual":true,"visibility":"external"},{"documentation":{"id":3645,"nodeType":"StructuredDocumentation","src":"1093:255:19","text":"Returns human-readable ERC2362-based caption of the currency pair being\n served by the given price feed contract address. \n @dev Should fail if the given price feed contract address is not currently\n @dev registered in the router."},"functionSelector":"bbfa8118","id":3653,"implemented":false,"kind":"function","modifiers":[],"name":"getPriceFeedCaption","nameLocation":"1362:19:19","nodeType":"FunctionDefinition","parameters":{"id":3649,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3648,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3653,"src":"1382:7:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"},"typeName":{"id":3647,"nodeType":"UserDefinedTypeName","pathNode":{"id":3646,"name":"IERC165","nodeType":"IdentifierPath","referencedDeclaration":3533,"src":"1382:7:19"},"referencedDeclaration":3533,"src":"1382:7:19","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"}},"visibility":"internal"}],"src":"1381:9:19"},"returnParameters":{"id":3652,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3651,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3653,"src":"1422:13:19","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3650,"name":"string","nodeType":"ElementaryTypeName","src":"1422:6:19","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1421:15:19"},"scope":3699,"src":"1353:84:19","stateMutability":"view","virtual":true,"visibility":"external"},{"documentation":{"id":3654,"nodeType":"StructuredDocumentation","src":"1443:91:19","text":"Returns human-readable caption of the ERC2362-based currency pair identifier, if known."},"functionSelector":"99d32a04","id":3661,"implemented":false,"kind":"function","modifiers":[],"name":"lookupERC2362ID","nameLocation":"1548:15:19","nodeType":"FunctionDefinition","parameters":{"id":3657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3656,"mutability":"mutable","name":"_erc2362id","nameLocation":"1572:10:19","nodeType":"VariableDeclaration","scope":3661,"src":"1564:18:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3655,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1564:7:19","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1563:20:19"},"returnParameters":{"id":3660,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3659,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3661,"src":"1615:13:19","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3658,"name":"string","nodeType":"ElementaryTypeName","src":"1615:6:19","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1614:15:19"},"scope":3699,"src":"1539:91:19","stateMutability":"view","virtual":true,"visibility":"external"},{"documentation":{"id":3662,"nodeType":"StructuredDocumentation","src":"1636:420:19","text":"Register a price feed contract that will serve updates for the given currency pair.\n @dev Setting zero address to a currency pair implies that it will not be served any longer.\n @dev Otherwise, should fail if the price feed contract does not support the `IWitnetPriceFeed` interface,\n @dev or if given price feed is already serving another currency pair (within this WitnetPriceRouter instance)."},"functionSelector":"77021267","id":3674,"implemented":false,"kind":"function","modifiers":[],"name":"setPriceFeed","nameLocation":"2070:12:19","nodeType":"FunctionDefinition","parameters":{"id":3672,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3665,"mutability":"mutable","name":"_pricefeed","nameLocation":"2104:10:19","nodeType":"VariableDeclaration","scope":3674,"src":"2096:18:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"},"typeName":{"id":3664,"nodeType":"UserDefinedTypeName","pathNode":{"id":3663,"name":"IERC165","nodeType":"IdentifierPath","referencedDeclaration":3533,"src":"2096:7:19"},"referencedDeclaration":3533,"src":"2096:7:19","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"}},"visibility":"internal"},{"constant":false,"id":3667,"mutability":"mutable","name":"_decimals","nameLocation":"2136:9:19","nodeType":"VariableDeclaration","scope":3674,"src":"2128:17:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3666,"name":"uint256","nodeType":"ElementaryTypeName","src":"2128:7:19","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3669,"mutability":"mutable","name":"_base","nameLocation":"2175:5:19","nodeType":"VariableDeclaration","scope":3674,"src":"2159:21:19","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":3668,"name":"string","nodeType":"ElementaryTypeName","src":"2159:6:19","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":3671,"mutability":"mutable","name":"_quote","nameLocation":"2210:6:19","nodeType":"VariableDeclaration","scope":3674,"src":"2194:22:19","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":3670,"name":"string","nodeType":"ElementaryTypeName","src":"2194:6:19","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2082:144:19"},"returnParameters":{"id":3673,"nodeType":"ParameterList","parameters":[],"src":"2251:0:19"},"scope":3699,"src":"2061:191:19","stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"documentation":{"id":3675,"nodeType":"StructuredDocumentation","src":"2258:45:19","text":"Returns list of known currency pairs IDs."},"functionSelector":"3fd29ebd","id":3681,"implemented":false,"kind":"function","modifiers":[],"name":"supportedCurrencyPairs","nameLocation":"2317:22:19","nodeType":"FunctionDefinition","parameters":{"id":3676,"nodeType":"ParameterList","parameters":[],"src":"2339:2:19"},"returnParameters":{"id":3680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3679,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3681,"src":"2373:16:19","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":3677,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2373:7:19","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":3678,"nodeType":"ArrayTypeName","src":"2373:9:19","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"src":"2372:18:19"},"scope":3699,"src":"2308:83:19","stateMutability":"view","virtual":true,"visibility":"external"},{"documentation":{"id":3682,"nodeType":"StructuredDocumentation","src":"2397:94:19","text":"Returns `true` if given pair is currently being served by a compliant price feed contract."},"functionSelector":"ca64c540","id":3689,"implemented":false,"kind":"function","modifiers":[],"name":"supportsCurrencyPair","nameLocation":"2505:20:19","nodeType":"FunctionDefinition","parameters":{"id":3685,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3684,"mutability":"mutable","name":"_erc2362id","nameLocation":"2534:10:19","nodeType":"VariableDeclaration","scope":3689,"src":"2526:18:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3683,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2526:7:19","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2525:20:19"},"returnParameters":{"id":3688,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3687,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3689,"src":"2577:4:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3686,"name":"bool","nodeType":"ElementaryTypeName","src":"2577:4:19","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2576:6:19"},"scope":3699,"src":"2496:87:19","stateMutability":"view","virtual":true,"visibility":"external"},{"documentation":{"id":3690,"nodeType":"StructuredDocumentation","src":"2589:105:19","text":"Returns `true` if given price feed contract is currently serving updates to any known currency pair. "},"functionSelector":"a027ad15","id":3698,"implemented":false,"kind":"function","modifiers":[],"name":"supportsPriceFeed","nameLocation":"2708:17:19","nodeType":"FunctionDefinition","parameters":{"id":3694,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3693,"mutability":"mutable","name":"_priceFeed","nameLocation":"2734:10:19","nodeType":"VariableDeclaration","scope":3698,"src":"2726:18:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"},"typeName":{"id":3692,"nodeType":"UserDefinedTypeName","pathNode":{"id":3691,"name":"IERC165","nodeType":"IdentifierPath","referencedDeclaration":3533,"src":"2726:7:19"},"referencedDeclaration":3533,"src":"2726:7:19","typeDescriptions":{"typeIdentifier":"t_contract$_IERC165_$3533","typeString":"contract IERC165"}},"visibility":"internal"}],"src":"2725:20:19"},"returnParameters":{"id":3697,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3696,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3698,"src":"2777:4:19","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3695,"name":"bool","nodeType":"ElementaryTypeName","src":"2777:4:19","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2776:6:19"},"scope":3699,"src":"2699:84:19","stateMutability":"view","virtual":true,"visibility":"external"}],"scope":3700,"src":"338:2447:19","usedErrors":[]}],"src":"32:2754:19"},"id":19},"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol","exportedSymbols":{"IWitnetRandomness":[3813],"IWitnetRequest":[3829],"Witnet":[4619]},"id":3814,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3701,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:20"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":3702,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3814,"sourceUnit":4620,"src":"66:28:20","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3703,"nodeType":"StructuredDocumentation","src":"96:85:20","text":"@title The Witnet Randomness generator interface.\n @author Witnet Foundation."},"fullyImplemented":false,"id":3813,"linearizedBaseContracts":[3813],"name":"IWitnetRandomness","nameLocation":"191:17:20","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":{"id":3704,"nodeType":"StructuredDocumentation","src":"216:490:20","text":"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\n @param from Address from which the randomize() function was called. \n @param prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n @param witnetQueryId Unique query id assigned to this request by the WRB.\n @param witnetRequestHash SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB."},"id":3714,"name":"Randomized","nameLocation":"717:10:20","nodeType":"EventDefinition","parameters":{"id":3713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3706,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"753:4:20","nodeType":"VariableDeclaration","scope":3714,"src":"737:20:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3705,"name":"address","nodeType":"ElementaryTypeName","src":"737:7:20","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3708,"indexed":true,"mutability":"mutable","name":"prevBlock","nameLocation":"783:9:20","nodeType":"VariableDeclaration","scope":3714,"src":"767:25:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3707,"name":"uint256","nodeType":"ElementaryTypeName","src":"767:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3710,"indexed":false,"mutability":"mutable","name":"witnetQueryId","nameLocation":"810:13:20","nodeType":"VariableDeclaration","scope":3714,"src":"802:21:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3709,"name":"uint256","nodeType":"ElementaryTypeName","src":"802:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3712,"indexed":false,"mutability":"mutable","name":"witnetRequestHash","nameLocation":"841:17:20","nodeType":"VariableDeclaration","scope":3714,"src":"833:25:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3711,"name":"bytes32","nodeType":"ElementaryTypeName","src":"833:7:20","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"727:137:20"},"src":"711:154:20"},{"documentation":{"id":3715,"nodeType":"StructuredDocumentation","src":"871:140:20","text":"Returns amount of wei required to be paid as a fee when requesting randomization with a \n transaction gas price as the one given."},"functionSelector":"a60ee268","id":3722,"implemented":false,"kind":"function","modifiers":[],"name":"estimateRandomizeFee","nameLocation":"1025:20:20","nodeType":"FunctionDefinition","parameters":{"id":3718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3717,"mutability":"mutable","name":"_gasPrice","nameLocation":"1054:9:20","nodeType":"VariableDeclaration","scope":3722,"src":"1046:17:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3716,"name":"uint256","nodeType":"ElementaryTypeName","src":"1046:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1045:19:20"},"returnParameters":{"id":3721,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3720,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3722,"src":"1088:7:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3719,"name":"uint256","nodeType":"ElementaryTypeName","src":"1088:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1087:9:20"},"scope":3813,"src":"1016:81:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3723,"nodeType":"StructuredDocumentation","src":"1103:669:20","text":"Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\n @dev Returns zero values if no randomness request was actually posted within a given block.\n @param _block Block number whose randomness request is being queried for.\n @return _from Address from which the latest randomness request was posted.\n @return _id Unique request identifier as provided by the WRB.\n @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none."},"functionSelector":"a3252f68","id":3736,"implemented":false,"kind":"function","modifiers":[],"name":"getRandomizeData","nameLocation":"1786:16:20","nodeType":"FunctionDefinition","parameters":{"id":3726,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3725,"mutability":"mutable","name":"_block","nameLocation":"1811:6:20","nodeType":"VariableDeclaration","scope":3736,"src":"1803:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3724,"name":"uint256","nodeType":"ElementaryTypeName","src":"1803:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1802:16:20"},"returnParameters":{"id":3735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3728,"mutability":"mutable","name":"_from","nameLocation":"1858:5:20","nodeType":"VariableDeclaration","scope":3736,"src":"1850:13:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3727,"name":"address","nodeType":"ElementaryTypeName","src":"1850:7:20","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3730,"mutability":"mutable","name":"_id","nameLocation":"1873:3:20","nodeType":"VariableDeclaration","scope":3736,"src":"1865:11:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3729,"name":"uint256","nodeType":"ElementaryTypeName","src":"1865:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3732,"mutability":"mutable","name":"_prevBlock","nameLocation":"1886:10:20","nodeType":"VariableDeclaration","scope":3736,"src":"1878:18:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3731,"name":"uint256","nodeType":"ElementaryTypeName","src":"1878:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3734,"mutability":"mutable","name":"_nextBlock","nameLocation":"1906:10:20","nodeType":"VariableDeclaration","scope":3736,"src":"1898:18:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3733,"name":"uint256","nodeType":"ElementaryTypeName","src":"1898:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1849:68:20"},"scope":3813,"src":"1777:141:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3737,"nodeType":"StructuredDocumentation","src":"1924:808:20","text":"Retrieves the randomness generated upon solving a request that was posted within a given block,\n if any, or to the _first_ request posted after that block, otherwise. Should the intended \n request happen to be finalized with errors on the Witnet oracle network side, this function \n will recursively try to return randomness from the next non-faulty randomization request found \n in storage, if any. \n @dev Fails if:\n @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\n @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\n @dev   iii. all requests in/after the given block were solved with errors.\n @param _block Block number from which the search will start."},"functionSelector":"fb476cad","id":3744,"implemented":false,"kind":"function","modifiers":[],"name":"getRandomnessAfter","nameLocation":"2746:18:20","nodeType":"FunctionDefinition","parameters":{"id":3740,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3739,"mutability":"mutable","name":"_block","nameLocation":"2773:6:20","nodeType":"VariableDeclaration","scope":3744,"src":"2765:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3738,"name":"uint256","nodeType":"ElementaryTypeName","src":"2765:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2764:16:20"},"returnParameters":{"id":3743,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3742,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3744,"src":"2804:7:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3741,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2804:7:20","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2803:9:20"},"scope":3813,"src":"2737:76:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3745,"nodeType":"StructuredDocumentation","src":"2820:268:20","text":"Tells what is the number of the next block in which a randomization request was posted after the given one. \n @param _block Block number from which the search will start.\n @return Number of the first block found after the given one, or `0` otherwise."},"functionSelector":"40b41daa","id":3752,"implemented":false,"kind":"function","modifiers":[],"name":"getRandomnessNextBlock","nameLocation":"3102:22:20","nodeType":"FunctionDefinition","parameters":{"id":3748,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3747,"mutability":"mutable","name":"_block","nameLocation":"3133:6:20","nodeType":"VariableDeclaration","scope":3752,"src":"3125:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3746,"name":"uint256","nodeType":"ElementaryTypeName","src":"3125:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3124:16:20"},"returnParameters":{"id":3751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3750,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3752,"src":"3164:7:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3749,"name":"uint256","nodeType":"ElementaryTypeName","src":"3164:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3163:9:20"},"scope":3813,"src":"3093:80:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3753,"nodeType":"StructuredDocumentation","src":"3180:229:20","text":"Gets previous block in which a randomness request was posted before the given one.\n @param _block Block number from which the search will start.\n @return First block found before the given one, or `0` otherwise."},"functionSelector":"36b651bb","id":3760,"implemented":false,"kind":"function","modifiers":[],"name":"getRandomnessPrevBlock","nameLocation":"3423:22:20","nodeType":"FunctionDefinition","parameters":{"id":3756,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3755,"mutability":"mutable","name":"_block","nameLocation":"3454:6:20","nodeType":"VariableDeclaration","scope":3760,"src":"3446:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3754,"name":"uint256","nodeType":"ElementaryTypeName","src":"3446:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3445:16:20"},"returnParameters":{"id":3759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3758,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3760,"src":"3485:7:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3757,"name":"uint256","nodeType":"ElementaryTypeName","src":"3485:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3484:9:20"},"scope":3813,"src":"3414:80:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3761,"nodeType":"StructuredDocumentation","src":"3500:194:20","text":"Returns `true` only when the randomness request that got posted within given block was already\n reported back from the Witnet oracle, either successfully or with an error of any kind."},"functionSelector":"9bc86fec","id":3768,"implemented":false,"kind":"function","modifiers":[],"name":"isRandomized","nameLocation":"3708:12:20","nodeType":"FunctionDefinition","parameters":{"id":3764,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3763,"mutability":"mutable","name":"_block","nameLocation":"3729:6:20","nodeType":"VariableDeclaration","scope":3768,"src":"3721:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3762,"name":"uint256","nodeType":"ElementaryTypeName","src":"3721:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3720:16:20"},"returnParameters":{"id":3767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3766,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3768,"src":"3760:4:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3765,"name":"bool","nodeType":"ElementaryTypeName","src":"3760:4:20","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3759:6:20"},"scope":3813,"src":"3699:67:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3769,"nodeType":"StructuredDocumentation","src":"3772:89:20","text":"Returns latest block in which a randomness request got sucessfully posted to the WRB."},"functionSelector":"9938fd0c","id":3774,"implemented":false,"kind":"function","modifiers":[],"name":"latestRandomizeBlock","nameLocation":"3875:20:20","nodeType":"FunctionDefinition","parameters":{"id":3770,"nodeType":"ParameterList","parameters":[],"src":"3895:2:20"},"returnParameters":{"id":3773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3772,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3774,"src":"3921:7:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3771,"name":"uint256","nodeType":"ElementaryTypeName","src":"3921:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3920:9:20"},"scope":3813,"src":"3866:64:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3775,"nodeType":"StructuredDocumentation","src":"3936:545:20","text":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \n @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\n @param _range Range within which the uniformly-distributed random number will be generated.\n @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n @param _block Block number from which the search will start."},"functionSelector":"24cbbfc1","id":3786,"implemented":false,"kind":"function","modifiers":[],"name":"random","nameLocation":"4495:6:20","nodeType":"FunctionDefinition","parameters":{"id":3782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3777,"mutability":"mutable","name":"_range","nameLocation":"4509:6:20","nodeType":"VariableDeclaration","scope":3786,"src":"4502:13:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":3776,"name":"uint32","nodeType":"ElementaryTypeName","src":"4502:6:20","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":3779,"mutability":"mutable","name":"_nonce","nameLocation":"4525:6:20","nodeType":"VariableDeclaration","scope":3786,"src":"4517:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3778,"name":"uint256","nodeType":"ElementaryTypeName","src":"4517:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3781,"mutability":"mutable","name":"_block","nameLocation":"4541:6:20","nodeType":"VariableDeclaration","scope":3786,"src":"4533:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3780,"name":"uint256","nodeType":"ElementaryTypeName","src":"4533:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4501:47:20"},"returnParameters":{"id":3785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3784,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3786,"src":"4572:6:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":3783,"name":"uint32","nodeType":"ElementaryTypeName","src":"4572:6:20","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"4571:8:20"},"scope":3813,"src":"4486:94:20","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3787,"nodeType":"StructuredDocumentation","src":"4586:434:20","text":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \n the given `_nonce` value and the given `_seed` as a source of entropy.\n @param _range Range within which the uniformly-distributed random number will be generated.\n @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\n @param _seed Seed value used as entropy source."},"functionSelector":"e7d4a016","id":3798,"implemented":false,"kind":"function","modifiers":[],"name":"random","nameLocation":"5034:6:20","nodeType":"FunctionDefinition","parameters":{"id":3794,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3789,"mutability":"mutable","name":"_range","nameLocation":"5048:6:20","nodeType":"VariableDeclaration","scope":3798,"src":"5041:13:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":3788,"name":"uint32","nodeType":"ElementaryTypeName","src":"5041:6:20","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":3791,"mutability":"mutable","name":"_nonce","nameLocation":"5064:6:20","nodeType":"VariableDeclaration","scope":3798,"src":"5056:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3790,"name":"uint256","nodeType":"ElementaryTypeName","src":"5056:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3793,"mutability":"mutable","name":"_seed","nameLocation":"5080:5:20","nodeType":"VariableDeclaration","scope":3798,"src":"5072:13:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3792,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5072:7:20","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"5040:46:20"},"returnParameters":{"id":3797,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3796,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3798,"src":"5110:6:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":3795,"name":"uint32","nodeType":"ElementaryTypeName","src":"5110:6:20","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"5109:8:20"},"scope":3813,"src":"5025:93:20","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":3799,"nodeType":"StructuredDocumentation","src":"5124:541:20","text":"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \n Only one randomness request per block will be actually posted to the WRB. Should there \n already be a posted request within current block, it will try to upgrade Witnet fee of current's \n block randomness request according to current gas price. In both cases, all unused funds shall \n be transfered back to the tx sender.\n @return _usedFunds Amount of funds actually used from those provided by the tx sender."},"functionSelector":"699b328a","id":3804,"implemented":false,"kind":"function","modifiers":[],"name":"randomize","nameLocation":"5679:9:20","nodeType":"FunctionDefinition","parameters":{"id":3800,"nodeType":"ParameterList","parameters":[],"src":"5688:2:20"},"returnParameters":{"id":3803,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3802,"mutability":"mutable","name":"_usedFunds","nameLocation":"5725:10:20","nodeType":"VariableDeclaration","scope":3804,"src":"5717:18:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3801,"name":"uint256","nodeType":"ElementaryTypeName","src":"5717:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5716:20:20"},"scope":3813,"src":"5670:67:20","stateMutability":"payable","virtual":false,"visibility":"external"},{"documentation":{"id":3805,"nodeType":"StructuredDocumentation","src":"5743:482:20","text":"Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\n may be required in proportion to how much bigger the current tx gas price is with respect the \n highest gas price that was paid in either previous fee upgrades, or when the given randomness \n request was posted. All unused funds shall be transferred back to the tx sender.\n @return _usedFunds Amount of dunds actually used from those provided by the tx sender."},"functionSelector":"e35329f8","id":3812,"implemented":false,"kind":"function","modifiers":[],"name":"upgradeRandomizeFee","nameLocation":"6239:19:20","nodeType":"FunctionDefinition","parameters":{"id":3808,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3807,"mutability":"mutable","name":"_block","nameLocation":"6267:6:20","nodeType":"VariableDeclaration","scope":3812,"src":"6259:14:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3806,"name":"uint256","nodeType":"ElementaryTypeName","src":"6259:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6258:16:20"},"returnParameters":{"id":3811,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3810,"mutability":"mutable","name":"_usedFunds","nameLocation":"6309:10:20","nodeType":"VariableDeclaration","scope":3812,"src":"6301:18:20","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3809,"name":"uint256","nodeType":"ElementaryTypeName","src":"6301:7:20","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6300:20:20"},"scope":3813,"src":"6230:91:20","stateMutability":"payable","virtual":false,"visibility":"external"}],"scope":3814,"src":"181:6142:20","usedErrors":[]}],"src":"33:6291:20"},"id":20},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol","exportedSymbols":{"IWitnetRequest":[3829]},"id":3830,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3815,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:21"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3816,"nodeType":"StructuredDocumentation","src":"66:87:21","text":"@title The Witnet Data Request basic interface.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":3829,"linearizedBaseContracts":[3829],"name":"IWitnetRequest","nameLocation":"163:14:21","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3817,"nodeType":"StructuredDocumentation","src":"184:138:21","text":"A `IWitnetRequest` is constructed around a `bytes` value containing \n a well-formed Witnet Data Request using Protocol Buffers."},"functionSelector":"f0940002","id":3822,"implemented":false,"kind":"function","modifiers":[],"name":"bytecode","nameLocation":"336:8:21","nodeType":"FunctionDefinition","parameters":{"id":3818,"nodeType":"ParameterList","parameters":[],"src":"344:2:21"},"returnParameters":{"id":3821,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3820,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3822,"src":"370:12:21","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":3819,"name":"bytes","nodeType":"ElementaryTypeName","src":"370:5:21","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"369:14:21"},"scope":3829,"src":"327:57:21","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3823,"nodeType":"StructuredDocumentation","src":"390:69:21","text":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."},"functionSelector":"09bd5a60","id":3828,"implemented":false,"kind":"function","modifiers":[],"name":"hash","nameLocation":"473:4:21","nodeType":"FunctionDefinition","parameters":{"id":3824,"nodeType":"ParameterList","parameters":[],"src":"477:2:21"},"returnParameters":{"id":3827,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3826,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3828,"src":"503:7:21","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3825,"name":"bytes32","nodeType":"ElementaryTypeName","src":"503:7:21","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"502:9:21"},"scope":3829,"src":"464:48:21","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":3830,"src":"153:361:21","usedErrors":[]}],"src":"33:482:21"},"id":21},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol","exportedSymbols":{"IWitnetRequestBoardAdmin":[3851]},"id":3852,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3831,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:22"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3832,"nodeType":"StructuredDocumentation","src":"66:99:22","text":"@title Witnet Request Board basic administration interface.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":3851,"linearizedBaseContracts":[3851],"name":"IWitnetRequestBoardAdmin","nameLocation":"175:24:22","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"id":3838,"name":"OwnershipTransferred","nameLocation":"212:20:22","nodeType":"EventDefinition","parameters":{"id":3837,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3834,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"249:4:22","nodeType":"VariableDeclaration","scope":3838,"src":"233:20:22","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3833,"name":"address","nodeType":"ElementaryTypeName","src":"233:7:22","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":3836,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"271:2:22","nodeType":"VariableDeclaration","scope":3838,"src":"255:18:22","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3835,"name":"address","nodeType":"ElementaryTypeName","src":"255:7:22","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"232:42:22"},"src":"206:69:22"},{"documentation":{"id":3839,"nodeType":"StructuredDocumentation","src":"281:29:22","text":"Gets admin/owner address."},"functionSelector":"8da5cb5b","id":3844,"implemented":false,"kind":"function","modifiers":[],"name":"owner","nameLocation":"324:5:22","nodeType":"FunctionDefinition","parameters":{"id":3840,"nodeType":"ParameterList","parameters":[],"src":"329:2:22"},"returnParameters":{"id":3843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3842,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3844,"src":"355:7:22","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3841,"name":"address","nodeType":"ElementaryTypeName","src":"355:7:22","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"354:9:22"},"scope":3851,"src":"315:49:22","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3845,"nodeType":"StructuredDocumentation","src":"370:24:22","text":"Transfers ownership."},"functionSelector":"f2fde38b","id":3850,"implemented":false,"kind":"function","modifiers":[],"name":"transferOwnership","nameLocation":"408:17:22","nodeType":"FunctionDefinition","parameters":{"id":3848,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3847,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3850,"src":"426:7:22","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3846,"name":"address","nodeType":"ElementaryTypeName","src":"426:7:22","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"425:9:22"},"returnParameters":{"id":3849,"nodeType":"ParameterList","parameters":[],"src":"443:0:22"},"scope":3851,"src":"399:45:22","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":3852,"src":"165:281:22","usedErrors":[]}],"src":"33:414:22"},"id":22},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol","exportedSymbols":{"IWitnetRequestBoardAdminACLs":[3887]},"id":3888,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3853,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:23"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3854,"nodeType":"StructuredDocumentation","src":"66:98:23","text":"@title Witnet Request Board ACLs administration interface.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":3887,"linearizedBaseContracts":[3887],"name":"IWitnetRequestBoardAdminACLs","nameLocation":"174:28:23","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"id":3859,"name":"ReportersSet","nameLocation":"215:12:23","nodeType":"EventDefinition","parameters":{"id":3858,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3857,"indexed":false,"mutability":"mutable","name":"reporters","nameLocation":"238:9:23","nodeType":"VariableDeclaration","scope":3859,"src":"228:19:23","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":3855,"name":"address","nodeType":"ElementaryTypeName","src":"228:7:23","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":3856,"nodeType":"ArrayTypeName","src":"228:9:23","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"227:21:23"},"src":"209:40:23"},{"anonymous":false,"id":3864,"name":"ReportersUnset","nameLocation":"260:14:23","nodeType":"EventDefinition","parameters":{"id":3863,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3862,"indexed":false,"mutability":"mutable","name":"reporters","nameLocation":"285:9:23","nodeType":"VariableDeclaration","scope":3864,"src":"275:19:23","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":3860,"name":"address","nodeType":"ElementaryTypeName","src":"275:7:23","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":3861,"nodeType":"ArrayTypeName","src":"275:9:23","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"274:21:23"},"src":"254:42:23"},{"documentation":{"id":3865,"nodeType":"StructuredDocumentation","src":"302:81:23","text":"Tells whether given address is included in the active reporters control list."},"functionSelector":"044ad7be","id":3872,"implemented":false,"kind":"function","modifiers":[],"name":"isReporter","nameLocation":"397:10:23","nodeType":"FunctionDefinition","parameters":{"id":3868,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3867,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3872,"src":"408:7:23","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3866,"name":"address","nodeType":"ElementaryTypeName","src":"408:7:23","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"407:9:23"},"returnParameters":{"id":3871,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3870,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3872,"src":"440:4:23","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3869,"name":"bool","nodeType":"ElementaryTypeName","src":"440:4:23","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"439:6:23"},"scope":3887,"src":"388:58:23","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":3873,"nodeType":"StructuredDocumentation","src":"452:164:23","text":"Adds given addresses to the active reporters control list.\n @dev Can only be called from the owner address.\n @dev Emits the `ReportersSet` event. "},"functionSelector":"4c9f72e3","id":3879,"implemented":false,"kind":"function","modifiers":[],"name":"setReporters","nameLocation":"630:12:23","nodeType":"FunctionDefinition","parameters":{"id":3877,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3876,"mutability":"mutable","name":"reporters","nameLocation":"662:9:23","nodeType":"VariableDeclaration","scope":3879,"src":"643:28:23","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_calldata_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":3874,"name":"address","nodeType":"ElementaryTypeName","src":"643:7:23","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":3875,"nodeType":"ArrayTypeName","src":"643:9:23","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"642:30:23"},"returnParameters":{"id":3878,"nodeType":"ParameterList","parameters":[],"src":"681:0:23"},"scope":3887,"src":"621:61:23","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":3880,"nodeType":"StructuredDocumentation","src":"688:171:23","text":"Removes given addresses from the active reporters control list.\n @dev Can only be called from the owner address.\n @dev Emits the `ReportersUnset` event. "},"functionSelector":"28a78d9b","id":3886,"implemented":false,"kind":"function","modifiers":[],"name":"unsetReporters","nameLocation":"873:14:23","nodeType":"FunctionDefinition","parameters":{"id":3884,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3883,"mutability":"mutable","name":"reporters","nameLocation":"907:9:23","nodeType":"VariableDeclaration","scope":3886,"src":"888:28:23","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_calldata_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":3881,"name":"address","nodeType":"ElementaryTypeName","src":"888:7:23","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":3882,"nodeType":"ArrayTypeName","src":"888:9:23","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"887:30:23"},"returnParameters":{"id":3885,"nodeType":"ParameterList","parameters":[],"src":"926:0:23"},"scope":3887,"src":"864:63:23","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":3888,"src":"164:765:23","usedErrors":[]}],"src":"33:897:23"},"id":23},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol","exportedSymbols":{"IWitnetRequestBoardEvents":[3912]},"id":3913,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3889,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:24"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3890,"nodeType":"StructuredDocumentation","src":"66:94:24","text":"@title Witnet Request Board emitting events interface.\n @author The Witnet Foundation."},"fullyImplemented":true,"id":3912,"linearizedBaseContracts":[3912],"name":"IWitnetRequestBoardEvents","nameLocation":"170:25:24","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":{"id":3891,"nodeType":"StructuredDocumentation","src":"202:60:24","text":"Emitted when a Witnet Data Request is posted to the WRB."},"id":3897,"name":"PostedRequest","nameLocation":"273:13:24","nodeType":"EventDefinition","parameters":{"id":3896,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3893,"indexed":false,"mutability":"mutable","name":"queryId","nameLocation":"295:7:24","nodeType":"VariableDeclaration","scope":3897,"src":"287:15:24","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3892,"name":"uint256","nodeType":"ElementaryTypeName","src":"287:7:24","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3895,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"312:4:24","nodeType":"VariableDeclaration","scope":3897,"src":"304:12:24","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3894,"name":"address","nodeType":"ElementaryTypeName","src":"304:7:24","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"286:31:24"},"src":"267:51:24"},{"anonymous":false,"documentation":{"id":3898,"nodeType":"StructuredDocumentation","src":"324:63:24","text":"Emitted when a Witnet-solved result is reported to the WRB."},"id":3904,"name":"PostedResult","nameLocation":"398:12:24","nodeType":"EventDefinition","parameters":{"id":3903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3900,"indexed":false,"mutability":"mutable","name":"queryId","nameLocation":"419:7:24","nodeType":"VariableDeclaration","scope":3904,"src":"411:15:24","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3899,"name":"uint256","nodeType":"ElementaryTypeName","src":"411:7:24","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3902,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"436:4:24","nodeType":"VariableDeclaration","scope":3904,"src":"428:12:24","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3901,"name":"address","nodeType":"ElementaryTypeName","src":"428:7:24","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"410:31:24"},"src":"392:50:24"},{"anonymous":false,"documentation":{"id":3905,"nodeType":"StructuredDocumentation","src":"448:73:24","text":"Emitted when all data related to given query is deleted from the WRB."},"id":3911,"name":"DeletedQuery","nameLocation":"532:12:24","nodeType":"EventDefinition","parameters":{"id":3910,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3907,"indexed":false,"mutability":"mutable","name":"queryId","nameLocation":"553:7:24","nodeType":"VariableDeclaration","scope":3911,"src":"545:15:24","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3906,"name":"uint256","nodeType":"ElementaryTypeName","src":"545:7:24","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3909,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"570:4:24","nodeType":"VariableDeclaration","scope":3911,"src":"562:12:24","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":3908,"name":"address","nodeType":"ElementaryTypeName","src":"562:7:24","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"544:31:24"},"src":"526:50:24"}],"scope":3913,"src":"160:418:24","usedErrors":[]}],"src":"33:546:24"},"id":24},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol","exportedSymbols":{"IWitnetRequestBoardReporter":[3963]},"id":3964,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3914,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:25"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3915,"nodeType":"StructuredDocumentation","src":"66:91:25","text":"@title The Witnet Request Board Reporter interface.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":3963,"linearizedBaseContracts":[3963],"name":"IWitnetRequestBoardReporter","nameLocation":"167:27:25","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3916,"nodeType":"StructuredDocumentation","src":"201:551:25","text":"Reports the Witnet-provided result to a previously posted request. \n @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\n @dev Fails if:\n @dev - the `_queryId` is not in 'Posted' status.\n @dev - provided `_drTxHash` is zero;\n @dev - length of provided `_result` is zero.\n @param _queryId The unique identifier of the data request.\n @param _drTxHash The hash of the corresponding data request transaction in Witnet.\n @param _result The result itself as bytes."},"functionSelector":"6280bce8","id":3925,"implemented":false,"kind":"function","modifiers":[],"name":"reportResult","nameLocation":"766:12:25","nodeType":"FunctionDefinition","parameters":{"id":3923,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3918,"mutability":"mutable","name":"_queryId","nameLocation":"800:8:25","nodeType":"VariableDeclaration","scope":3925,"src":"792:16:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3917,"name":"uint256","nodeType":"ElementaryTypeName","src":"792:7:25","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3920,"mutability":"mutable","name":"_drTxHash","nameLocation":"830:9:25","nodeType":"VariableDeclaration","scope":3925,"src":"822:17:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3919,"name":"bytes32","nodeType":"ElementaryTypeName","src":"822:7:25","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":3922,"mutability":"mutable","name":"_result","nameLocation":"868:7:25","nodeType":"VariableDeclaration","scope":3925,"src":"853:22:25","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":3921,"name":"bytes","nodeType":"ElementaryTypeName","src":"853:5:25","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"778:107:25"},"returnParameters":{"id":3924,"nodeType":"ParameterList","parameters":[],"src":"894:0:25"},"scope":3963,"src":"757:138:25","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":3926,"nodeType":"StructuredDocumentation","src":"901:575:25","text":"Reports the Witnet-provided result to a previously posted request.\n @dev Fails if:\n @dev - called from unauthorized address;\n @dev - the `_queryId` is not in 'Posted' status.\n @dev - provided `_drTxHash` is zero;\n @dev - length of provided `_result` is zero.\n @param _queryId The unique query identifier\n @param _timestamp The timestamp of the solving tally transaction in Witnet.\n @param _drTxHash The hash of the corresponding data request transaction in Witnet.\n @param _result The result itself as bytes."},"functionSelector":"c8f5cdd5","id":3937,"implemented":false,"kind":"function","modifiers":[],"name":"reportResult","nameLocation":"1490:12:25","nodeType":"FunctionDefinition","parameters":{"id":3935,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3928,"mutability":"mutable","name":"_queryId","nameLocation":"1524:8:25","nodeType":"VariableDeclaration","scope":3937,"src":"1516:16:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3927,"name":"uint256","nodeType":"ElementaryTypeName","src":"1516:7:25","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3930,"mutability":"mutable","name":"_timestamp","nameLocation":"1554:10:25","nodeType":"VariableDeclaration","scope":3937,"src":"1546:18:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3929,"name":"uint256","nodeType":"ElementaryTypeName","src":"1546:7:25","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3932,"mutability":"mutable","name":"_drTxHash","nameLocation":"1586:9:25","nodeType":"VariableDeclaration","scope":3937,"src":"1578:17:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3931,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1578:7:25","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":3934,"mutability":"mutable","name":"_result","nameLocation":"1624:7:25","nodeType":"VariableDeclaration","scope":3937,"src":"1609:22:25","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":3933,"name":"bytes","nodeType":"ElementaryTypeName","src":"1609:5:25","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1502:139:25"},"returnParameters":{"id":3936,"nodeType":"ParameterList","parameters":[],"src":"1650:0:25"},"scope":3963,"src":"1481:170:25","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":3938,"nodeType":"StructuredDocumentation","src":"1657:655:25","text":"Reports Witnet-provided results to multiple requests within a single EVM tx.\n @dev Must emit a PostedResult event for every succesfully reported result.\n @param _batchResults Array of BatchResult structs, every one containing:\n         - unique query identifier;\n         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\n         - hash of the corresponding data request tx at the Witnet side-chain level;\n         - data request result in raw bytes.\n @param _verbose If true, must emit a BatchReportError event for every failing report, if any. "},"functionSelector":"81a398b5","id":3947,"implemented":false,"kind":"function","modifiers":[],"name":"reportResultBatch","nameLocation":"2326:17:25","nodeType":"FunctionDefinition","parameters":{"id":3945,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3942,"mutability":"mutable","name":"_batchResults","nameLocation":"2367:13:25","nodeType":"VariableDeclaration","scope":3947,"src":"2344:36:25","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_BatchResult_$3956_calldata_ptr_$dyn_calldata_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult[]"},"typeName":{"baseType":{"id":3940,"nodeType":"UserDefinedTypeName","pathNode":{"id":3939,"name":"BatchResult","nodeType":"IdentifierPath","referencedDeclaration":3956,"src":"2344:11:25"},"referencedDeclaration":3956,"src":"2344:11:25","typeDescriptions":{"typeIdentifier":"t_struct$_BatchResult_$3956_storage_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult"}},"id":3941,"nodeType":"ArrayTypeName","src":"2344:13:25","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_BatchResult_$3956_storage_$dyn_storage_ptr","typeString":"struct IWitnetRequestBoardReporter.BatchResult[]"}},"visibility":"internal"},{"constant":false,"id":3944,"mutability":"mutable","name":"_verbose","nameLocation":"2387:8:25","nodeType":"VariableDeclaration","scope":3947,"src":"2382:13:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":3943,"name":"bool","nodeType":"ElementaryTypeName","src":"2382:4:25","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2343:53:25"},"returnParameters":{"id":3946,"nodeType":"ParameterList","parameters":[],"src":"2405:0:25"},"scope":3963,"src":"2317:89:25","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"canonicalName":"IWitnetRequestBoardReporter.BatchResult","id":3956,"members":[{"constant":false,"id":3949,"mutability":"mutable","name":"queryId","nameLocation":"2465:7:25","nodeType":"VariableDeclaration","scope":3956,"src":"2457:15:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3948,"name":"uint256","nodeType":"ElementaryTypeName","src":"2457:7:25","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3951,"mutability":"mutable","name":"timestamp","nameLocation":"2494:9:25","nodeType":"VariableDeclaration","scope":3956,"src":"2486:17:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3950,"name":"uint256","nodeType":"ElementaryTypeName","src":"2486:7:25","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3953,"mutability":"mutable","name":"drTxHash","nameLocation":"2525:8:25","nodeType":"VariableDeclaration","scope":3956,"src":"2517:16:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":3952,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2517:7:25","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":3955,"mutability":"mutable","name":"cborBytes","nameLocation":"2555:9:25","nodeType":"VariableDeclaration","scope":3956,"src":"2547:17:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":3954,"name":"bytes","nodeType":"ElementaryTypeName","src":"2547:5:25","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"name":"BatchResult","nameLocation":"2431:11:25","nodeType":"StructDefinition","scope":3963,"src":"2424:151:25","visibility":"public"},{"anonymous":false,"id":3962,"name":"BatchReportError","nameLocation":"2591:16:25","nodeType":"EventDefinition","parameters":{"id":3961,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3958,"indexed":false,"mutability":"mutable","name":"queryId","nameLocation":"2616:7:25","nodeType":"VariableDeclaration","scope":3962,"src":"2608:15:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3957,"name":"uint256","nodeType":"ElementaryTypeName","src":"2608:7:25","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":3960,"indexed":false,"mutability":"mutable","name":"reason","nameLocation":"2632:6:25","nodeType":"VariableDeclaration","scope":3962,"src":"2625:13:25","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":3959,"name":"string","nodeType":"ElementaryTypeName","src":"2625:6:25","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2607:32:25"},"src":"2585:55:25"}],"scope":3964,"src":"157:2485:25","usedErrors":[]}],"src":"33:2610:25"},"id":25},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol","exportedSymbols":{"IWitnetRequest":[3829],"IWitnetRequestBoardRequestor":[3993],"Witnet":[4619]},"id":3994,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3965,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:26"},{"id":3966,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:26"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":3967,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":3994,"sourceUnit":4620,"src":"100:28:26","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3968,"nodeType":"StructuredDocumentation","src":"130:523:26","text":"@title Witnet Requestor Interface\n @notice It defines how to interact with the Witnet Request Board in order to:\n   - request the execution of Witnet Radon scripts (data request);\n   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\n   - read the result of any previously posted request, eventually reported by the Witnet DON.\n   - remove from storage all data related to past and solved data requests, and results.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":3993,"linearizedBaseContracts":[3993],"name":"IWitnetRequestBoardRequestor","nameLocation":"663:28:26","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3969,"nodeType":"StructuredDocumentation","src":"698:354:26","text":"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\n @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\n @dev the one that actually posted the given request.\n @param _queryId The unique query identifier."},"functionSelector":"7c1fbda3","id":3977,"implemented":false,"kind":"function","modifiers":[],"name":"deleteQuery","nameLocation":"1066:11:26","nodeType":"FunctionDefinition","parameters":{"id":3972,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3971,"mutability":"mutable","name":"_queryId","nameLocation":"1086:8:26","nodeType":"VariableDeclaration","scope":3977,"src":"1078:16:26","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3970,"name":"uint256","nodeType":"ElementaryTypeName","src":"1078:7:26","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1077:18:26"},"returnParameters":{"id":3976,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3975,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":3977,"src":"1114:22:26","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":3974,"nodeType":"UserDefinedTypeName","pathNode":{"id":3973,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"1114:15:26"},"referencedDeclaration":4336,"src":"1114:15:26","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"src":"1113:24:26"},"scope":3993,"src":"1057:81:26","stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"documentation":{"id":3978,"nodeType":"StructuredDocumentation","src":"1144:634:26","text":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\n A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \n result to this request.\n @dev Fails if:\n @dev - provided reward is too low.\n @dev - provided script is zero address.\n @dev - provided script bytecode is empty.\n @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\n @return _queryId An unique query identifier."},"functionSelector":"b281a7bd","id":3986,"implemented":false,"kind":"function","modifiers":[],"name":"postRequest","nameLocation":"1792:11:26","nodeType":"FunctionDefinition","parameters":{"id":3982,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3981,"mutability":"mutable","name":"_addr","nameLocation":"1819:5:26","nodeType":"VariableDeclaration","scope":3986,"src":"1804:20:26","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"},"typeName":{"id":3980,"nodeType":"UserDefinedTypeName","pathNode":{"id":3979,"name":"IWitnetRequest","nodeType":"IdentifierPath","referencedDeclaration":3829,"src":"1804:14:26"},"referencedDeclaration":3829,"src":"1804:14:26","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"visibility":"internal"}],"src":"1803:22:26"},"returnParameters":{"id":3985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3984,"mutability":"mutable","name":"_queryId","nameLocation":"1860:8:26","nodeType":"VariableDeclaration","scope":3986,"src":"1852:16:26","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3983,"name":"uint256","nodeType":"ElementaryTypeName","src":"1852:7:26","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1851:18:26"},"scope":3993,"src":"1783:87:26","stateMutability":"payable","virtual":false,"visibility":"external"},{"documentation":{"id":3987,"nodeType":"StructuredDocumentation","src":"1876:561:26","text":"Increments the reward of a previously posted request by adding the transaction value to it.\n @dev Updates request `gasPrice` in case this method is called with a higher \n @dev gas price value than the one used in previous calls to `postRequest` or\n @dev `upgradeReward`. \n @dev Fails if the `_queryId` is not in 'Posted' status.\n @dev Fails also in case the request `gasPrice` is increased, and the new \n @dev reward value gets below new recalculated threshold. \n @param _queryId The unique query identifier."},"functionSelector":"66bfdc75","id":3992,"implemented":false,"kind":"function","modifiers":[],"name":"upgradeReward","nameLocation":"2451:13:26","nodeType":"FunctionDefinition","parameters":{"id":3990,"nodeType":"ParameterList","parameters":[{"constant":false,"id":3989,"mutability":"mutable","name":"_queryId","nameLocation":"2473:8:26","nodeType":"VariableDeclaration","scope":3992,"src":"2465:16:26","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":3988,"name":"uint256","nodeType":"ElementaryTypeName","src":"2465:7:26","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2464:18:26"},"returnParameters":{"id":3991,"nodeType":"ParameterList","parameters":[],"src":"2499:0:26"},"scope":3993,"src":"2442:58:26","stateMutability":"payable","virtual":false,"visibility":"external"}],"scope":3994,"src":"653:1849:26","usedErrors":[]}],"src":"33:2470:26"},"id":26},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol","exportedSymbols":{"IWitnetRequest":[3829],"IWitnetRequestBoardView":[4106],"Witnet":[4619]},"id":4107,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":3995,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:27"},{"id":3996,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:27"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":3997,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":4107,"sourceUnit":4620,"src":"100:28:27","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":3998,"nodeType":"StructuredDocumentation","src":"130:83:27","text":"@title Witnet Request Board info interface.\n @author The Witnet Foundation."},"fullyImplemented":false,"id":4106,"linearizedBaseContracts":[4106],"name":"IWitnetRequestBoardView","nameLocation":"223:23:27","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":3999,"nodeType":"StructuredDocumentation","src":"253:158:27","text":"Estimates the amount of reward we need to insert for a given gas price.\n @param _gasPrice The gas price for which we need to calculate the rewards."},"functionSelector":"d2e87561","id":4006,"implemented":false,"kind":"function","modifiers":[],"name":"estimateReward","nameLocation":"425:14:27","nodeType":"FunctionDefinition","parameters":{"id":4002,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4001,"mutability":"mutable","name":"_gasPrice","nameLocation":"448:9:27","nodeType":"VariableDeclaration","scope":4006,"src":"440:17:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4000,"name":"uint256","nodeType":"ElementaryTypeName","src":"440:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"439:19:27"},"returnParameters":{"id":4005,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4004,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4006,"src":"482:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4003,"name":"uint256","nodeType":"ElementaryTypeName","src":"482:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"481:9:27"},"scope":4106,"src":"416:75:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4007,"nodeType":"StructuredDocumentation","src":"497:70:27","text":"Returns next query id to be generated by the Witnet Request Board."},"functionSelector":"c805dd0f","id":4012,"implemented":false,"kind":"function","modifiers":[],"name":"getNextQueryId","nameLocation":"581:14:27","nodeType":"FunctionDefinition","parameters":{"id":4008,"nodeType":"ParameterList","parameters":[],"src":"595:2:27"},"returnParameters":{"id":4011,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4010,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4012,"src":"621:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4009,"name":"uint256","nodeType":"ElementaryTypeName","src":"621:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"620:9:27"},"scope":4106,"src":"572:58:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4013,"nodeType":"StructuredDocumentation","src":"636:77:27","text":"Gets the whole Query data contents, if any, no matter its current status."},"functionSelector":"c2485ebd","id":4021,"implemented":false,"kind":"function","modifiers":[],"name":"getQueryData","nameLocation":"727:12:27","nodeType":"FunctionDefinition","parameters":{"id":4016,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4015,"mutability":"mutable","name":"_queryId","nameLocation":"748:8:27","nodeType":"VariableDeclaration","scope":4021,"src":"740:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4014,"name":"uint256","nodeType":"ElementaryTypeName","src":"740:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"739:18:27"},"returnParameters":{"id":4020,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4019,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4021,"src":"781:19:27","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_memory_ptr","typeString":"struct Witnet.Query"},"typeName":{"id":4018,"nodeType":"UserDefinedTypeName","pathNode":{"id":4017,"name":"Witnet.Query","nodeType":"IdentifierPath","referencedDeclaration":4310,"src":"781:12:27"},"referencedDeclaration":4310,"src":"781:12:27","typeDescriptions":{"typeIdentifier":"t_struct$_Query_$4310_storage_ptr","typeString":"struct Witnet.Query"}},"visibility":"internal"}],"src":"780:21:27"},"scope":4106,"src":"718:84:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4022,"nodeType":"StructuredDocumentation","src":"808:39:27","text":"Gets current status of given query."},"functionSelector":"6f07abcc","id":4030,"implemented":false,"kind":"function","modifiers":[],"name":"getQueryStatus","nameLocation":"861:14:27","nodeType":"FunctionDefinition","parameters":{"id":4025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4024,"mutability":"mutable","name":"_queryId","nameLocation":"884:8:27","nodeType":"VariableDeclaration","scope":4030,"src":"876:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4023,"name":"uint256","nodeType":"ElementaryTypeName","src":"876:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"875:18:27"},"returnParameters":{"id":4029,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4028,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4030,"src":"917:18:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"},"typeName":{"id":4027,"nodeType":"UserDefinedTypeName","pathNode":{"id":4026,"name":"Witnet.QueryStatus","nodeType":"IdentifierPath","referencedDeclaration":4315,"src":"917:18:27"},"referencedDeclaration":4315,"src":"917:18:27","typeDescriptions":{"typeIdentifier":"t_enum$_QueryStatus_$4315","typeString":"enum Witnet.QueryStatus"}},"visibility":"internal"}],"src":"916:20:27"},"scope":4106,"src":"852:85:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4031,"nodeType":"StructuredDocumentation","src":"943:261:27","text":"Retrieves the whole Request record posted to the Witnet Request Board.\n @dev Fails if the `_queryId` is not valid or, if it has already been reported\n @dev or deleted.\n @param _queryId The unique identifier of a previously posted query."},"functionSelector":"99f65804","id":4039,"implemented":false,"kind":"function","modifiers":[],"name":"readRequest","nameLocation":"1218:11:27","nodeType":"FunctionDefinition","parameters":{"id":4034,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4033,"mutability":"mutable","name":"_queryId","nameLocation":"1238:8:27","nodeType":"VariableDeclaration","scope":4039,"src":"1230:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4032,"name":"uint256","nodeType":"ElementaryTypeName","src":"1230:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1229:18:27"},"returnParameters":{"id":4038,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4037,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4039,"src":"1271:21:27","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_memory_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":4036,"nodeType":"UserDefinedTypeName","pathNode":{"id":4035,"name":"Witnet.Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"1271:14:27"},"referencedDeclaration":4327,"src":"1271:14:27","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"}],"src":"1270:23:27"},"scope":4106,"src":"1209:85:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4040,"nodeType":"StructuredDocumentation","src":"1300:334:27","text":"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\n @dev Fails if the `_queryId` is not valid, or if the related script bytecode \n @dev got changed after being posted. Returns empty array once it gets reported, \n @dev or deleted.\n @param _queryId The unique query identifier."},"functionSelector":"3b885f2a","id":4047,"implemented":false,"kind":"function","modifiers":[],"name":"readRequestBytecode","nameLocation":"1648:19:27","nodeType":"FunctionDefinition","parameters":{"id":4043,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4042,"mutability":"mutable","name":"_queryId","nameLocation":"1676:8:27","nodeType":"VariableDeclaration","scope":4047,"src":"1668:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4041,"name":"uint256","nodeType":"ElementaryTypeName","src":"1668:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1667:18:27"},"returnParameters":{"id":4046,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4045,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4047,"src":"1709:12:27","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4044,"name":"bytes","nodeType":"ElementaryTypeName","src":"1709:5:27","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1708:14:27"},"scope":4106,"src":"1639:84:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4048,"nodeType":"StructuredDocumentation","src":"1729:311:27","text":"Retrieves the gas price that any assigned reporter will have to pay when reporting \n result to a previously posted Witnet data request.\n @dev Fails if the `_queryId` is not valid or, if it has already been \n @dev reported, or deleted. \n @param _queryId The unique query identifie"},"functionSelector":"3ae97295","id":4055,"implemented":false,"kind":"function","modifiers":[],"name":"readRequestGasPrice","nameLocation":"2054:19:27","nodeType":"FunctionDefinition","parameters":{"id":4051,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4050,"mutability":"mutable","name":"_queryId","nameLocation":"2082:8:27","nodeType":"VariableDeclaration","scope":4055,"src":"2074:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4049,"name":"uint256","nodeType":"ElementaryTypeName","src":"2074:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2073:18:27"},"returnParameters":{"id":4054,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4053,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4055,"src":"2115:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4052,"name":"uint256","nodeType":"ElementaryTypeName","src":"2115:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2114:9:27"},"scope":4106,"src":"2045:79:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4056,"nodeType":"StructuredDocumentation","src":"2130:229:27","text":"Retrieves the reward currently set for the referred query.\n @dev Fails if the `_queryId` is not valid or, if it has already been \n @dev reported, or deleted. \n @param _queryId The unique query identifier."},"functionSelector":"1dd27daf","id":4063,"implemented":false,"kind":"function","modifiers":[],"name":"readRequestReward","nameLocation":"2373:17:27","nodeType":"FunctionDefinition","parameters":{"id":4059,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4058,"mutability":"mutable","name":"_queryId","nameLocation":"2399:8:27","nodeType":"VariableDeclaration","scope":4063,"src":"2391:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4057,"name":"uint256","nodeType":"ElementaryTypeName","src":"2391:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2390:18:27"},"returnParameters":{"id":4062,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4061,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4063,"src":"2432:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4060,"name":"uint256","nodeType":"ElementaryTypeName","src":"2432:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2431:9:27"},"scope":4106,"src":"2364:77:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4064,"nodeType":"StructuredDocumentation","src":"2447:220:27","text":"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"754e5bea","id":4072,"implemented":false,"kind":"function","modifiers":[],"name":"readResponse","nameLocation":"2681:12:27","nodeType":"FunctionDefinition","parameters":{"id":4067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4066,"mutability":"mutable","name":"_queryId","nameLocation":"2702:8:27","nodeType":"VariableDeclaration","scope":4072,"src":"2694:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4065,"name":"uint256","nodeType":"ElementaryTypeName","src":"2694:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2693:18:27"},"returnParameters":{"id":4071,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4070,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4072,"src":"2735:22:27","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_memory_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":4069,"nodeType":"UserDefinedTypeName","pathNode":{"id":4068,"name":"Witnet.Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"2735:15:27"},"referencedDeclaration":4336,"src":"2735:15:27","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"}],"src":"2734:24:27"},"scope":4106,"src":"2672:87:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4073,"nodeType":"StructuredDocumentation","src":"2765:213:27","text":"Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"dc3c71cd","id":4080,"implemented":false,"kind":"function","modifiers":[],"name":"readResponseDrTxHash","nameLocation":"2992:20:27","nodeType":"FunctionDefinition","parameters":{"id":4076,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4075,"mutability":"mutable","name":"_queryId","nameLocation":"3021:8:27","nodeType":"VariableDeclaration","scope":4080,"src":"3013:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4074,"name":"uint256","nodeType":"ElementaryTypeName","src":"3013:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3012:18:27"},"returnParameters":{"id":4079,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4078,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4080,"src":"3054:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":4077,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3054:7:27","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"3053:9:27"},"scope":4106,"src":"2983:80:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4081,"nodeType":"StructuredDocumentation","src":"3073:201:27","text":"Retrieves the address that reported the result to a previously-posted request.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"9d96fced","id":4088,"implemented":false,"kind":"function","modifiers":[],"name":"readResponseReporter","nameLocation":"3288:20:27","nodeType":"FunctionDefinition","parameters":{"id":4084,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4083,"mutability":"mutable","name":"_queryId","nameLocation":"3317:8:27","nodeType":"VariableDeclaration","scope":4088,"src":"3309:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4082,"name":"uint256","nodeType":"ElementaryTypeName","src":"3309:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3308:18:27"},"returnParameters":{"id":4087,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4086,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4088,"src":"3350:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":4085,"name":"address","nodeType":"ElementaryTypeName","src":"3350:7:27","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3349:9:27"},"scope":4106,"src":"3279:80:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4089,"nodeType":"StructuredDocumentation","src":"3365:202:27","text":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"d4da69ac","id":4097,"implemented":false,"kind":"function","modifiers":[],"name":"readResponseResult","nameLocation":"3581:18:27","nodeType":"FunctionDefinition","parameters":{"id":4092,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4091,"mutability":"mutable","name":"_queryId","nameLocation":"3608:8:27","nodeType":"VariableDeclaration","scope":4097,"src":"3600:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4090,"name":"uint256","nodeType":"ElementaryTypeName","src":"3600:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3599:18:27"},"returnParameters":{"id":4096,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4095,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4097,"src":"3641:20:27","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4094,"nodeType":"UserDefinedTypeName","pathNode":{"id":4093,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"3641:13:27"},"referencedDeclaration":4342,"src":"3641:13:27","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"3640:22:27"},"scope":4106,"src":"3572:91:27","stateMutability":"view","virtual":false,"visibility":"external"},{"documentation":{"id":4098,"nodeType":"StructuredDocumentation","src":"3669:218:27","text":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\n @dev Fails if the `_queryId` is not in 'Reported' status.\n @param _queryId The unique query identifier."},"functionSelector":"20f9241e","id":4105,"implemented":false,"kind":"function","modifiers":[],"name":"readResponseTimestamp","nameLocation":"3901:21:27","nodeType":"FunctionDefinition","parameters":{"id":4101,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4100,"mutability":"mutable","name":"_queryId","nameLocation":"3931:8:27","nodeType":"VariableDeclaration","scope":4105,"src":"3923:16:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4099,"name":"uint256","nodeType":"ElementaryTypeName","src":"3923:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3922:18:27"},"returnParameters":{"id":4104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4103,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4105,"src":"3964:7:27","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4102,"name":"uint256","nodeType":"ElementaryTypeName","src":"3964:7:27","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3963:9:27"},"scope":4106,"src":"3892:81:27","stateMutability":"view","virtual":false,"visibility":"external"}],"scope":4107,"src":"213:3762:27","usedErrors":[]}],"src":"33:3943:27"},"id":27},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol","exportedSymbols":{"IWitnetRequest":[3829],"IWitnetRequestParser":[4284],"Witnet":[4619]},"id":4285,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":4108,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:28"},{"id":4109,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:28"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":4110,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":4285,"sourceUnit":4620,"src":"100:28:28","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":{"id":4111,"nodeType":"StructuredDocumentation","src":"130:324:28","text":"@title The Witnet interface for decoding Witnet-provided request to Data Requests.\n This interface exposes functions to check for the success/failure of\n a Witnet-provided result, as well as to parse and convert result into\n Solidity types suitable to the application level. \n @author The Witnet Foundation."},"fullyImplemented":false,"id":4284,"linearizedBaseContracts":[4284],"name":"IWitnetRequestParser","nameLocation":"464:20:28","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":4112,"nodeType":"StructuredDocumentation","src":"492:171:28","text":"Decode raw CBOR bytes into a Witnet.Result instance.\n @param _cborBytes Raw bytes representing a CBOR-encoded value.\n @return A `Witnet.Result` instance."},"functionSelector":"e99e47f3","id":4120,"implemented":false,"kind":"function","modifiers":[],"name":"resultFromCborBytes","nameLocation":"677:19:28","nodeType":"FunctionDefinition","parameters":{"id":4115,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4114,"mutability":"mutable","name":"_cborBytes","nameLocation":"710:10:28","nodeType":"VariableDeclaration","scope":4120,"src":"697:23:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4113,"name":"bytes","nodeType":"ElementaryTypeName","src":"697:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"696:25:28"},"returnParameters":{"id":4119,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4118,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4120,"src":"745:20:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4117,"nodeType":"UserDefinedTypeName","pathNode":{"id":4116,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"745:13:28"},"referencedDeclaration":4342,"src":"745:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"744:22:28"},"scope":4284,"src":"668:99:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4121,"nodeType":"StructuredDocumentation","src":"773:154:28","text":"Decode a CBOR value into a Witnet.Result instance.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return A `Witnet.Result` instance."},"functionSelector":"2565082b","id":4130,"implemented":false,"kind":"function","modifiers":[],"name":"resultFromCborValue","nameLocation":"941:19:28","nodeType":"FunctionDefinition","parameters":{"id":4125,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4124,"mutability":"mutable","name":"_cborValue","nameLocation":"980:10:28","nodeType":"VariableDeclaration","scope":4130,"src":"961:29:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":4123,"nodeType":"UserDefinedTypeName","pathNode":{"id":4122,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"961:11:28"},"referencedDeclaration":4356,"src":"961:11:28","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"960:31:28"},"returnParameters":{"id":4129,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4128,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4130,"src":"1015:20:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4127,"nodeType":"UserDefinedTypeName","pathNode":{"id":4126,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1015:13:28"},"referencedDeclaration":4342,"src":"1015:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1014:22:28"},"scope":4284,"src":"932:105:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4131,"nodeType":"StructuredDocumentation","src":"1043:153:28","text":"Tell if a Witnet.Result is successful.\n @param _result An instance of Witnet.Result.\n @return `true` if successful, `false` if errored."},"functionSelector":"a8604c1a","id":4139,"implemented":false,"kind":"function","modifiers":[],"name":"isOk","nameLocation":"1210:4:28","nodeType":"FunctionDefinition","parameters":{"id":4135,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4134,"mutability":"mutable","name":"_result","nameLocation":"1236:7:28","nodeType":"VariableDeclaration","scope":4139,"src":"1215:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4133,"nodeType":"UserDefinedTypeName","pathNode":{"id":4132,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1215:13:28"},"referencedDeclaration":4342,"src":"1215:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1214:30:28"},"returnParameters":{"id":4138,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4137,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4139,"src":"1268:4:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":4136,"name":"bool","nodeType":"ElementaryTypeName","src":"1268:4:28","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1267:6:28"},"scope":4284,"src":"1201:73:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4140,"nodeType":"StructuredDocumentation","src":"1280:150:28","text":"Tell if a Witnet.Result is errored.\n @param _result An instance of Witnet.Result.\n @return `true` if errored, `false` if successful."},"functionSelector":"7780cde1","id":4148,"implemented":false,"kind":"function","modifiers":[],"name":"isError","nameLocation":"1444:7:28","nodeType":"FunctionDefinition","parameters":{"id":4144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4143,"mutability":"mutable","name":"_result","nameLocation":"1473:7:28","nodeType":"VariableDeclaration","scope":4148,"src":"1452:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4142,"nodeType":"UserDefinedTypeName","pathNode":{"id":4141,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1452:13:28"},"referencedDeclaration":4342,"src":"1452:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1451:30:28"},"returnParameters":{"id":4147,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4146,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4148,"src":"1505:4:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":4145,"name":"bool","nodeType":"ElementaryTypeName","src":"1505:4:28","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1504:6:28"},"scope":4284,"src":"1435:76:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4149,"nodeType":"StructuredDocumentation","src":"1517:178:28","text":"Decode a bytes value from a Witnet.Result as a `bytes` value.\n @param _result An instance of Witnet.Result.\n @return The `bytes` decoded from the Witnet.Result."},"functionSelector":"c683b465","id":4157,"implemented":false,"kind":"function","modifiers":[],"name":"asBytes","nameLocation":"1709:7:28","nodeType":"FunctionDefinition","parameters":{"id":4153,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4152,"mutability":"mutable","name":"_result","nameLocation":"1738:7:28","nodeType":"VariableDeclaration","scope":4157,"src":"1717:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4151,"nodeType":"UserDefinedTypeName","pathNode":{"id":4150,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1717:13:28"},"referencedDeclaration":4342,"src":"1717:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1716:30:28"},"returnParameters":{"id":4156,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4155,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4157,"src":"1770:12:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4154,"name":"bytes","nodeType":"ElementaryTypeName","src":"1770:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1769:14:28"},"scope":4284,"src":"1700:84:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4158,"nodeType":"StructuredDocumentation","src":"1790:182:28","text":"Decode a bytes value from a Witnet.Result as a `bytes32` value.\n @param _result An instance of Witnet.Result.\n @return The `bytes32` decoded from the Witnet.Result."},"functionSelector":"cf62d115","id":4166,"implemented":false,"kind":"function","modifiers":[],"name":"asBytes32","nameLocation":"1986:9:28","nodeType":"FunctionDefinition","parameters":{"id":4162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4161,"mutability":"mutable","name":"_result","nameLocation":"2017:7:28","nodeType":"VariableDeclaration","scope":4166,"src":"1996:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4160,"nodeType":"UserDefinedTypeName","pathNode":{"id":4159,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1996:13:28"},"referencedDeclaration":4342,"src":"1996:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1995:30:28"},"returnParameters":{"id":4165,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4164,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4166,"src":"2049:7:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":4163,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2049:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2048:9:28"},"scope":4284,"src":"1977:81:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4167,"nodeType":"StructuredDocumentation","src":"2064:213:28","text":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\n @param _result An instance of `Witnet.Result`.\n @return The `CBORValue.Error memory` decoded from the Witnet.Result."},"functionSelector":"db04f16d","id":4176,"implemented":false,"kind":"function","modifiers":[],"name":"asErrorCode","nameLocation":"2291:11:28","nodeType":"FunctionDefinition","parameters":{"id":4171,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4170,"mutability":"mutable","name":"_result","nameLocation":"2324:7:28","nodeType":"VariableDeclaration","scope":4176,"src":"2303:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4169,"nodeType":"UserDefinedTypeName","pathNode":{"id":4168,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"2303:13:28"},"referencedDeclaration":4342,"src":"2303:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"2302:30:28"},"returnParameters":{"id":4175,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4174,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4176,"src":"2356:17:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":4173,"nodeType":"UserDefinedTypeName","pathNode":{"id":4172,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"2356:17:28"},"referencedDeclaration":4618,"src":"2356:17:28","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"}],"src":"2355:19:28"},"scope":4284,"src":"2282:93:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4177,"nodeType":"StructuredDocumentation","src":"2382:433:28","text":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\n @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\n @param _result An instance of `Witnet.Result`.\n @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."},"functionSelector":"d74803be","id":4188,"implemented":false,"kind":"function","modifiers":[],"name":"asErrorMessage","nameLocation":"2829:14:28","nodeType":"FunctionDefinition","parameters":{"id":4181,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4180,"mutability":"mutable","name":"_result","nameLocation":"2865:7:28","nodeType":"VariableDeclaration","scope":4188,"src":"2844:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4179,"nodeType":"UserDefinedTypeName","pathNode":{"id":4178,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"2844:13:28"},"referencedDeclaration":4342,"src":"2844:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"2843:30:28"},"returnParameters":{"id":4187,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4184,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4188,"src":"2897:17:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":4183,"nodeType":"UserDefinedTypeName","pathNode":{"id":4182,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"2897:17:28"},"referencedDeclaration":4618,"src":"2897:17:28","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"},{"constant":false,"id":4186,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4188,"src":"2916:13:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":4185,"name":"string","nodeType":"ElementaryTypeName","src":"2916:6:28","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2896:34:28"},"scope":4284,"src":"2820:111:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4189,"nodeType":"StructuredDocumentation","src":"2937:195:28","text":"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\n @param _result An instance of `Witnet.Result`.\n @return The `uint64[]` raw error as decoded from the `Witnet.Result`."},"functionSelector":"b0768328","id":4198,"implemented":false,"kind":"function","modifiers":[],"name":"asRawError","nameLocation":"3146:10:28","nodeType":"FunctionDefinition","parameters":{"id":4193,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4192,"mutability":"mutable","name":"_result","nameLocation":"3178:7:28","nodeType":"VariableDeclaration","scope":4198,"src":"3157:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4191,"nodeType":"UserDefinedTypeName","pathNode":{"id":4190,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"3157:13:28"},"referencedDeclaration":4342,"src":"3157:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"3156:30:28"},"returnParameters":{"id":4197,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4196,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4198,"src":"3209:15:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":4194,"name":"uint64","nodeType":"ElementaryTypeName","src":"3209:6:28","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":4195,"nodeType":"ArrayTypeName","src":"3209:8:28","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"3208:17:28"},"scope":4284,"src":"3137:89:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4199,"nodeType":"StructuredDocumentation","src":"3232:179:28","text":"Decode a boolean value from a Witnet.Result as an `bool` value.\n @param _result An instance of Witnet.Result.\n @return The `bool` decoded from the Witnet.Result."},"functionSelector":"d4ced132","id":4207,"implemented":false,"kind":"function","modifiers":[],"name":"asBool","nameLocation":"3425:6:28","nodeType":"FunctionDefinition","parameters":{"id":4203,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4202,"mutability":"mutable","name":"_result","nameLocation":"3453:7:28","nodeType":"VariableDeclaration","scope":4207,"src":"3432:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4201,"nodeType":"UserDefinedTypeName","pathNode":{"id":4200,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"3432:13:28"},"referencedDeclaration":4342,"src":"3432:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"3431:30:28"},"returnParameters":{"id":4206,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4205,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4207,"src":"3485:4:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":4204,"name":"bool","nodeType":"ElementaryTypeName","src":"3485:4:28","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3484:6:28"},"scope":4284,"src":"3416:75:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4208,"nodeType":"StructuredDocumentation","src":"3497:572:28","text":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\n @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\n by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\n use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n @param _result An instance of Witnet.Result.\n @return The `int128` decoded from the Witnet.Result."},"functionSelector":"2241f2db","id":4216,"implemented":false,"kind":"function","modifiers":[],"name":"asFixed16","nameLocation":"4083:9:28","nodeType":"FunctionDefinition","parameters":{"id":4212,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4211,"mutability":"mutable","name":"_result","nameLocation":"4114:7:28","nodeType":"VariableDeclaration","scope":4216,"src":"4093:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4210,"nodeType":"UserDefinedTypeName","pathNode":{"id":4209,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"4093:13:28"},"referencedDeclaration":4342,"src":"4093:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"4092:30:28"},"returnParameters":{"id":4215,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4214,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4216,"src":"4146:5:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":4213,"name":"int32","nodeType":"ElementaryTypeName","src":"4146:5:28","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"4145:7:28"},"scope":4284,"src":"4074:79:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4217,"nodeType":"StructuredDocumentation","src":"4159:198:28","text":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\n @param _result An instance of Witnet.Result.\n @return The `int128[]` decoded from the Witnet.Result."},"functionSelector":"0f572d2c","id":4226,"implemented":false,"kind":"function","modifiers":[],"name":"asFixed16Array","nameLocation":"4371:14:28","nodeType":"FunctionDefinition","parameters":{"id":4221,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4220,"mutability":"mutable","name":"_result","nameLocation":"4407:7:28","nodeType":"VariableDeclaration","scope":4226,"src":"4386:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4219,"nodeType":"UserDefinedTypeName","pathNode":{"id":4218,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"4386:13:28"},"referencedDeclaration":4342,"src":"4386:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"4385:30:28"},"returnParameters":{"id":4225,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4224,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4226,"src":"4439:14:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[]"},"typeName":{"baseType":{"id":4222,"name":"int32","nodeType":"ElementaryTypeName","src":"4439:5:28","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":4223,"nodeType":"ArrayTypeName","src":"4439:7:28","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}},"visibility":"internal"}],"src":"4438:16:28"},"scope":4284,"src":"4362:93:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4227,"nodeType":"StructuredDocumentation","src":"4461:191:28","text":"Decode a integer numeric value from a Witnet.Result as an `int128` value.\n @param _result An instance of Witnet.Result.\n @return The `int128` decoded from the Witnet.Result."},"functionSelector":"2b905fbb","id":4235,"implemented":false,"kind":"function","modifiers":[],"name":"asInt128","nameLocation":"4666:8:28","nodeType":"FunctionDefinition","parameters":{"id":4231,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4230,"mutability":"mutable","name":"_result","nameLocation":"4696:7:28","nodeType":"VariableDeclaration","scope":4235,"src":"4675:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4229,"nodeType":"UserDefinedTypeName","pathNode":{"id":4228,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"4675:13:28"},"referencedDeclaration":4342,"src":"4675:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"4674:30:28"},"returnParameters":{"id":4234,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4233,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4235,"src":"4728:6:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"},"typeName":{"id":4232,"name":"int128","nodeType":"ElementaryTypeName","src":"4728:6:28","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"visibility":"internal"}],"src":"4727:8:28"},"scope":4284,"src":"4657:79:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4236,"nodeType":"StructuredDocumentation","src":"4742:206:28","text":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\n @param _result An instance of Witnet.Result.\n @return The `int128[]` decoded from the Witnet.Result."},"functionSelector":"07e66852","id":4245,"implemented":false,"kind":"function","modifiers":[],"name":"asInt128Array","nameLocation":"4962:13:28","nodeType":"FunctionDefinition","parameters":{"id":4240,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4239,"mutability":"mutable","name":"_result","nameLocation":"4997:7:28","nodeType":"VariableDeclaration","scope":4245,"src":"4976:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4238,"nodeType":"UserDefinedTypeName","pathNode":{"id":4237,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"4976:13:28"},"referencedDeclaration":4342,"src":"4976:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"4975:30:28"},"returnParameters":{"id":4244,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4243,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4245,"src":"5029:15:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[]"},"typeName":{"baseType":{"id":4241,"name":"int128","nodeType":"ElementaryTypeName","src":"5029:6:28","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":4242,"nodeType":"ArrayTypeName","src":"5029:8:28","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}},"visibility":"internal"}],"src":"5028:17:28"},"scope":4284,"src":"4953:93:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4246,"nodeType":"StructuredDocumentation","src":"5052:181:28","text":"Decode a string value from a Witnet.Result as a `string` value.\n @param _result An instance of Witnet.Result.\n @return The `string` decoded from the Witnet.Result."},"functionSelector":"109a0e3c","id":4254,"implemented":false,"kind":"function","modifiers":[],"name":"asString","nameLocation":"5247:8:28","nodeType":"FunctionDefinition","parameters":{"id":4250,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4249,"mutability":"mutable","name":"_result","nameLocation":"5277:7:28","nodeType":"VariableDeclaration","scope":4254,"src":"5256:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4248,"nodeType":"UserDefinedTypeName","pathNode":{"id":4247,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"5256:13:28"},"referencedDeclaration":4342,"src":"5256:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"5255:30:28"},"returnParameters":{"id":4253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4252,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4254,"src":"5309:13:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":4251,"name":"string","nodeType":"ElementaryTypeName","src":"5309:6:28","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5308:15:28"},"scope":4284,"src":"5238:86:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4255,"nodeType":"StructuredDocumentation","src":"5330:196:28","text":"Decode an array of string values from a Witnet.Result as a `string[]` value.\n @param _result An instance of Witnet.Result.\n @return The `string[]` decoded from the Witnet.Result."},"functionSelector":"c87d969e","id":4264,"implemented":false,"kind":"function","modifiers":[],"name":"asStringArray","nameLocation":"5540:13:28","nodeType":"FunctionDefinition","parameters":{"id":4259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4258,"mutability":"mutable","name":"_result","nameLocation":"5575:7:28","nodeType":"VariableDeclaration","scope":4264,"src":"5554:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4257,"nodeType":"UserDefinedTypeName","pathNode":{"id":4256,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"5554:13:28"},"referencedDeclaration":4342,"src":"5554:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"5553:30:28"},"returnParameters":{"id":4263,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4262,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4264,"src":"5607:15:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":4260,"name":"string","nodeType":"ElementaryTypeName","src":"5607:6:28","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":4261,"nodeType":"ArrayTypeName","src":"5607:8:28","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"5606:17:28"},"scope":4284,"src":"5531:93:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4265,"nodeType":"StructuredDocumentation","src":"5630:190:28","text":"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\n @param _result An instance of Witnet.Result.\n @return The `uint64` decoded from the Witnet.Result."},"functionSelector":"bc7e25ff","id":4273,"implemented":false,"kind":"function","modifiers":[],"name":"asUint64","nameLocation":"5834:8:28","nodeType":"FunctionDefinition","parameters":{"id":4269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4268,"mutability":"mutable","name":"_result","nameLocation":"5864:7:28","nodeType":"VariableDeclaration","scope":4273,"src":"5843:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4267,"nodeType":"UserDefinedTypeName","pathNode":{"id":4266,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"5843:13:28"},"referencedDeclaration":4342,"src":"5843:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"5842:30:28"},"returnParameters":{"id":4272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4271,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4273,"src":"5895:6:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":4270,"name":"uint64","nodeType":"ElementaryTypeName","src":"5895:6:28","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"5894:8:28"},"scope":4284,"src":"5825:78:28","stateMutability":"pure","virtual":false,"visibility":"external"},{"documentation":{"id":4274,"nodeType":"StructuredDocumentation","src":"5909:205:28","text":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\n @param _result An instance of Witnet.Result.\n @return The `uint64[]` decoded from the Witnet.Result."},"functionSelector":"4dcffaf3","id":4283,"implemented":false,"kind":"function","modifiers":[],"name":"asUint64Array","nameLocation":"6128:13:28","nodeType":"FunctionDefinition","parameters":{"id":4278,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4277,"mutability":"mutable","name":"_result","nameLocation":"6163:7:28","nodeType":"VariableDeclaration","scope":4283,"src":"6142:28:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":4276,"nodeType":"UserDefinedTypeName","pathNode":{"id":4275,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"6142:13:28"},"referencedDeclaration":4342,"src":"6142:13:28","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"6141:30:28"},"returnParameters":{"id":4282,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4281,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4283,"src":"6195:15:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":4279,"name":"uint64","nodeType":"ElementaryTypeName","src":"6195:6:28","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":4280,"nodeType":"ArrayTypeName","src":"6195:8:28","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"6194:17:28"},"scope":4284,"src":"6119:93:28","stateMutability":"pure","virtual":false,"visibility":"external"}],"scope":4285,"src":"454:5761:28","usedErrors":[]}],"src":"33:6183:28"},"id":28},"witnet-solidity-bridge/contracts/libs/Witnet.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619]},"id":4620,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":4286,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:29"},{"id":4287,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:29"},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol","file":"../interfaces/IWitnetRequest.sol","id":4288,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":4620,"sourceUnit":3830,"src":"100:42:29","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"library","fullyImplemented":true,"id":4619,"linearizedBaseContracts":[4619],"name":"Witnet","nameLocation":"152:6:29","nodeType":"ContractDefinition","nodes":[{"body":{"id":4300,"nodeType":"Block","src":"368:41:29","statements":[{"expression":{"arguments":[{"id":4297,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4291,"src":"392:9:29","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":4296,"name":"sha256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-22,"src":"385:6:29","typeDescriptions":{"typeIdentifier":"t_function_sha256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":4298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"385:17:29","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":4295,"id":4299,"nodeType":"Return","src":"378:24:29"}]},"documentation":{"id":4289,"nodeType":"StructuredDocumentation","src":"166:127:29","text":"@notice Witnet function that computes the hash of a CBOR-encoded Data Request.\n @param _bytecode CBOR-encoded RADON."},"id":4301,"implemented":true,"kind":"function","modifiers":[],"name":"hash","nameLocation":"307:4:29","nodeType":"FunctionDefinition","parameters":{"id":4292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4291,"mutability":"mutable","name":"_bytecode","nameLocation":"325:9:29","nodeType":"VariableDeclaration","scope":4301,"src":"312:22:29","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4290,"name":"bytes","nodeType":"ElementaryTypeName","src":"312:5:29","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"311:24:29"},"returnParameters":{"id":4295,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4294,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4301,"src":"359:7:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":4293,"name":"bytes32","nodeType":"ElementaryTypeName","src":"359:7:29","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"358:9:29"},"scope":4619,"src":"298:111:29","stateMutability":"pure","virtual":false,"visibility":"internal"},{"canonicalName":"Witnet.Query","id":4310,"members":[{"constant":false,"id":4304,"mutability":"mutable","name":"request","nameLocation":"561:7:29","nodeType":"VariableDeclaration","scope":4310,"src":"553:15:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"},"typeName":{"id":4303,"nodeType":"UserDefinedTypeName","pathNode":{"id":4302,"name":"Request","nodeType":"IdentifierPath","referencedDeclaration":4327,"src":"553:7:29"},"referencedDeclaration":4327,"src":"553:7:29","typeDescriptions":{"typeIdentifier":"t_struct$_Request_$4327_storage_ptr","typeString":"struct Witnet.Request"}},"visibility":"internal"},{"constant":false,"id":4307,"mutability":"mutable","name":"response","nameLocation":"587:8:29","nodeType":"VariableDeclaration","scope":4310,"src":"578:17:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"},"typeName":{"id":4306,"nodeType":"UserDefinedTypeName","pathNode":{"id":4305,"name":"Response","nodeType":"IdentifierPath","referencedDeclaration":4336,"src":"578:8:29"},"referencedDeclaration":4336,"src":"578:8:29","typeDescriptions":{"typeIdentifier":"t_struct$_Response_$4336_storage_ptr","typeString":"struct Witnet.Response"}},"visibility":"internal"},{"constant":false,"id":4309,"mutability":"mutable","name":"from","nameLocation":"613:4:29","nodeType":"VariableDeclaration","scope":4310,"src":"605:12:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":4308,"name":"address","nodeType":"ElementaryTypeName","src":"605:7:29","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"Query","nameLocation":"537:5:29","nodeType":"StructDefinition","scope":4619,"src":"530:145:29","visibility":"public"},{"canonicalName":"Witnet.QueryStatus","id":4315,"members":[{"id":4311,"name":"Unknown","nameLocation":"751:7:29","nodeType":"EnumValue","src":"751:7:29"},{"id":4312,"name":"Posted","nameLocation":"768:6:29","nodeType":"EnumValue","src":"768:6:29"},{"id":4313,"name":"Reported","nameLocation":"784:8:29","nodeType":"EnumValue","src":"784:8:29"},{"id":4314,"name":"Deleted","nameLocation":"802:7:29","nodeType":"EnumValue","src":"802:7:29"}],"name":"QueryStatus","nameLocation":"729:11:29","nodeType":"EnumDefinition","src":"724:91:29"},{"canonicalName":"Witnet.Request","id":4327,"members":[{"constant":false,"id":4318,"mutability":"mutable","name":"addr","nameLocation":"948:4:29","nodeType":"VariableDeclaration","scope":4327,"src":"933:19:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"},"typeName":{"id":4317,"nodeType":"UserDefinedTypeName","pathNode":{"id":4316,"name":"IWitnetRequest","nodeType":"IdentifierPath","referencedDeclaration":3829,"src":"933:14:29"},"referencedDeclaration":3829,"src":"933:14:29","typeDescriptions":{"typeIdentifier":"t_contract$_IWitnetRequest_$3829","typeString":"contract IWitnetRequest"}},"visibility":"internal"},{"constant":false,"id":4320,"mutability":"mutable","name":"requester","nameLocation":"1053:9:29","nodeType":"VariableDeclaration","scope":4327,"src":"1045:17:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":4319,"name":"address","nodeType":"ElementaryTypeName","src":"1045:7:29","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":4322,"mutability":"mutable","name":"hash","nameLocation":"1131:4:29","nodeType":"VariableDeclaration","scope":4327,"src":"1123:12:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":4321,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1123:7:29","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":4324,"mutability":"mutable","name":"gasprice","nameLocation":"1227:8:29","nodeType":"VariableDeclaration","scope":4327,"src":"1219:16:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4323,"name":"uint256","nodeType":"ElementaryTypeName","src":"1219:7:29","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":4326,"mutability":"mutable","name":"reward","nameLocation":"1326:6:29","nodeType":"VariableDeclaration","scope":4327,"src":"1318:14:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4325,"name":"uint256","nodeType":"ElementaryTypeName","src":"1318:7:29","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Request","nameLocation":"915:7:29","nodeType":"StructDefinition","scope":4619,"src":"908:489:29","visibility":"public"},{"canonicalName":"Witnet.Response","id":4336,"members":[{"constant":false,"id":4329,"mutability":"mutable","name":"reporter","nameLocation":"1527:8:29","nodeType":"VariableDeclaration","scope":4336,"src":"1519:16:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":4328,"name":"address","nodeType":"ElementaryTypeName","src":"1519:7:29","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":4331,"mutability":"mutable","name":"timestamp","nameLocation":"1606:9:29","nodeType":"VariableDeclaration","scope":4336,"src":"1598:17:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4330,"name":"uint256","nodeType":"ElementaryTypeName","src":"1598:7:29","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":4333,"mutability":"mutable","name":"drTxHash","nameLocation":"1682:8:29","nodeType":"VariableDeclaration","scope":4336,"src":"1674:16:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":4332,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1674:7:29","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":4335,"mutability":"mutable","name":"cborBytes","nameLocation":"1786:9:29","nodeType":"VariableDeclaration","scope":4336,"src":"1778:17:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":4334,"name":"bytes","nodeType":"ElementaryTypeName","src":"1778:5:29","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"name":"Response","nameLocation":"1500:8:29","nodeType":"StructDefinition","scope":4619,"src":"1493:380:29","visibility":"public"},{"canonicalName":"Witnet.Result","id":4342,"members":[{"constant":false,"id":4338,"mutability":"mutable","name":"success","nameLocation":"1985:7:29","nodeType":"VariableDeclaration","scope":4342,"src":"1980:12:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":4337,"name":"bool","nodeType":"ElementaryTypeName","src":"1980:4:29","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":4341,"mutability":"mutable","name":"value","nameLocation":"2092:5:29","nodeType":"VariableDeclaration","scope":4342,"src":"2087:10:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":4340,"nodeType":"UserDefinedTypeName","pathNode":{"id":4339,"name":"CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"2087:4:29"},"referencedDeclaration":4356,"src":"2087:4:29","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"name":"Result","nameLocation":"1963:6:29","nodeType":"StructDefinition","scope":4619,"src":"1956:206:29","visibility":"public"},{"canonicalName":"Witnet.CBOR","id":4356,"members":[{"constant":false,"id":4345,"mutability":"mutable","name":"buffer","nameLocation":"2288:6:29","nodeType":"VariableDeclaration","scope":4356,"src":"2281:13:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4344,"nodeType":"UserDefinedTypeName","pathNode":{"id":4343,"name":"Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"2281:6:29"},"referencedDeclaration":4361,"src":"2281:6:29","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":4347,"mutability":"mutable","name":"initialByte","nameLocation":"2310:11:29","nodeType":"VariableDeclaration","scope":4356,"src":"2304:17:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":4346,"name":"uint8","nodeType":"ElementaryTypeName","src":"2304:5:29","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":4349,"mutability":"mutable","name":"majorType","nameLocation":"2337:9:29","nodeType":"VariableDeclaration","scope":4356,"src":"2331:15:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":4348,"name":"uint8","nodeType":"ElementaryTypeName","src":"2331:5:29","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":4351,"mutability":"mutable","name":"additionalInformation","nameLocation":"2362:21:29","nodeType":"VariableDeclaration","scope":4356,"src":"2356:27:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":4350,"name":"uint8","nodeType":"ElementaryTypeName","src":"2356:5:29","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":4353,"mutability":"mutable","name":"len","nameLocation":"2400:3:29","nodeType":"VariableDeclaration","scope":4356,"src":"2393:10:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":4352,"name":"uint64","nodeType":"ElementaryTypeName","src":"2393:6:29","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":4355,"mutability":"mutable","name":"tag","nameLocation":"2420:3:29","nodeType":"VariableDeclaration","scope":4356,"src":"2413:10:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":4354,"name":"uint64","nodeType":"ElementaryTypeName","src":"2413:6:29","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"name":"CBOR","nameLocation":"2266:4:29","nodeType":"StructDefinition","scope":4619,"src":"2259:171:29","visibility":"public"},{"canonicalName":"Witnet.Buffer","id":4361,"members":[{"constant":false,"id":4358,"mutability":"mutable","name":"data","nameLocation":"2497:4:29","nodeType":"VariableDeclaration","scope":4361,"src":"2491:10:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":4357,"name":"bytes","nodeType":"ElementaryTypeName","src":"2491:5:29","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":4360,"mutability":"mutable","name":"cursor","nameLocation":"2518:6:29","nodeType":"VariableDeclaration","scope":4361,"src":"2511:13:29","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4359,"name":"uint32","nodeType":"ElementaryTypeName","src":"2511:6:29","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"name":"Buffer","nameLocation":"2474:6:29","nodeType":"StructDefinition","scope":4619,"src":"2467:64:29","visibility":"public"},{"canonicalName":"Witnet.ErrorCodes","id":4618,"members":[{"id":4362,"name":"Unknown","nameLocation":"2656:7:29","nodeType":"EnumValue","src":"2656:7:29"},{"id":4363,"name":"SourceScriptNotCBOR","nameLocation":"2793:19:29","nodeType":"EnumValue","src":"2793:19:29"},{"id":4364,"name":"SourceScriptNotArray","nameLocation":"2901:20:29","nodeType":"EnumValue","src":"2901:20:29"},{"id":4365,"name":"SourceScriptNotRADON","nameLocation":"3023:20:29","nodeType":"EnumValue","src":"3023:20:29"},{"id":4366,"name":"ScriptFormat0x04","nameLocation":"3077:16:29","nodeType":"EnumValue","src":"3077:16:29"},{"id":4367,"name":"ScriptFormat0x05","nameLocation":"3103:16:29","nodeType":"EnumValue","src":"3103:16:29"},{"id":4368,"name":"ScriptFormat0x06","nameLocation":"3129:16:29","nodeType":"EnumValue","src":"3129:16:29"},{"id":4369,"name":"ScriptFormat0x07","nameLocation":"3155:16:29","nodeType":"EnumValue","src":"3155:16:29"},{"id":4370,"name":"ScriptFormat0x08","nameLocation":"3181:16:29","nodeType":"EnumValue","src":"3181:16:29"},{"id":4371,"name":"ScriptFormat0x09","nameLocation":"3207:16:29","nodeType":"EnumValue","src":"3207:16:29"},{"id":4372,"name":"ScriptFormat0x0A","nameLocation":"3233:16:29","nodeType":"EnumValue","src":"3233:16:29"},{"id":4373,"name":"ScriptFormat0x0B","nameLocation":"3259:16:29","nodeType":"EnumValue","src":"3259:16:29"},{"id":4374,"name":"ScriptFormat0x0C","nameLocation":"3285:16:29","nodeType":"EnumValue","src":"3285:16:29"},{"id":4375,"name":"ScriptFormat0x0D","nameLocation":"3311:16:29","nodeType":"EnumValue","src":"3311:16:29"},{"id":4376,"name":"ScriptFormat0x0E","nameLocation":"3337:16:29","nodeType":"EnumValue","src":"3337:16:29"},{"id":4377,"name":"ScriptFormat0x0F","nameLocation":"3363:16:29","nodeType":"EnumValue","src":"3363:16:29"},{"id":4378,"name":"RequestTooManySources","nameLocation":"3475:21:29","nodeType":"EnumValue","src":"3475:21:29"},{"id":4379,"name":"ScriptTooManyCalls","nameLocation":"3560:18:29","nodeType":"EnumValue","src":"3560:18:29"},{"id":4380,"name":"Complexity0x12","nameLocation":"3612:14:29","nodeType":"EnumValue","src":"3612:14:29"},{"id":4381,"name":"Complexity0x13","nameLocation":"3636:14:29","nodeType":"EnumValue","src":"3636:14:29"},{"id":4382,"name":"Complexity0x14","nameLocation":"3660:14:29","nodeType":"EnumValue","src":"3660:14:29"},{"id":4383,"name":"Complexity0x15","nameLocation":"3684:14:29","nodeType":"EnumValue","src":"3684:14:29"},{"id":4384,"name":"Complexity0x16","nameLocation":"3708:14:29","nodeType":"EnumValue","src":"3708:14:29"},{"id":4385,"name":"Complexity0x17","nameLocation":"3732:14:29","nodeType":"EnumValue","src":"3732:14:29"},{"id":4386,"name":"Complexity0x18","nameLocation":"3756:14:29","nodeType":"EnumValue","src":"3756:14:29"},{"id":4387,"name":"Complexity0x19","nameLocation":"3780:14:29","nodeType":"EnumValue","src":"3780:14:29"},{"id":4388,"name":"Complexity0x1A","nameLocation":"3804:14:29","nodeType":"EnumValue","src":"3804:14:29"},{"id":4389,"name":"Complexity0x1B","nameLocation":"3828:14:29","nodeType":"EnumValue","src":"3828:14:29"},{"id":4390,"name":"Complexity0x1C","nameLocation":"3852:14:29","nodeType":"EnumValue","src":"3852:14:29"},{"id":4391,"name":"Complexity0x1D","nameLocation":"3876:14:29","nodeType":"EnumValue","src":"3876:14:29"},{"id":4392,"name":"Complexity0x1E","nameLocation":"3900:14:29","nodeType":"EnumValue","src":"3900:14:29"},{"id":4393,"name":"Complexity0x1F","nameLocation":"3924:14:29","nodeType":"EnumValue","src":"3924:14:29"},{"id":4394,"name":"UnsupportedOperator","nameLocation":"4022:19:29","nodeType":"EnumValue","src":"4022:19:29"},{"id":4395,"name":"Operator0x21","nameLocation":"4075:12:29","nodeType":"EnumValue","src":"4075:12:29"},{"id":4396,"name":"Operator0x22","nameLocation":"4097:12:29","nodeType":"EnumValue","src":"4097:12:29"},{"id":4397,"name":"Operator0x23","nameLocation":"4119:12:29","nodeType":"EnumValue","src":"4119:12:29"},{"id":4398,"name":"Operator0x24","nameLocation":"4141:12:29","nodeType":"EnumValue","src":"4141:12:29"},{"id":4399,"name":"Operator0x25","nameLocation":"4163:12:29","nodeType":"EnumValue","src":"4163:12:29"},{"id":4400,"name":"Operator0x26","nameLocation":"4185:12:29","nodeType":"EnumValue","src":"4185:12:29"},{"id":4401,"name":"Operator0x27","nameLocation":"4207:12:29","nodeType":"EnumValue","src":"4207:12:29"},{"id":4402,"name":"Operator0x28","nameLocation":"4229:12:29","nodeType":"EnumValue","src":"4229:12:29"},{"id":4403,"name":"Operator0x29","nameLocation":"4251:12:29","nodeType":"EnumValue","src":"4251:12:29"},{"id":4404,"name":"Operator0x2A","nameLocation":"4273:12:29","nodeType":"EnumValue","src":"4273:12:29"},{"id":4405,"name":"Operator0x2B","nameLocation":"4295:12:29","nodeType":"EnumValue","src":"4295:12:29"},{"id":4406,"name":"Operator0x2C","nameLocation":"4317:12:29","nodeType":"EnumValue","src":"4317:12:29"},{"id":4407,"name":"Operator0x2D","nameLocation":"4339:12:29","nodeType":"EnumValue","src":"4339:12:29"},{"id":4408,"name":"Operator0x2E","nameLocation":"4361:12:29","nodeType":"EnumValue","src":"4361:12:29"},{"id":4409,"name":"Operator0x2F","nameLocation":"4383:12:29","nodeType":"EnumValue","src":"4383:12:29"},{"id":4410,"name":"HTTP","nameLocation":"4537:4:29","nodeType":"EnumValue","src":"4537:4:29"},{"id":4411,"name":"RetrievalTimeout","nameLocation":"4621:16:29","nodeType":"EnumValue","src":"4621:16:29"},{"id":4412,"name":"Retrieval0x32","nameLocation":"4671:13:29","nodeType":"EnumValue","src":"4671:13:29"},{"id":4413,"name":"Retrieval0x33","nameLocation":"4694:13:29","nodeType":"EnumValue","src":"4694:13:29"},{"id":4414,"name":"Retrieval0x34","nameLocation":"4717:13:29","nodeType":"EnumValue","src":"4717:13:29"},{"id":4415,"name":"Retrieval0x35","nameLocation":"4740:13:29","nodeType":"EnumValue","src":"4740:13:29"},{"id":4416,"name":"Retrieval0x36","nameLocation":"4763:13:29","nodeType":"EnumValue","src":"4763:13:29"},{"id":4417,"name":"Retrieval0x37","nameLocation":"4786:13:29","nodeType":"EnumValue","src":"4786:13:29"},{"id":4418,"name":"Retrieval0x38","nameLocation":"4809:13:29","nodeType":"EnumValue","src":"4809:13:29"},{"id":4419,"name":"Retrieval0x39","nameLocation":"4832:13:29","nodeType":"EnumValue","src":"4832:13:29"},{"id":4420,"name":"Retrieval0x3A","nameLocation":"4855:13:29","nodeType":"EnumValue","src":"4855:13:29"},{"id":4421,"name":"Retrieval0x3B","nameLocation":"4878:13:29","nodeType":"EnumValue","src":"4878:13:29"},{"id":4422,"name":"Retrieval0x3C","nameLocation":"4901:13:29","nodeType":"EnumValue","src":"4901:13:29"},{"id":4423,"name":"Retrieval0x3D","nameLocation":"4924:13:29","nodeType":"EnumValue","src":"4924:13:29"},{"id":4424,"name":"Retrieval0x3E","nameLocation":"4947:13:29","nodeType":"EnumValue","src":"4947:13:29"},{"id":4425,"name":"Retrieval0x3F","nameLocation":"4970:13:29","nodeType":"EnumValue","src":"4970:13:29"},{"id":4426,"name":"Underflow","nameLocation":"5069:9:29","nodeType":"EnumValue","src":"5069:9:29"},{"id":4427,"name":"Overflow","nameLocation":"5140:8:29","nodeType":"EnumValue","src":"5140:8:29"},{"id":4428,"name":"DivisionByZero","nameLocation":"5201:14:29","nodeType":"EnumValue","src":"5201:14:29"},{"id":4429,"name":"Math0x43","nameLocation":"5249:8:29","nodeType":"EnumValue","src":"5249:8:29"},{"id":4430,"name":"Math0x44","nameLocation":"5267:8:29","nodeType":"EnumValue","src":"5267:8:29"},{"id":4431,"name":"Math0x45","nameLocation":"5285:8:29","nodeType":"EnumValue","src":"5285:8:29"},{"id":4432,"name":"Math0x46","nameLocation":"5303:8:29","nodeType":"EnumValue","src":"5303:8:29"},{"id":4433,"name":"Math0x47","nameLocation":"5321:8:29","nodeType":"EnumValue","src":"5321:8:29"},{"id":4434,"name":"Math0x48","nameLocation":"5339:8:29","nodeType":"EnumValue","src":"5339:8:29"},{"id":4435,"name":"Math0x49","nameLocation":"5357:8:29","nodeType":"EnumValue","src":"5357:8:29"},{"id":4436,"name":"Math0x4A","nameLocation":"5375:8:29","nodeType":"EnumValue","src":"5375:8:29"},{"id":4437,"name":"Math0x4B","nameLocation":"5393:8:29","nodeType":"EnumValue","src":"5393:8:29"},{"id":4438,"name":"Math0x4C","nameLocation":"5411:8:29","nodeType":"EnumValue","src":"5411:8:29"},{"id":4439,"name":"Math0x4D","nameLocation":"5429:8:29","nodeType":"EnumValue","src":"5429:8:29"},{"id":4440,"name":"Math0x4E","nameLocation":"5447:8:29","nodeType":"EnumValue","src":"5447:8:29"},{"id":4441,"name":"Math0x4F","nameLocation":"5465:8:29","nodeType":"EnumValue","src":"5465:8:29"},{"id":4442,"name":"NoReveals","nameLocation":"5547:9:29","nodeType":"EnumValue","src":"5547:9:29"},{"id":4443,"name":"InsufficientConsensus","nameLocation":"5636:21:29","nodeType":"EnumValue","src":"5636:21:29"},{"id":4444,"name":"InsufficientCommits","nameLocation":"5707:19:29","nodeType":"EnumValue","src":"5707:19:29"},{"id":4445,"name":"TallyExecution","nameLocation":"5791:14:29","nodeType":"EnumValue","src":"5791:14:29"},{"id":4446,"name":"OtherError0x54","nameLocation":"5839:14:29","nodeType":"EnumValue","src":"5839:14:29"},{"id":4447,"name":"OtherError0x55","nameLocation":"5863:14:29","nodeType":"EnumValue","src":"5863:14:29"},{"id":4448,"name":"OtherError0x56","nameLocation":"5887:14:29","nodeType":"EnumValue","src":"5887:14:29"},{"id":4449,"name":"OtherError0x57","nameLocation":"5911:14:29","nodeType":"EnumValue","src":"5911:14:29"},{"id":4450,"name":"OtherError0x58","nameLocation":"5935:14:29","nodeType":"EnumValue","src":"5935:14:29"},{"id":4451,"name":"OtherError0x59","nameLocation":"5959:14:29","nodeType":"EnumValue","src":"5959:14:29"},{"id":4452,"name":"OtherError0x5A","nameLocation":"5983:14:29","nodeType":"EnumValue","src":"5983:14:29"},{"id":4453,"name":"OtherError0x5B","nameLocation":"6007:14:29","nodeType":"EnumValue","src":"6007:14:29"},{"id":4454,"name":"OtherError0x5C","nameLocation":"6031:14:29","nodeType":"EnumValue","src":"6031:14:29"},{"id":4455,"name":"OtherError0x5D","nameLocation":"6055:14:29","nodeType":"EnumValue","src":"6055:14:29"},{"id":4456,"name":"OtherError0x5E","nameLocation":"6079:14:29","nodeType":"EnumValue","src":"6079:14:29"},{"id":4457,"name":"OtherError0x5F","nameLocation":"6103:14:29","nodeType":"EnumValue","src":"6103:14:29"},{"id":4458,"name":"MalformedReveal","nameLocation":"6222:15:29","nodeType":"EnumValue","src":"6222:15:29"},{"id":4459,"name":"OtherError0x61","nameLocation":"6271:14:29","nodeType":"EnumValue","src":"6271:14:29"},{"id":4460,"name":"OtherError0x62","nameLocation":"6295:14:29","nodeType":"EnumValue","src":"6295:14:29"},{"id":4461,"name":"OtherError0x63","nameLocation":"6319:14:29","nodeType":"EnumValue","src":"6319:14:29"},{"id":4462,"name":"OtherError0x64","nameLocation":"6343:14:29","nodeType":"EnumValue","src":"6343:14:29"},{"id":4463,"name":"OtherError0x65","nameLocation":"6367:14:29","nodeType":"EnumValue","src":"6367:14:29"},{"id":4464,"name":"OtherError0x66","nameLocation":"6391:14:29","nodeType":"EnumValue","src":"6391:14:29"},{"id":4465,"name":"OtherError0x67","nameLocation":"6415:14:29","nodeType":"EnumValue","src":"6415:14:29"},{"id":4466,"name":"OtherError0x68","nameLocation":"6439:14:29","nodeType":"EnumValue","src":"6439:14:29"},{"id":4467,"name":"OtherError0x69","nameLocation":"6463:14:29","nodeType":"EnumValue","src":"6463:14:29"},{"id":4468,"name":"OtherError0x6A","nameLocation":"6487:14:29","nodeType":"EnumValue","src":"6487:14:29"},{"id":4469,"name":"OtherError0x6B","nameLocation":"6511:14:29","nodeType":"EnumValue","src":"6511:14:29"},{"id":4470,"name":"OtherError0x6C","nameLocation":"6535:14:29","nodeType":"EnumValue","src":"6535:14:29"},{"id":4471,"name":"OtherError0x6D","nameLocation":"6559:14:29","nodeType":"EnumValue","src":"6559:14:29"},{"id":4472,"name":"OtherError0x6E","nameLocation":"6583:14:29","nodeType":"EnumValue","src":"6583:14:29"},{"id":4473,"name":"OtherError0x6F","nameLocation":"6607:14:29","nodeType":"EnumValue","src":"6607:14:29"},{"id":4474,"name":"ArrayIndexOutOfBounds","nameLocation":"6749:21:29","nodeType":"EnumValue","src":"6749:21:29"},{"id":4475,"name":"MapKeyNotFound","nameLocation":"6865:14:29","nodeType":"EnumValue","src":"6865:14:29"},{"id":4476,"name":"OtherError0x72","nameLocation":"6913:14:29","nodeType":"EnumValue","src":"6913:14:29"},{"id":4477,"name":"OtherError0x73","nameLocation":"6937:14:29","nodeType":"EnumValue","src":"6937:14:29"},{"id":4478,"name":"OtherError0x74","nameLocation":"6961:14:29","nodeType":"EnumValue","src":"6961:14:29"},{"id":4479,"name":"OtherError0x75","nameLocation":"6985:14:29","nodeType":"EnumValue","src":"6985:14:29"},{"id":4480,"name":"OtherError0x76","nameLocation":"7009:14:29","nodeType":"EnumValue","src":"7009:14:29"},{"id":4481,"name":"OtherError0x77","nameLocation":"7033:14:29","nodeType":"EnumValue","src":"7033:14:29"},{"id":4482,"name":"OtherError0x78","nameLocation":"7057:14:29","nodeType":"EnumValue","src":"7057:14:29"},{"id":4483,"name":"OtherError0x79","nameLocation":"7081:14:29","nodeType":"EnumValue","src":"7081:14:29"},{"id":4484,"name":"OtherError0x7A","nameLocation":"7105:14:29","nodeType":"EnumValue","src":"7105:14:29"},{"id":4485,"name":"OtherError0x7B","nameLocation":"7129:14:29","nodeType":"EnumValue","src":"7129:14:29"},{"id":4486,"name":"OtherError0x7C","nameLocation":"7153:14:29","nodeType":"EnumValue","src":"7153:14:29"},{"id":4487,"name":"OtherError0x7D","nameLocation":"7177:14:29","nodeType":"EnumValue","src":"7177:14:29"},{"id":4488,"name":"OtherError0x7E","nameLocation":"7201:14:29","nodeType":"EnumValue","src":"7201:14:29"},{"id":4489,"name":"OtherError0x7F","nameLocation":"7225:14:29","nodeType":"EnumValue","src":"7225:14:29"},{"id":4490,"name":"OtherError0x80","nameLocation":"7249:14:29","nodeType":"EnumValue","src":"7249:14:29"},{"id":4491,"name":"OtherError0x81","nameLocation":"7273:14:29","nodeType":"EnumValue","src":"7273:14:29"},{"id":4492,"name":"OtherError0x82","nameLocation":"7297:14:29","nodeType":"EnumValue","src":"7297:14:29"},{"id":4493,"name":"OtherError0x83","nameLocation":"7321:14:29","nodeType":"EnumValue","src":"7321:14:29"},{"id":4494,"name":"OtherError0x84","nameLocation":"7345:14:29","nodeType":"EnumValue","src":"7345:14:29"},{"id":4495,"name":"OtherError0x85","nameLocation":"7369:14:29","nodeType":"EnumValue","src":"7369:14:29"},{"id":4496,"name":"OtherError0x86","nameLocation":"7393:14:29","nodeType":"EnumValue","src":"7393:14:29"},{"id":4497,"name":"OtherError0x87","nameLocation":"7417:14:29","nodeType":"EnumValue","src":"7417:14:29"},{"id":4498,"name":"OtherError0x88","nameLocation":"7441:14:29","nodeType":"EnumValue","src":"7441:14:29"},{"id":4499,"name":"OtherError0x89","nameLocation":"7465:14:29","nodeType":"EnumValue","src":"7465:14:29"},{"id":4500,"name":"OtherError0x8A","nameLocation":"7489:14:29","nodeType":"EnumValue","src":"7489:14:29"},{"id":4501,"name":"OtherError0x8B","nameLocation":"7513:14:29","nodeType":"EnumValue","src":"7513:14:29"},{"id":4502,"name":"OtherError0x8C","nameLocation":"7537:14:29","nodeType":"EnumValue","src":"7537:14:29"},{"id":4503,"name":"OtherError0x8D","nameLocation":"7561:14:29","nodeType":"EnumValue","src":"7561:14:29"},{"id":4504,"name":"OtherError0x8E","nameLocation":"7585:14:29","nodeType":"EnumValue","src":"7585:14:29"},{"id":4505,"name":"OtherError0x8F","nameLocation":"7609:14:29","nodeType":"EnumValue","src":"7609:14:29"},{"id":4506,"name":"OtherError0x90","nameLocation":"7633:14:29","nodeType":"EnumValue","src":"7633:14:29"},{"id":4507,"name":"OtherError0x91","nameLocation":"7657:14:29","nodeType":"EnumValue","src":"7657:14:29"},{"id":4508,"name":"OtherError0x92","nameLocation":"7681:14:29","nodeType":"EnumValue","src":"7681:14:29"},{"id":4509,"name":"OtherError0x93","nameLocation":"7705:14:29","nodeType":"EnumValue","src":"7705:14:29"},{"id":4510,"name":"OtherError0x94","nameLocation":"7729:14:29","nodeType":"EnumValue","src":"7729:14:29"},{"id":4511,"name":"OtherError0x95","nameLocation":"7753:14:29","nodeType":"EnumValue","src":"7753:14:29"},{"id":4512,"name":"OtherError0x96","nameLocation":"7777:14:29","nodeType":"EnumValue","src":"7777:14:29"},{"id":4513,"name":"OtherError0x97","nameLocation":"7801:14:29","nodeType":"EnumValue","src":"7801:14:29"},{"id":4514,"name":"OtherError0x98","nameLocation":"7825:14:29","nodeType":"EnumValue","src":"7825:14:29"},{"id":4515,"name":"OtherError0x99","nameLocation":"7849:14:29","nodeType":"EnumValue","src":"7849:14:29"},{"id":4516,"name":"OtherError0x9A","nameLocation":"7873:14:29","nodeType":"EnumValue","src":"7873:14:29"},{"id":4517,"name":"OtherError0x9B","nameLocation":"7897:14:29","nodeType":"EnumValue","src":"7897:14:29"},{"id":4518,"name":"OtherError0x9C","nameLocation":"7921:14:29","nodeType":"EnumValue","src":"7921:14:29"},{"id":4519,"name":"OtherError0x9D","nameLocation":"7945:14:29","nodeType":"EnumValue","src":"7945:14:29"},{"id":4520,"name":"OtherError0x9E","nameLocation":"7969:14:29","nodeType":"EnumValue","src":"7969:14:29"},{"id":4521,"name":"OtherError0x9F","nameLocation":"7993:14:29","nodeType":"EnumValue","src":"7993:14:29"},{"id":4522,"name":"OtherError0xA0","nameLocation":"8017:14:29","nodeType":"EnumValue","src":"8017:14:29"},{"id":4523,"name":"OtherError0xA1","nameLocation":"8041:14:29","nodeType":"EnumValue","src":"8041:14:29"},{"id":4524,"name":"OtherError0xA2","nameLocation":"8065:14:29","nodeType":"EnumValue","src":"8065:14:29"},{"id":4525,"name":"OtherError0xA3","nameLocation":"8089:14:29","nodeType":"EnumValue","src":"8089:14:29"},{"id":4526,"name":"OtherError0xA4","nameLocation":"8113:14:29","nodeType":"EnumValue","src":"8113:14:29"},{"id":4527,"name":"OtherError0xA5","nameLocation":"8137:14:29","nodeType":"EnumValue","src":"8137:14:29"},{"id":4528,"name":"OtherError0xA6","nameLocation":"8161:14:29","nodeType":"EnumValue","src":"8161:14:29"},{"id":4529,"name":"OtherError0xA7","nameLocation":"8185:14:29","nodeType":"EnumValue","src":"8185:14:29"},{"id":4530,"name":"OtherError0xA8","nameLocation":"8209:14:29","nodeType":"EnumValue","src":"8209:14:29"},{"id":4531,"name":"OtherError0xA9","nameLocation":"8233:14:29","nodeType":"EnumValue","src":"8233:14:29"},{"id":4532,"name":"OtherError0xAA","nameLocation":"8257:14:29","nodeType":"EnumValue","src":"8257:14:29"},{"id":4533,"name":"OtherError0xAB","nameLocation":"8281:14:29","nodeType":"EnumValue","src":"8281:14:29"},{"id":4534,"name":"OtherError0xAC","nameLocation":"8305:14:29","nodeType":"EnumValue","src":"8305:14:29"},{"id":4535,"name":"OtherError0xAD","nameLocation":"8329:14:29","nodeType":"EnumValue","src":"8329:14:29"},{"id":4536,"name":"OtherError0xAE","nameLocation":"8353:14:29","nodeType":"EnumValue","src":"8353:14:29"},{"id":4537,"name":"OtherError0xAF","nameLocation":"8377:14:29","nodeType":"EnumValue","src":"8377:14:29"},{"id":4538,"name":"OtherError0xB0","nameLocation":"8401:14:29","nodeType":"EnumValue","src":"8401:14:29"},{"id":4539,"name":"OtherError0xB1","nameLocation":"8425:14:29","nodeType":"EnumValue","src":"8425:14:29"},{"id":4540,"name":"OtherError0xB2","nameLocation":"8449:14:29","nodeType":"EnumValue","src":"8449:14:29"},{"id":4541,"name":"OtherError0xB3","nameLocation":"8473:14:29","nodeType":"EnumValue","src":"8473:14:29"},{"id":4542,"name":"OtherError0xB4","nameLocation":"8497:14:29","nodeType":"EnumValue","src":"8497:14:29"},{"id":4543,"name":"OtherError0xB5","nameLocation":"8521:14:29","nodeType":"EnumValue","src":"8521:14:29"},{"id":4544,"name":"OtherError0xB6","nameLocation":"8545:14:29","nodeType":"EnumValue","src":"8545:14:29"},{"id":4545,"name":"OtherError0xB7","nameLocation":"8569:14:29","nodeType":"EnumValue","src":"8569:14:29"},{"id":4546,"name":"OtherError0xB8","nameLocation":"8593:14:29","nodeType":"EnumValue","src":"8593:14:29"},{"id":4547,"name":"OtherError0xB9","nameLocation":"8617:14:29","nodeType":"EnumValue","src":"8617:14:29"},{"id":4548,"name":"OtherError0xBA","nameLocation":"8641:14:29","nodeType":"EnumValue","src":"8641:14:29"},{"id":4549,"name":"OtherError0xBB","nameLocation":"8665:14:29","nodeType":"EnumValue","src":"8665:14:29"},{"id":4550,"name":"OtherError0xBC","nameLocation":"8689:14:29","nodeType":"EnumValue","src":"8689:14:29"},{"id":4551,"name":"OtherError0xBD","nameLocation":"8713:14:29","nodeType":"EnumValue","src":"8713:14:29"},{"id":4552,"name":"OtherError0xBE","nameLocation":"8737:14:29","nodeType":"EnumValue","src":"8737:14:29"},{"id":4553,"name":"OtherError0xBF","nameLocation":"8761:14:29","nodeType":"EnumValue","src":"8761:14:29"},{"id":4554,"name":"OtherError0xC0","nameLocation":"8785:14:29","nodeType":"EnumValue","src":"8785:14:29"},{"id":4555,"name":"OtherError0xC1","nameLocation":"8809:14:29","nodeType":"EnumValue","src":"8809:14:29"},{"id":4556,"name":"OtherError0xC2","nameLocation":"8833:14:29","nodeType":"EnumValue","src":"8833:14:29"},{"id":4557,"name":"OtherError0xC3","nameLocation":"8857:14:29","nodeType":"EnumValue","src":"8857:14:29"},{"id":4558,"name":"OtherError0xC4","nameLocation":"8881:14:29","nodeType":"EnumValue","src":"8881:14:29"},{"id":4559,"name":"OtherError0xC5","nameLocation":"8905:14:29","nodeType":"EnumValue","src":"8905:14:29"},{"id":4560,"name":"OtherError0xC6","nameLocation":"8929:14:29","nodeType":"EnumValue","src":"8929:14:29"},{"id":4561,"name":"OtherError0xC7","nameLocation":"8953:14:29","nodeType":"EnumValue","src":"8953:14:29"},{"id":4562,"name":"OtherError0xC8","nameLocation":"8977:14:29","nodeType":"EnumValue","src":"8977:14:29"},{"id":4563,"name":"OtherError0xC9","nameLocation":"9001:14:29","nodeType":"EnumValue","src":"9001:14:29"},{"id":4564,"name":"OtherError0xCA","nameLocation":"9025:14:29","nodeType":"EnumValue","src":"9025:14:29"},{"id":4565,"name":"OtherError0xCB","nameLocation":"9049:14:29","nodeType":"EnumValue","src":"9049:14:29"},{"id":4566,"name":"OtherError0xCC","nameLocation":"9073:14:29","nodeType":"EnumValue","src":"9073:14:29"},{"id":4567,"name":"OtherError0xCD","nameLocation":"9097:14:29","nodeType":"EnumValue","src":"9097:14:29"},{"id":4568,"name":"OtherError0xCE","nameLocation":"9121:14:29","nodeType":"EnumValue","src":"9121:14:29"},{"id":4569,"name":"OtherError0xCF","nameLocation":"9145:14:29","nodeType":"EnumValue","src":"9145:14:29"},{"id":4570,"name":"OtherError0xD0","nameLocation":"9169:14:29","nodeType":"EnumValue","src":"9169:14:29"},{"id":4571,"name":"OtherError0xD1","nameLocation":"9193:14:29","nodeType":"EnumValue","src":"9193:14:29"},{"id":4572,"name":"OtherError0xD2","nameLocation":"9217:14:29","nodeType":"EnumValue","src":"9217:14:29"},{"id":4573,"name":"OtherError0xD3","nameLocation":"9241:14:29","nodeType":"EnumValue","src":"9241:14:29"},{"id":4574,"name":"OtherError0xD4","nameLocation":"9265:14:29","nodeType":"EnumValue","src":"9265:14:29"},{"id":4575,"name":"OtherError0xD5","nameLocation":"9289:14:29","nodeType":"EnumValue","src":"9289:14:29"},{"id":4576,"name":"OtherError0xD6","nameLocation":"9313:14:29","nodeType":"EnumValue","src":"9313:14:29"},{"id":4577,"name":"OtherError0xD7","nameLocation":"9337:14:29","nodeType":"EnumValue","src":"9337:14:29"},{"id":4578,"name":"OtherError0xD8","nameLocation":"9361:14:29","nodeType":"EnumValue","src":"9361:14:29"},{"id":4579,"name":"OtherError0xD9","nameLocation":"9385:14:29","nodeType":"EnumValue","src":"9385:14:29"},{"id":4580,"name":"OtherError0xDA","nameLocation":"9409:14:29","nodeType":"EnumValue","src":"9409:14:29"},{"id":4581,"name":"OtherError0xDB","nameLocation":"9433:14:29","nodeType":"EnumValue","src":"9433:14:29"},{"id":4582,"name":"OtherError0xDC","nameLocation":"9457:14:29","nodeType":"EnumValue","src":"9457:14:29"},{"id":4583,"name":"OtherError0xDD","nameLocation":"9481:14:29","nodeType":"EnumValue","src":"9481:14:29"},{"id":4584,"name":"OtherError0xDE","nameLocation":"9505:14:29","nodeType":"EnumValue","src":"9505:14:29"},{"id":4585,"name":"OtherError0xDF","nameLocation":"9529:14:29","nodeType":"EnumValue","src":"9529:14:29"},{"id":4586,"name":"BridgeMalformedRequest","nameLocation":"9911:22:29","nodeType":"EnumValue","src":"9911:22:29"},{"id":4587,"name":"BridgePoorIncentives","nameLocation":"9983:20:29","nodeType":"EnumValue","src":"9983:20:29"},{"id":4588,"name":"BridgeOversizedResult","nameLocation":"10229:21:29","nodeType":"EnumValue","src":"10229:21:29"},{"id":4589,"name":"OtherError0xE3","nameLocation":"10284:14:29","nodeType":"EnumValue","src":"10284:14:29"},{"id":4590,"name":"OtherError0xE4","nameLocation":"10308:14:29","nodeType":"EnumValue","src":"10308:14:29"},{"id":4591,"name":"OtherError0xE5","nameLocation":"10332:14:29","nodeType":"EnumValue","src":"10332:14:29"},{"id":4592,"name":"OtherError0xE6","nameLocation":"10356:14:29","nodeType":"EnumValue","src":"10356:14:29"},{"id":4593,"name":"OtherError0xE7","nameLocation":"10380:14:29","nodeType":"EnumValue","src":"10380:14:29"},{"id":4594,"name":"OtherError0xE8","nameLocation":"10404:14:29","nodeType":"EnumValue","src":"10404:14:29"},{"id":4595,"name":"OtherError0xE9","nameLocation":"10428:14:29","nodeType":"EnumValue","src":"10428:14:29"},{"id":4596,"name":"OtherError0xEA","nameLocation":"10452:14:29","nodeType":"EnumValue","src":"10452:14:29"},{"id":4597,"name":"OtherError0xEB","nameLocation":"10476:14:29","nodeType":"EnumValue","src":"10476:14:29"},{"id":4598,"name":"OtherError0xEC","nameLocation":"10500:14:29","nodeType":"EnumValue","src":"10500:14:29"},{"id":4599,"name":"OtherError0xED","nameLocation":"10524:14:29","nodeType":"EnumValue","src":"10524:14:29"},{"id":4600,"name":"OtherError0xEE","nameLocation":"10548:14:29","nodeType":"EnumValue","src":"10548:14:29"},{"id":4601,"name":"OtherError0xEF","nameLocation":"10572:14:29","nodeType":"EnumValue","src":"10572:14:29"},{"id":4602,"name":"OtherError0xF0","nameLocation":"10596:14:29","nodeType":"EnumValue","src":"10596:14:29"},{"id":4603,"name":"OtherError0xF1","nameLocation":"10620:14:29","nodeType":"EnumValue","src":"10620:14:29"},{"id":4604,"name":"OtherError0xF2","nameLocation":"10644:14:29","nodeType":"EnumValue","src":"10644:14:29"},{"id":4605,"name":"OtherError0xF3","nameLocation":"10668:14:29","nodeType":"EnumValue","src":"10668:14:29"},{"id":4606,"name":"OtherError0xF4","nameLocation":"10692:14:29","nodeType":"EnumValue","src":"10692:14:29"},{"id":4607,"name":"OtherError0xF5","nameLocation":"10716:14:29","nodeType":"EnumValue","src":"10716:14:29"},{"id":4608,"name":"OtherError0xF6","nameLocation":"10740:14:29","nodeType":"EnumValue","src":"10740:14:29"},{"id":4609,"name":"OtherError0xF7","nameLocation":"10764:14:29","nodeType":"EnumValue","src":"10764:14:29"},{"id":4610,"name":"OtherError0xF8","nameLocation":"10788:14:29","nodeType":"EnumValue","src":"10788:14:29"},{"id":4611,"name":"OtherError0xF9","nameLocation":"10812:14:29","nodeType":"EnumValue","src":"10812:14:29"},{"id":4612,"name":"OtherError0xFA","nameLocation":"10836:14:29","nodeType":"EnumValue","src":"10836:14:29"},{"id":4613,"name":"OtherError0xFB","nameLocation":"10860:14:29","nodeType":"EnumValue","src":"10860:14:29"},{"id":4614,"name":"OtherError0xFC","nameLocation":"10884:14:29","nodeType":"EnumValue","src":"10884:14:29"},{"id":4615,"name":"OtherError0xFD","nameLocation":"10908:14:29","nodeType":"EnumValue","src":"10908:14:29"},{"id":4616,"name":"OtherError0xFE","nameLocation":"10932:14:29","nodeType":"EnumValue","src":"10932:14:29"},{"id":4617,"name":"UnhandledIntercept","nameLocation":"11055:18:29","nodeType":"EnumValue","src":"11055:18:29"}],"name":"ErrorCodes","nameLocation":"2576:10:29","nodeType":"EnumDefinition","src":"2571:8508:29"}],"scope":4620,"src":"144:10937:29","usedErrors":[]}],"src":"33:11049:29"},"id":29},"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619],"WitnetBuffer":[5261]},"id":5262,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":4621,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:30"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"./Witnet.sol","id":4622,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":5262,"sourceUnit":4620,"src":"66:22:30","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"library","documentation":{"id":4623,"nodeType":"StructuredDocumentation","src":"90:568:30","text":"@title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\n @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\n start with the byte that goes right after the last one in the previous read.\n @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\n theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\n @author The Witnet Foundation."},"fullyImplemented":true,"id":5261,"linearizedBaseContracts":[5261],"name":"WitnetBuffer","nameLocation":"666:12:30","nodeType":"ContractDefinition","nodes":[{"body":{"id":4637,"nodeType":"Block","src":"791:118:30","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":4632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":4630,"name":"index","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4625,"src":"805:5:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":4631,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4627,"src":"813:6:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"805:14:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744275666665723a20547269656420746f20726561642066726f6d206120636f6e73756d65642042756666657220286d75737420726577696e6420697420666972737429","id":4633,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"821:75:30","typeDescriptions":{"typeIdentifier":"t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804","typeString":"literal_string \"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\""},"value":"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804","typeString":"literal_string \"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\""}],"id":4629,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"797:7:30","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":4634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"797:100:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":4635,"nodeType":"ExpressionStatement","src":"797:100:30"},{"id":4636,"nodeType":"PlaceholderStatement","src":"903:1:30"}]},"id":4638,"name":"notOutOfBounds","nameLocation":"746:14:30","nodeType":"ModifierDefinition","parameters":{"id":4628,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4625,"mutability":"mutable","name":"index","nameLocation":"768:5:30","nodeType":"VariableDeclaration","scope":4638,"src":"761:12:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4624,"name":"uint32","nodeType":"ElementaryTypeName","src":"761:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":4627,"mutability":"mutable","name":"length","nameLocation":"783:6:30","nodeType":"VariableDeclaration","scope":4638,"src":"775:14:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4626,"name":"uint256","nodeType":"ElementaryTypeName","src":"775:7:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"760:30:30"},"src":"737:172:30","virtual":false,"visibility":"internal"},{"body":{"id":4707,"nodeType":"Block","src":"1330:935:30","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":4657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":4650,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4642,"src":"1413:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4651,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"1413:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":4652,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4644,"src":"1430:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"1413:24:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"expression":{"expression":{"id":4654,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4642,"src":"1441:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4655,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"1441:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4656,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"1441:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1413:47:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744275666665723a204e6f7420656e6f75676820627974657320696e20627566666572207768656e2072656164696e67","id":4658,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1462:55:30","typeDescriptions":{"typeIdentifier":"t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271","typeString":"literal_string \"WitnetBuffer: Not enough bytes in buffer when reading\""},"value":"WitnetBuffer: Not enough bytes in buffer when reading"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271","typeString":"literal_string \"WitnetBuffer: Not enough bytes in buffer when reading\""}],"id":4649,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1405:7:30","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":4659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1405:113:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":4660,"nodeType":"ExpressionStatement","src":"1405:113:30"},{"assignments":[4662],"declarations":[{"constant":false,"id":4662,"mutability":"mutable","name":"destination","nameLocation":"1591:11:30","nodeType":"VariableDeclaration","scope":4707,"src":"1578:24:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4661,"name":"bytes","nodeType":"ElementaryTypeName","src":"1578:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4667,"initialValue":{"arguments":[{"id":4665,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4644,"src":"1615:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":4664,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"1605:9:30","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":4663,"name":"bytes","nodeType":"ElementaryTypeName","src":"1609:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":4666,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1605:18:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"1578:45:30"},{"condition":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4670,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":4668,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4644,"src":"1685:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":4669,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1696:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"1685:12:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":4704,"nodeType":"IfStatement","src":"1681:556:30","trueBody":{"id":4703,"nodeType":"Block","src":"1699:538:30","statements":[{"assignments":[4672],"declarations":[{"constant":false,"id":4672,"mutability":"mutable","name":"source","nameLocation":"1720:6:30","nodeType":"VariableDeclaration","scope":4703,"src":"1707:19:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4671,"name":"bytes","nodeType":"ElementaryTypeName","src":"1707:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4675,"initialValue":{"expression":{"id":4673,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4642,"src":"1729:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4674,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"1729:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"1707:34:30"},{"assignments":[4677],"declarations":[{"constant":false,"id":4677,"mutability":"mutable","name":"offset","nameLocation":"1756:6:30","nodeType":"VariableDeclaration","scope":4703,"src":"1749:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4676,"name":"uint32","nodeType":"ElementaryTypeName","src":"1749:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":4680,"initialValue":{"expression":{"id":4678,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4642,"src":"1765:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4679,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"1765:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"1749:30:30"},{"assignments":[4682],"declarations":[{"constant":false,"id":4682,"mutability":"mutable","name":"sourcePointer","nameLocation":"1846:13:30","nodeType":"VariableDeclaration","scope":4703,"src":"1841:18:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4681,"name":"uint","nodeType":"ElementaryTypeName","src":"1841:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":4683,"nodeType":"VariableDeclarationStatement","src":"1841:18:30"},{"assignments":[4685],"declarations":[{"constant":false,"id":4685,"mutability":"mutable","name":"destinationPointer","nameLocation":"1872:18:30","nodeType":"VariableDeclaration","scope":4703,"src":"1867:23:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":4684,"name":"uint","nodeType":"ElementaryTypeName","src":"1867:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":4686,"nodeType":"VariableDeclarationStatement","src":"1867:23:30"},{"AST":{"nodeType":"YulBlock","src":"1907:114:30","statements":[{"nodeType":"YulAssignment","src":"1917:45:30","value":{"arguments":[{"arguments":[{"name":"source","nodeType":"YulIdentifier","src":"1942:6:30"},{"kind":"number","nodeType":"YulLiteral","src":"1950:2:30","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1938:3:30"},"nodeType":"YulFunctionCall","src":"1938:15:30"},{"name":"offset","nodeType":"YulIdentifier","src":"1955:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1934:3:30"},"nodeType":"YulFunctionCall","src":"1934:28:30"},"variableNames":[{"name":"sourcePointer","nodeType":"YulIdentifier","src":"1917:13:30"}]},{"nodeType":"YulAssignment","src":"1971:42:30","value":{"arguments":[{"name":"destination","nodeType":"YulIdentifier","src":"1997:11:30"},{"kind":"number","nodeType":"YulLiteral","src":"2010:2:30","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1993:3:30"},"nodeType":"YulFunctionCall","src":"1993:20:30"},"variableNames":[{"name":"destinationPointer","nodeType":"YulIdentifier","src":"1971:18:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":4662,"isOffset":false,"isSlot":false,"src":"1997:11:30","valueSize":1},{"declaration":4685,"isOffset":false,"isSlot":false,"src":"1971:18:30","valueSize":1},{"declaration":4677,"isOffset":false,"isSlot":false,"src":"1955:6:30","valueSize":1},{"declaration":4672,"isOffset":false,"isSlot":false,"src":"1942:6:30","valueSize":1},{"declaration":4682,"isOffset":false,"isSlot":false,"src":"1917:13:30","valueSize":1}],"id":4687,"nodeType":"InlineAssembly","src":"1898:123:30"},{"expression":{"arguments":[{"id":4689,"name":"destinationPointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4685,"src":"2092:18:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":4690,"name":"sourcePointer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4682,"src":"2112:13:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"id":4693,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4644,"src":"2132:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":4692,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2127:4:30","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":4691,"name":"uint","nodeType":"ElementaryTypeName","src":"2127:4:30","typeDescriptions":{}}},"id":4694,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2127:13:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":4688,"name":"memcpy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5260,"src":"2085:6:30","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256,uint256) pure"}},"id":4695,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2085:56:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":4696,"nodeType":"ExpressionStatement","src":"2085:56:30"},{"expression":{"arguments":[{"id":4698,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4642,"src":"2207:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"id":4699,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4644,"src":"2216:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"hexValue":"74727565","id":4700,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"2225:4:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint32","typeString":"uint32"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":4697,"name":"seek","nodeType":"Identifier","overloadedDeclarations":[4782,4800],"referencedDeclaration":4782,"src":"2202:4:30","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint32_$_t_bool_$returns$_t_uint32_$","typeString":"function (struct Witnet.Buffer memory,uint32,bool) pure returns (uint32)"}},"id":4701,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2202:28:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4702,"nodeType":"ExpressionStatement","src":"2202:28:30"}]}},{"expression":{"id":4705,"name":"destination","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4662,"src":"2249:11:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":4648,"id":4706,"nodeType":"Return","src":"2242:18:30"}]},"documentation":{"id":4639,"nodeType":"StructuredDocumentation","src":"913:317:30","text":"@notice Read and consume a certain amount of bytes from the buffer.\n @param _buffer An instance of `Witnet.Buffer`.\n @param _length How many bytes to read and consume from the buffer.\n @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position."},"id":4708,"implemented":true,"kind":"function","modifiers":[],"name":"read","nameLocation":"1242:4:30","nodeType":"FunctionDefinition","parameters":{"id":4645,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4642,"mutability":"mutable","name":"_buffer","nameLocation":"1268:7:30","nodeType":"VariableDeclaration","scope":4708,"src":"1247:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4641,"nodeType":"UserDefinedTypeName","pathNode":{"id":4640,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"1247:13:30"},"referencedDeclaration":4361,"src":"1247:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":4644,"mutability":"mutable","name":"_length","nameLocation":"1284:7:30","nodeType":"VariableDeclaration","scope":4708,"src":"1277:14:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4643,"name":"uint32","nodeType":"ElementaryTypeName","src":"1277:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"1246:46:30"},"returnParameters":{"id":4648,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4647,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4708,"src":"1316:12:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4646,"name":"bytes","nodeType":"ElementaryTypeName","src":"1316:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1315:14:30"},"scope":5261,"src":"1233:1032:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4731,"nodeType":"Block","src":"2588:143:30","statements":[{"expression":{"baseExpression":{"expression":{"id":4724,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4712,"src":"2696:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4725,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"2696:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4729,"indexExpression":{"id":4728,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2709:16:30","subExpression":{"expression":{"id":4726,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4712,"src":"2709:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4727,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"2709:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2696:30:30","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"functionReturnParameters":4723,"id":4730,"nodeType":"Return","src":"2689:37:30"}]},"documentation":{"id":4709,"nodeType":"StructuredDocumentation","src":"2269:189:30","text":"@notice Read and consume the next byte from the buffer.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The next byte in the buffer counting from the cursor position."},"id":4732,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"expression":{"id":4715,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4712,"src":"2534:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"2534:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":4717,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4712,"src":"2550:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"2550:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"2550:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":4720,"kind":"modifierInvocation","modifierName":{"id":4714,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"2519:14:30"},"nodeType":"ModifierInvocation","src":"2519:51:30"}],"name":"next","nameLocation":"2470:4:30","nodeType":"FunctionDefinition","parameters":{"id":4713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4712,"mutability":"mutable","name":"_buffer","nameLocation":"2496:7:30","nodeType":"VariableDeclaration","scope":4732,"src":"2475:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4711,"nodeType":"UserDefinedTypeName","pathNode":{"id":4710,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"2475:13:30"},"referencedDeclaration":4361,"src":"2475:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"2474:30:30"},"returnParameters":{"id":4723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4722,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4732,"src":"2580:6:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"typeName":{"id":4721,"name":"bytes1","nodeType":"ElementaryTypeName","src":"2580:6:30","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"visibility":"internal"}],"src":"2579:8:30"},"scope":5261,"src":"2461:270:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4781,"nodeType":"Block","src":"3341:425:30","statements":[{"condition":{"id":4745,"name":"_relative","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4740,"src":"3385:9:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":4762,"nodeType":"IfStatement","src":"3381:153:30","trueBody":{"id":4761,"nodeType":"Block","src":"3396:138:30","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4752,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":4747,"name":"_offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4738,"src":"3412:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":4748,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4736,"src":"3422:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4749,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"3422:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"3412:24:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":4751,"name":"_offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4738,"src":"3439:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"3412:34:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744275666665723a20496e7465676572206f766572666c6f77207768656e207365656b696e67","id":4753,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3448:45:30","typeDescriptions":{"typeIdentifier":"t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b","typeString":"literal_string \"WitnetBuffer: Integer overflow when seeking\""},"value":"WitnetBuffer: Integer overflow when seeking"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b","typeString":"literal_string \"WitnetBuffer: Integer overflow when seeking\""}],"id":4746,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3404:7:30","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":4754,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3404:90:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":4755,"nodeType":"ExpressionStatement","src":"3404:90:30"},{"expression":{"id":4759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":4756,"name":"_offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4738,"src":"3502:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"id":4757,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4736,"src":"3513:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"3513:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"3502:25:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4760,"nodeType":"ExpressionStatement","src":"3502:25:30"}]}},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":4768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":4764,"name":"_offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4738,"src":"3616:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"expression":{"expression":{"id":4765,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4736,"src":"3627:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4766,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"3627:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4767,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"3627:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3616:30:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744275666665723a204e6f7420656e6f75676820627974657320696e20627566666572207768656e207365656b696e67","id":4769,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3648:55:30","typeDescriptions":{"typeIdentifier":"t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758","typeString":"literal_string \"WitnetBuffer: Not enough bytes in buffer when seeking\""},"value":"WitnetBuffer: Not enough bytes in buffer when seeking"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758","typeString":"literal_string \"WitnetBuffer: Not enough bytes in buffer when seeking\""}],"id":4763,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3608:7:30","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":4770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3608:96:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":4771,"nodeType":"ExpressionStatement","src":"3608:96:30"},{"expression":{"id":4776,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":4772,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4736,"src":"3710:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4774,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"3710:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":4775,"name":"_offset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4738,"src":"3727:7:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"3710:24:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4777,"nodeType":"ExpressionStatement","src":"3710:24:30"},{"expression":{"expression":{"id":4778,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4736,"src":"3747:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4779,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"3747:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"functionReturnParameters":4744,"id":4780,"nodeType":"Return","src":"3740:21:30"}]},"documentation":{"id":4733,"nodeType":"StructuredDocumentation","src":"2735:440:30","text":"@notice Move the inner cursor of the buffer to a relative or absolute position.\n @param _buffer An instance of `Witnet.Buffer`.\n @param _offset How many bytes to move the cursor forward.\n @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\n buffer (`true`).\n @return The final position of the cursor (will equal `_offset` if `_relative` is `false`)."},"id":4782,"implemented":true,"kind":"function","modifiers":[],"name":"seek","nameLocation":"3243:4:30","nodeType":"FunctionDefinition","parameters":{"id":4741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4736,"mutability":"mutable","name":"_buffer","nameLocation":"3269:7:30","nodeType":"VariableDeclaration","scope":4782,"src":"3248:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4735,"nodeType":"UserDefinedTypeName","pathNode":{"id":4734,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"3248:13:30"},"referencedDeclaration":4361,"src":"3248:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":4738,"mutability":"mutable","name":"_offset","nameLocation":"3285:7:30","nodeType":"VariableDeclaration","scope":4782,"src":"3278:14:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4737,"name":"uint32","nodeType":"ElementaryTypeName","src":"3278:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":false,"id":4740,"mutability":"mutable","name":"_relative","nameLocation":"3299:9:30","nodeType":"VariableDeclaration","scope":4782,"src":"3294:14:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":4739,"name":"bool","nodeType":"ElementaryTypeName","src":"3294:4:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3247:62:30"},"returnParameters":{"id":4744,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4743,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4782,"src":"3333:6:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4742,"name":"uint32","nodeType":"ElementaryTypeName","src":"3333:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"3332:8:30"},"scope":5261,"src":"3234:532:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4799,"nodeType":"Block","src":"4186:54:30","statements":[{"expression":{"arguments":[{"id":4794,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4786,"src":"4204:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"id":4795,"name":"_relativeOffset","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4788,"src":"4213:15:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"hexValue":"74727565","id":4796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4230:4:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint32","typeString":"uint32"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":4793,"name":"seek","nodeType":"Identifier","overloadedDeclarations":[4782,4800],"referencedDeclaration":4782,"src":"4199:4:30","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint32_$_t_bool_$returns$_t_uint32_$","typeString":"function (struct Witnet.Buffer memory,uint32,bool) pure returns (uint32)"}},"id":4797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4199:36:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"functionReturnParameters":4792,"id":4798,"nodeType":"Return","src":"4192:43:30"}]},"documentation":{"id":4783,"nodeType":"StructuredDocumentation","src":"3770:314:30","text":"@notice Move the inner cursor a number of bytes forward.\n @dev This is a simple wrapper around the relative offset case of `seek()`.\n @param _buffer An instance of `Witnet.Buffer`.\n @param _relativeOffset How many bytes to move the cursor forward.\n @return The final position of the cursor."},"id":4800,"implemented":true,"kind":"function","modifiers":[],"name":"seek","nameLocation":"4096:4:30","nodeType":"FunctionDefinition","parameters":{"id":4789,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4786,"mutability":"mutable","name":"_buffer","nameLocation":"4122:7:30","nodeType":"VariableDeclaration","scope":4800,"src":"4101:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4785,"nodeType":"UserDefinedTypeName","pathNode":{"id":4784,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"4101:13:30"},"referencedDeclaration":4361,"src":"4101:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":4788,"mutability":"mutable","name":"_relativeOffset","nameLocation":"4138:15:30","nodeType":"VariableDeclaration","scope":4800,"src":"4131:22:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4787,"name":"uint32","nodeType":"ElementaryTypeName","src":"4131:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"4100:54:30"},"returnParameters":{"id":4792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4791,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4800,"src":"4178:6:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4790,"name":"uint32","nodeType":"ElementaryTypeName","src":"4178:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"4177:8:30"},"scope":5261,"src":"4087:153:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4813,"nodeType":"Block","src":"4431:29:30","statements":[{"expression":{"id":4811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":4807,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4804,"src":"4437:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4809,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"4437:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":4810,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4454:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"4437:18:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4812,"nodeType":"ExpressionStatement","src":"4437:18:30"}]},"documentation":{"id":4801,"nodeType":"StructuredDocumentation","src":"4244:124:30","text":"@notice Move the inner cursor back to the first byte in the buffer.\n @param _buffer An instance of `Witnet.Buffer`."},"id":4814,"implemented":true,"kind":"function","modifiers":[],"name":"rewind","nameLocation":"4380:6:30","nodeType":"FunctionDefinition","parameters":{"id":4805,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4804,"mutability":"mutable","name":"_buffer","nameLocation":"4408:7:30","nodeType":"VariableDeclaration","scope":4814,"src":"4387:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4803,"nodeType":"UserDefinedTypeName","pathNode":{"id":4802,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"4387:13:30"},"referencedDeclaration":4361,"src":"4387:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"4386:30:30"},"returnParameters":{"id":4806,"nodeType":"ParameterList","parameters":[],"src":"4431:0:30"},"scope":5261,"src":"4371:89:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4851,"nodeType":"Block","src":"4822:218:30","statements":[{"assignments":[4831],"declarations":[{"constant":false,"id":4831,"mutability":"mutable","name":"bytesValue","nameLocation":"4841:10:30","nodeType":"VariableDeclaration","scope":4851,"src":"4828:23:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4830,"name":"bytes","nodeType":"ElementaryTypeName","src":"4828:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4834,"initialValue":{"expression":{"id":4832,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4818,"src":"4854:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4833,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"4854:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"4828:38:30"},{"assignments":[4836],"declarations":[{"constant":false,"id":4836,"mutability":"mutable","name":"offset","nameLocation":"4879:6:30","nodeType":"VariableDeclaration","scope":4851,"src":"4872:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4835,"name":"uint32","nodeType":"ElementaryTypeName","src":"4872:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":4839,"initialValue":{"expression":{"id":4837,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4818,"src":"4888:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4838,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"4888:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"4872:30:30"},{"assignments":[4841],"declarations":[{"constant":false,"id":4841,"mutability":"mutable","name":"value","nameLocation":"4914:5:30","nodeType":"VariableDeclaration","scope":4851,"src":"4908:11:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":4840,"name":"uint8","nodeType":"ElementaryTypeName","src":"4908:5:30","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":4842,"nodeType":"VariableDeclarationStatement","src":"4908:11:30"},{"AST":{"nodeType":"YulBlock","src":"4934:61:30","statements":[{"nodeType":"YulAssignment","src":"4942:47:30","value":{"arguments":[{"arguments":[{"arguments":[{"name":"bytesValue","nodeType":"YulIdentifier","src":"4965:10:30"},{"kind":"number","nodeType":"YulLiteral","src":"4977:1:30","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4961:3:30"},"nodeType":"YulFunctionCall","src":"4961:18:30"},{"name":"offset","nodeType":"YulIdentifier","src":"4981:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4957:3:30"},"nodeType":"YulFunctionCall","src":"4957:31:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4951:5:30"},"nodeType":"YulFunctionCall","src":"4951:38:30"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"4942:5:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":4831,"isOffset":false,"isSlot":false,"src":"4965:10:30","valueSize":1},{"declaration":4836,"isOffset":false,"isSlot":false,"src":"4981:6:30","valueSize":1},{"declaration":4841,"isOffset":false,"isSlot":false,"src":"4942:5:30","valueSize":1}],"id":4843,"nodeType":"InlineAssembly","src":"4925:70:30"},{"expression":{"id":4847,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5000:16:30","subExpression":{"expression":{"id":4844,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4818,"src":"5000:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"5000:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4848,"nodeType":"ExpressionStatement","src":"5000:16:30"},{"expression":{"id":4849,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4841,"src":"5030:5:30","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"functionReturnParameters":4829,"id":4850,"nodeType":"Return","src":"5023:12:30"}]},"documentation":{"id":4815,"nodeType":"StructuredDocumentation","src":"4464:224:30","text":"@notice Read and consume the next byte from the buffer as an `uint8`.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The `uint8` value of the next byte in the buffer counting from the cursor position."},"id":4852,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"expression":{"id":4821,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4818,"src":"4769:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4822,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"4769:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":4823,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4818,"src":"4785:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4824,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"4785:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"4785:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":4826,"kind":"modifierInvocation","modifierName":{"id":4820,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"4754:14:30"},"nodeType":"ModifierInvocation","src":"4754:51:30"}],"name":"readUint8","nameLocation":"4700:9:30","nodeType":"FunctionDefinition","parameters":{"id":4819,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4818,"mutability":"mutable","name":"_buffer","nameLocation":"4731:7:30","nodeType":"VariableDeclaration","scope":4852,"src":"4710:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4817,"nodeType":"UserDefinedTypeName","pathNode":{"id":4816,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"4710:13:30"},"referencedDeclaration":4361,"src":"4710:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"4709:30:30"},"returnParameters":{"id":4829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4828,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4852,"src":"4815:5:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":4827,"name":"uint8","nodeType":"ElementaryTypeName","src":"4815:5:30","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"4814:7:30"},"scope":5261,"src":"4691:349:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4892,"nodeType":"Block","src":"5416:222:30","statements":[{"assignments":[4871],"declarations":[{"constant":false,"id":4871,"mutability":"mutable","name":"bytesValue","nameLocation":"5435:10:30","nodeType":"VariableDeclaration","scope":4892,"src":"5422:23:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4870,"name":"bytes","nodeType":"ElementaryTypeName","src":"5422:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4874,"initialValue":{"expression":{"id":4872,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4856,"src":"5448:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4873,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"5448:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"5422:38:30"},{"assignments":[4876],"declarations":[{"constant":false,"id":4876,"mutability":"mutable","name":"offset","nameLocation":"5473:6:30","nodeType":"VariableDeclaration","scope":4892,"src":"5466:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4875,"name":"uint32","nodeType":"ElementaryTypeName","src":"5466:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":4879,"initialValue":{"expression":{"id":4877,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4856,"src":"5482:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4878,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"5482:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"5466:30:30"},{"assignments":[4881],"declarations":[{"constant":false,"id":4881,"mutability":"mutable","name":"value","nameLocation":"5509:5:30","nodeType":"VariableDeclaration","scope":4892,"src":"5502:12:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"},"typeName":{"id":4880,"name":"uint16","nodeType":"ElementaryTypeName","src":"5502:6:30","typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"}},"visibility":"internal"}],"id":4882,"nodeType":"VariableDeclarationStatement","src":"5502:12:30"},{"AST":{"nodeType":"YulBlock","src":"5529:61:30","statements":[{"nodeType":"YulAssignment","src":"5537:47:30","value":{"arguments":[{"arguments":[{"arguments":[{"name":"bytesValue","nodeType":"YulIdentifier","src":"5560:10:30"},{"kind":"number","nodeType":"YulLiteral","src":"5572:1:30","type":"","value":"2"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5556:3:30"},"nodeType":"YulFunctionCall","src":"5556:18:30"},{"name":"offset","nodeType":"YulIdentifier","src":"5576:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5552:3:30"},"nodeType":"YulFunctionCall","src":"5552:31:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5546:5:30"},"nodeType":"YulFunctionCall","src":"5546:38:30"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"5537:5:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":4871,"isOffset":false,"isSlot":false,"src":"5560:10:30","valueSize":1},{"declaration":4876,"isOffset":false,"isSlot":false,"src":"5576:6:30","valueSize":1},{"declaration":4881,"isOffset":false,"isSlot":false,"src":"5537:5:30","valueSize":1}],"id":4883,"nodeType":"InlineAssembly","src":"5520:70:30"},{"expression":{"id":4888,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":4884,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4856,"src":"5595:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4886,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"5595:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"32","id":4887,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5613:1:30","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"5595:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4889,"nodeType":"ExpressionStatement","src":"5595:19:30"},{"expression":{"id":4890,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4881,"src":"5628:5:30","typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"}},"functionReturnParameters":4869,"id":4891,"nodeType":"Return","src":"5621:12:30"}]},"documentation":{"id":4853,"nodeType":"StructuredDocumentation","src":"5044:232:30","text":"@notice Read and consume the next 2 bytes from the buffer as an `uint16`.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position."},"id":4893,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":4859,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4856,"src":"5358:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4860,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"5358:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":4861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5375:1:30","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5358:18:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":4863,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4856,"src":"5378:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4864,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"5378:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4865,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5378:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":4866,"kind":"modifierInvocation","modifierName":{"id":4858,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"5343:14:30"},"nodeType":"ModifierInvocation","src":"5343:55:30"}],"name":"readUint16","nameLocation":"5288:10:30","nodeType":"FunctionDefinition","parameters":{"id":4857,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4856,"mutability":"mutable","name":"_buffer","nameLocation":"5320:7:30","nodeType":"VariableDeclaration","scope":4893,"src":"5299:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4855,"nodeType":"UserDefinedTypeName","pathNode":{"id":4854,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"5299:13:30"},"referencedDeclaration":4361,"src":"5299:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"5298:30:30"},"returnParameters":{"id":4869,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4868,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4893,"src":"5408:6:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"},"typeName":{"id":4867,"name":"uint16","nodeType":"ElementaryTypeName","src":"5408:6:30","typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"}},"visibility":"internal"}],"src":"5407:8:30"},"scope":5261,"src":"5279:359:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4933,"nodeType":"Block","src":"6014:222:30","statements":[{"assignments":[4912],"declarations":[{"constant":false,"id":4912,"mutability":"mutable","name":"bytesValue","nameLocation":"6033:10:30","nodeType":"VariableDeclaration","scope":4933,"src":"6020:23:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4911,"name":"bytes","nodeType":"ElementaryTypeName","src":"6020:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4915,"initialValue":{"expression":{"id":4913,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4897,"src":"6046:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4914,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"6046:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"6020:38:30"},{"assignments":[4917],"declarations":[{"constant":false,"id":4917,"mutability":"mutable","name":"offset","nameLocation":"6071:6:30","nodeType":"VariableDeclaration","scope":4933,"src":"6064:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4916,"name":"uint32","nodeType":"ElementaryTypeName","src":"6064:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":4920,"initialValue":{"expression":{"id":4918,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4897,"src":"6080:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"6080:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"6064:30:30"},{"assignments":[4922],"declarations":[{"constant":false,"id":4922,"mutability":"mutable","name":"value","nameLocation":"6107:5:30","nodeType":"VariableDeclaration","scope":4933,"src":"6100:12:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4921,"name":"uint32","nodeType":"ElementaryTypeName","src":"6100:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":4923,"nodeType":"VariableDeclarationStatement","src":"6100:12:30"},{"AST":{"nodeType":"YulBlock","src":"6127:61:30","statements":[{"nodeType":"YulAssignment","src":"6135:47:30","value":{"arguments":[{"arguments":[{"arguments":[{"name":"bytesValue","nodeType":"YulIdentifier","src":"6158:10:30"},{"kind":"number","nodeType":"YulLiteral","src":"6170:1:30","type":"","value":"4"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6154:3:30"},"nodeType":"YulFunctionCall","src":"6154:18:30"},{"name":"offset","nodeType":"YulIdentifier","src":"6174:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6150:3:30"},"nodeType":"YulFunctionCall","src":"6150:31:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6144:5:30"},"nodeType":"YulFunctionCall","src":"6144:38:30"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6135:5:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":4912,"isOffset":false,"isSlot":false,"src":"6158:10:30","valueSize":1},{"declaration":4917,"isOffset":false,"isSlot":false,"src":"6174:6:30","valueSize":1},{"declaration":4922,"isOffset":false,"isSlot":false,"src":"6135:5:30","valueSize":1}],"id":4924,"nodeType":"InlineAssembly","src":"6118:70:30"},{"expression":{"id":4929,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":4925,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4897,"src":"6193:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4927,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"6193:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"34","id":4928,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6211:1:30","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"6193:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4930,"nodeType":"ExpressionStatement","src":"6193:19:30"},{"expression":{"id":4931,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4922,"src":"6226:5:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"functionReturnParameters":4910,"id":4932,"nodeType":"Return","src":"6219:12:30"}]},"documentation":{"id":4894,"nodeType":"StructuredDocumentation","src":"5642:232:30","text":"@notice Read and consume the next 4 bytes from the buffer as an `uint32`.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position."},"id":4934,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":4900,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4897,"src":"5956:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4901,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"5956:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"33","id":4902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5973:1:30","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"src":"5956:18:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":4904,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4897,"src":"5976:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4905,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"5976:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5976:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":4907,"kind":"modifierInvocation","modifierName":{"id":4899,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"5941:14:30"},"nodeType":"ModifierInvocation","src":"5941:55:30"}],"name":"readUint32","nameLocation":"5886:10:30","nodeType":"FunctionDefinition","parameters":{"id":4898,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4897,"mutability":"mutable","name":"_buffer","nameLocation":"5918:7:30","nodeType":"VariableDeclaration","scope":4934,"src":"5897:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4896,"nodeType":"UserDefinedTypeName","pathNode":{"id":4895,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"5897:13:30"},"referencedDeclaration":4361,"src":"5897:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"5896:30:30"},"returnParameters":{"id":4910,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4909,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4934,"src":"6006:6:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4908,"name":"uint32","nodeType":"ElementaryTypeName","src":"6006:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"src":"6005:8:30"},"scope":5261,"src":"5877:359:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":4974,"nodeType":"Block","src":"6612:222:30","statements":[{"assignments":[4953],"declarations":[{"constant":false,"id":4953,"mutability":"mutable","name":"bytesValue","nameLocation":"6631:10:30","nodeType":"VariableDeclaration","scope":4974,"src":"6618:23:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4952,"name":"bytes","nodeType":"ElementaryTypeName","src":"6618:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4956,"initialValue":{"expression":{"id":4954,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4938,"src":"6644:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4955,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"6644:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"6618:38:30"},{"assignments":[4958],"declarations":[{"constant":false,"id":4958,"mutability":"mutable","name":"offset","nameLocation":"6669:6:30","nodeType":"VariableDeclaration","scope":4974,"src":"6662:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4957,"name":"uint32","nodeType":"ElementaryTypeName","src":"6662:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":4961,"initialValue":{"expression":{"id":4959,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4938,"src":"6678:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4960,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"6678:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"6662:30:30"},{"assignments":[4963],"declarations":[{"constant":false,"id":4963,"mutability":"mutable","name":"value","nameLocation":"6705:5:30","nodeType":"VariableDeclaration","scope":4974,"src":"6698:12:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":4962,"name":"uint64","nodeType":"ElementaryTypeName","src":"6698:6:30","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":4964,"nodeType":"VariableDeclarationStatement","src":"6698:12:30"},{"AST":{"nodeType":"YulBlock","src":"6725:61:30","statements":[{"nodeType":"YulAssignment","src":"6733:47:30","value":{"arguments":[{"arguments":[{"arguments":[{"name":"bytesValue","nodeType":"YulIdentifier","src":"6756:10:30"},{"kind":"number","nodeType":"YulLiteral","src":"6768:1:30","type":"","value":"8"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6752:3:30"},"nodeType":"YulFunctionCall","src":"6752:18:30"},{"name":"offset","nodeType":"YulIdentifier","src":"6772:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6748:3:30"},"nodeType":"YulFunctionCall","src":"6748:31:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6742:5:30"},"nodeType":"YulFunctionCall","src":"6742:38:30"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6733:5:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":4953,"isOffset":false,"isSlot":false,"src":"6756:10:30","valueSize":1},{"declaration":4958,"isOffset":false,"isSlot":false,"src":"6772:6:30","valueSize":1},{"declaration":4963,"isOffset":false,"isSlot":false,"src":"6733:5:30","valueSize":1}],"id":4965,"nodeType":"InlineAssembly","src":"6716:70:30"},{"expression":{"id":4970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":4966,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4938,"src":"6791:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4968,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"6791:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"38","id":4969,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6809:1:30","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"6791:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":4971,"nodeType":"ExpressionStatement","src":"6791:19:30"},{"expression":{"id":4972,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4963,"src":"6824:5:30","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":4951,"id":4973,"nodeType":"Return","src":"6817:12:30"}]},"documentation":{"id":4935,"nodeType":"StructuredDocumentation","src":"6240:232:30","text":"@notice Read and consume the next 8 bytes from the buffer as an `uint64`.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position."},"id":4975,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":4941,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4938,"src":"6554:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4942,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"6554:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"37","id":4943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6571:1:30","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"6554:18:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":4945,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4938,"src":"6574:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4946,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"6574:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4947,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"6574:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":4948,"kind":"modifierInvocation","modifierName":{"id":4940,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"6539:14:30"},"nodeType":"ModifierInvocation","src":"6539:55:30"}],"name":"readUint64","nameLocation":"6484:10:30","nodeType":"FunctionDefinition","parameters":{"id":4939,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4938,"mutability":"mutable","name":"_buffer","nameLocation":"6516:7:30","nodeType":"VariableDeclaration","scope":4975,"src":"6495:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4937,"nodeType":"UserDefinedTypeName","pathNode":{"id":4936,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"6495:13:30"},"referencedDeclaration":4361,"src":"6495:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"6494:30:30"},"returnParameters":{"id":4951,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4950,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":4975,"src":"6604:6:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":4949,"name":"uint64","nodeType":"ElementaryTypeName","src":"6604:6:30","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"6603:8:30"},"scope":5261,"src":"6475:359:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":5015,"nodeType":"Block","src":"7217:225:30","statements":[{"assignments":[4994],"declarations":[{"constant":false,"id":4994,"mutability":"mutable","name":"bytesValue","nameLocation":"7236:10:30","nodeType":"VariableDeclaration","scope":5015,"src":"7223:23:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":4993,"name":"bytes","nodeType":"ElementaryTypeName","src":"7223:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":4997,"initialValue":{"expression":{"id":4995,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4979,"src":"7249:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"7249:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"7223:38:30"},{"assignments":[4999],"declarations":[{"constant":false,"id":4999,"mutability":"mutable","name":"offset","nameLocation":"7274:6:30","nodeType":"VariableDeclaration","scope":5015,"src":"7267:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":4998,"name":"uint32","nodeType":"ElementaryTypeName","src":"7267:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":5002,"initialValue":{"expression":{"id":5000,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4979,"src":"7283:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5001,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"7283:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"7267:30:30"},{"assignments":[5004],"declarations":[{"constant":false,"id":5004,"mutability":"mutable","name":"value","nameLocation":"7311:5:30","nodeType":"VariableDeclaration","scope":5015,"src":"7303:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":5003,"name":"uint128","nodeType":"ElementaryTypeName","src":"7303:7:30","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"}],"id":5005,"nodeType":"VariableDeclarationStatement","src":"7303:13:30"},{"AST":{"nodeType":"YulBlock","src":"7331:62:30","statements":[{"nodeType":"YulAssignment","src":"7339:48:30","value":{"arguments":[{"arguments":[{"arguments":[{"name":"bytesValue","nodeType":"YulIdentifier","src":"7362:10:30"},{"kind":"number","nodeType":"YulLiteral","src":"7374:2:30","type":"","value":"16"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7358:3:30"},"nodeType":"YulFunctionCall","src":"7358:19:30"},{"name":"offset","nodeType":"YulIdentifier","src":"7379:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7354:3:30"},"nodeType":"YulFunctionCall","src":"7354:32:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"7348:5:30"},"nodeType":"YulFunctionCall","src":"7348:39:30"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"7339:5:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":4994,"isOffset":false,"isSlot":false,"src":"7362:10:30","valueSize":1},{"declaration":4999,"isOffset":false,"isSlot":false,"src":"7379:6:30","valueSize":1},{"declaration":5004,"isOffset":false,"isSlot":false,"src":"7339:5:30","valueSize":1}],"id":5006,"nodeType":"InlineAssembly","src":"7322:71:30"},{"expression":{"id":5011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":5007,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4979,"src":"7398:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"7398:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"3136","id":5010,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7416:2:30","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},"src":"7398:20:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":5012,"nodeType":"ExpressionStatement","src":"7398:20:30"},{"expression":{"id":5013,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5004,"src":"7432:5:30","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"functionReturnParameters":4992,"id":5014,"nodeType":"Return","src":"7425:12:30"}]},"documentation":{"id":4976,"nodeType":"StructuredDocumentation","src":"6838:236:30","text":"@notice Read and consume the next 16 bytes from the buffer as an `uint128`.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position."},"id":5016,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":4985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":4982,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4979,"src":"7157:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4983,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"7157:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3135","id":4984,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7174:2:30","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},"src":"7157:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":4986,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4979,"src":"7178:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":4987,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"7178:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":4988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"7178:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":4989,"kind":"modifierInvocation","modifierName":{"id":4981,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"7142:14:30"},"nodeType":"ModifierInvocation","src":"7142:56:30"}],"name":"readUint128","nameLocation":"7086:11:30","nodeType":"FunctionDefinition","parameters":{"id":4980,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4979,"mutability":"mutable","name":"_buffer","nameLocation":"7119:7:30","nodeType":"VariableDeclaration","scope":5016,"src":"7098:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":4978,"nodeType":"UserDefinedTypeName","pathNode":{"id":4977,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"7098:13:30"},"referencedDeclaration":4361,"src":"7098:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"7097:30:30"},"returnParameters":{"id":4992,"nodeType":"ParameterList","parameters":[{"constant":false,"id":4991,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5016,"src":"7208:7:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":4990,"name":"uint128","nodeType":"ElementaryTypeName","src":"7208:7:30","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"}],"src":"7207:9:30"},"scope":5261,"src":"7077:365:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":5056,"nodeType":"Block","src":"7825:225:30","statements":[{"assignments":[5035],"declarations":[{"constant":false,"id":5035,"mutability":"mutable","name":"bytesValue","nameLocation":"7844:10:30","nodeType":"VariableDeclaration","scope":5056,"src":"7831:23:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":5034,"name":"bytes","nodeType":"ElementaryTypeName","src":"7831:5:30","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":5038,"initialValue":{"expression":{"id":5036,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5020,"src":"7857:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5037,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"7857:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"7831:38:30"},{"assignments":[5040],"declarations":[{"constant":false,"id":5040,"mutability":"mutable","name":"offset","nameLocation":"7882:6:30","nodeType":"VariableDeclaration","scope":5056,"src":"7875:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":5039,"name":"uint32","nodeType":"ElementaryTypeName","src":"7875:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":5043,"initialValue":{"expression":{"id":5041,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5020,"src":"7891:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5042,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"7891:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"7875:30:30"},{"assignments":[5045],"declarations":[{"constant":false,"id":5045,"mutability":"mutable","name":"value","nameLocation":"7919:5:30","nodeType":"VariableDeclaration","scope":5056,"src":"7911:13:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5044,"name":"uint256","nodeType":"ElementaryTypeName","src":"7911:7:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5046,"nodeType":"VariableDeclarationStatement","src":"7911:13:30"},{"AST":{"nodeType":"YulBlock","src":"7939:62:30","statements":[{"nodeType":"YulAssignment","src":"7947:48:30","value":{"arguments":[{"arguments":[{"arguments":[{"name":"bytesValue","nodeType":"YulIdentifier","src":"7970:10:30"},{"kind":"number","nodeType":"YulLiteral","src":"7982:2:30","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7966:3:30"},"nodeType":"YulFunctionCall","src":"7966:19:30"},{"name":"offset","nodeType":"YulIdentifier","src":"7987:6:30"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7962:3:30"},"nodeType":"YulFunctionCall","src":"7962:32:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"7956:5:30"},"nodeType":"YulFunctionCall","src":"7956:39:30"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"7947:5:30"}]}]},"evmVersion":"london","externalReferences":[{"declaration":5035,"isOffset":false,"isSlot":false,"src":"7970:10:30","valueSize":1},{"declaration":5040,"isOffset":false,"isSlot":false,"src":"7987:6:30","valueSize":1},{"declaration":5045,"isOffset":false,"isSlot":false,"src":"7947:5:30","valueSize":1}],"id":5047,"nodeType":"InlineAssembly","src":"7930:71:30"},{"expression":{"id":5052,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":5048,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5020,"src":"8006:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5050,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"8006:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"3332","id":5051,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8024:2:30","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"src":"8006:20:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":5053,"nodeType":"ExpressionStatement","src":"8006:20:30"},{"expression":{"id":5054,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5045,"src":"8040:5:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":5033,"id":5055,"nodeType":"Return","src":"8033:12:30"}]},"documentation":{"id":5017,"nodeType":"StructuredDocumentation","src":"7446:236:30","text":"@notice Read and consume the next 32 bytes from the buffer as an `uint256`.\n @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\n @param _buffer An instance of `Witnet.Buffer`."},"id":5057,"implemented":true,"kind":"function","modifiers":[{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5023,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5020,"src":"7765:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5024,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"cursor","nodeType":"MemberAccess","referencedDeclaration":4360,"src":"7765:14:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3331","id":5025,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7782:2:30","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},"src":"7765:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},{"expression":{"expression":{"id":5027,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5020,"src":"7786:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"7786:12:30","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"7786:19:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5030,"kind":"modifierInvocation","modifierName":{"id":5022,"name":"notOutOfBounds","nodeType":"IdentifierPath","referencedDeclaration":4638,"src":"7750:14:30"},"nodeType":"ModifierInvocation","src":"7750:56:30"}],"name":"readUint256","nameLocation":"7694:11:30","nodeType":"FunctionDefinition","parameters":{"id":5021,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5020,"mutability":"mutable","name":"_buffer","nameLocation":"7727:7:30","nodeType":"VariableDeclaration","scope":5057,"src":"7706:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":5019,"nodeType":"UserDefinedTypeName","pathNode":{"id":5018,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"7706:13:30"},"referencedDeclaration":4361,"src":"7706:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"7705:30:30"},"returnParameters":{"id":5033,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5032,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5057,"src":"7816:7:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5031,"name":"uint256","nodeType":"ElementaryTypeName","src":"7816:7:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7815:9:30"},"scope":5261,"src":"7685:365:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":5206,"nodeType":"Block","src":"8887:983:30","statements":[{"assignments":[5067],"declarations":[{"constant":false,"id":5067,"mutability":"mutable","name":"bytesValue","nameLocation":"8900:10:30","nodeType":"VariableDeclaration","scope":5206,"src":"8893:17:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":5066,"name":"uint32","nodeType":"ElementaryTypeName","src":"8893:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":5071,"initialValue":{"arguments":[{"id":5069,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5061,"src":"8924:7:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}],"id":5068,"name":"readUint16","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4893,"src":"8913:10:30","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint16_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint16)"}},"id":5070,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8913:19:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"}},"nodeType":"VariableDeclarationStatement","src":"8893:39:30"},{"assignments":[5073],"declarations":[{"constant":false,"id":5073,"mutability":"mutable","name":"sign","nameLocation":"8974:4:30","nodeType":"VariableDeclaration","scope":5206,"src":"8967:11:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":5072,"name":"uint32","nodeType":"ElementaryTypeName","src":"8967:6:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":5077,"initialValue":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5076,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5074,"name":"bytesValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5067,"src":"8981:10:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"307838303030","id":5075,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8994:6:30","typeDescriptions":{"typeIdentifier":"t_rational_32768_by_1","typeString":"int_const 32768"},"value":"0x8000"},"src":"8981:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"8967:33:30"},{"assignments":[5079],"declarations":[{"constant":false,"id":5079,"mutability":"mutable","name":"exponent","nameLocation":"9124:8:30","nodeType":"VariableDeclaration","scope":5206,"src":"9118:14:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":5078,"name":"int32","nodeType":"ElementaryTypeName","src":"9118:5:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"id":5091,"initialValue":{"commonType":{"typeIdentifier":"t_int32","typeString":"int32"},"id":5090,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_int32","typeString":"int32"},"id":5087,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5082,"name":"bytesValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5067,"src":"9142:10:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"307837633030","id":5083,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9155:6:30","typeDescriptions":{"typeIdentifier":"t_rational_31744_by_1","typeString":"int_const 31744"},"value":"0x7c00"},"src":"9142:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":5081,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9136:5:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":5080,"name":"int32","nodeType":"ElementaryTypeName","src":"9136:5:30","typeDescriptions":{}}},"id":5085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9136:26:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3130","id":5086,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9166:2:30","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"9136:32:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"id":5088,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"9135:34:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"3135","id":5089,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9172:2:30","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},"src":"9135:39:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"VariableDeclarationStatement","src":"9118:56:30"},{"assignments":[5093],"declarations":[{"constant":false,"id":5093,"mutability":"mutable","name":"significand","nameLocation":"9210:11:30","nodeType":"VariableDeclaration","scope":5206,"src":"9204:17:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":5092,"name":"int32","nodeType":"ElementaryTypeName","src":"9204:5:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"id":5100,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5096,"name":"bytesValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5067,"src":"9230:10:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"307830336666","id":5097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9243:6:30","typeDescriptions":{"typeIdentifier":"t_rational_1023_by_1","typeString":"int_const 1023"},"value":"0x03ff"},"src":"9230:19:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"id":5095,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9224:5:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":5094,"name":"int32","nodeType":"ElementaryTypeName","src":"9224:5:30","typeDescriptions":{}}},"id":5099,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9224:26:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"VariableDeclarationStatement","src":"9204:46:30"},{"condition":{"commonType":{"typeIdentifier":"t_int32","typeString":"int32"},"id":5103,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5101,"name":"exponent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5079,"src":"9314:8:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3135","id":5102,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9326:2:30","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},"src":"9314:14:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5109,"nodeType":"IfStatement","src":"9310:55:30","trueBody":{"id":5108,"nodeType":"Block","src":"9330:35:30","statements":[{"expression":{"id":5106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5104,"name":"significand","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5093,"src":"9338:11:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"hexValue":"3078343030","id":5105,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9353:5:30","typeDescriptions":{"typeIdentifier":"t_rational_1024_by_1","typeString":"int_const 1024"},"value":"0x400"},"src":"9338:20:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5107,"nodeType":"ExpressionStatement","src":"9338:20:30"}]}},{"assignments":[5111],"declarations":[{"constant":false,"id":5111,"mutability":"mutable","name":"result","nameLocation":"9432:6:30","nodeType":"VariableDeclaration","scope":5206,"src":"9426:12:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":5110,"name":"int32","nodeType":"ElementaryTypeName","src":"9426:5:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"id":5113,"initialValue":{"hexValue":"30","id":5112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9441:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"9426:16:30"},{"condition":{"commonType":{"typeIdentifier":"t_int32","typeString":"int32"},"id":5116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5114,"name":"exponent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5079,"src":"9452:8:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"30","id":5115,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9464:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9452:13:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5192,"nodeType":"Block","src":"9605:136:30","statements":[{"expression":{"id":5190,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5154,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5111,"src":"9613:6:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":5188,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":5185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":5170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5167,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":5163,"name":"significand","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5093,"src":"9652:11:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"}],"id":5162,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9645:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5161,"name":"int256","nodeType":"ElementaryTypeName","src":"9645:6:30","typeDescriptions":{}}},"id":5164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9645:19:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":5160,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9637:7:30","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5159,"name":"uint256","nodeType":"ElementaryTypeName","src":"9637:7:30","typeDescriptions":{}}},"id":5165,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9637:28:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"hexValue":"3078343030","id":5166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9668:5:30","typeDescriptions":{"typeIdentifier":"t_rational_1024_by_1","typeString":"int_const 1024"},"value":"0x400"},"src":"9637:36:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5158,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9630:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5157,"name":"int256","nodeType":"ElementaryTypeName","src":"9630:6:30","typeDescriptions":{}}},"id":5168,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9630:44:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"3130303030","id":5169,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9677:5:30","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"value":"10000"},"src":"9630:52:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"id":5171,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"9629:54:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5183,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"31","id":5174,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9693:1:30","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"arguments":[{"arguments":[{"id":5180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"-","prefix":true,"src":"9713:10:30","subExpression":{"id":5179,"name":"exponent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5079,"src":"9715:8:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"}],"id":5178,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9706:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5177,"name":"int256","nodeType":"ElementaryTypeName","src":"9706:6:30","typeDescriptions":{}}},"id":5181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9706:18:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":5176,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9698:7:30","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5175,"name":"uint256","nodeType":"ElementaryTypeName","src":"9698:7:30","typeDescriptions":{}}},"id":5182,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9698:27:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9693:32:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5173,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9686:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5172,"name":"int256","nodeType":"ElementaryTypeName","src":"9686:6:30","typeDescriptions":{}}},"id":5184,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9686:40:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"9629:97:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"id":5186,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"9628:99:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3130","id":5187,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9731:2:30","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"9628:105:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":5156,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9622:5:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":5155,"name":"int32","nodeType":"ElementaryTypeName","src":"9622:5:30","typeDescriptions":{}}},"id":5189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9622:112:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"src":"9613:121:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5191,"nodeType":"ExpressionStatement","src":"9613:121:30"}]},"id":5193,"nodeType":"IfStatement","src":"9448:293:30","trueBody":{"id":5153,"nodeType":"Block","src":"9467:132:30","statements":[{"expression":{"id":5151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5117,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5111,"src":"9475:6:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":5149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":5146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":5133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"31","id":5122,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9498:1:30","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"arguments":[{"arguments":[{"id":5127,"name":"exponent","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5079,"src":"9518:8:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"}],"id":5126,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9511:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5125,"name":"int256","nodeType":"ElementaryTypeName","src":"9511:6:30","typeDescriptions":{}}},"id":5128,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9511:16:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":5124,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9503:7:30","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5123,"name":"uint256","nodeType":"ElementaryTypeName","src":"9503:7:30","typeDescriptions":{}}},"id":5129,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9503:25:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9498:30:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5121,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9491:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5120,"name":"int256","nodeType":"ElementaryTypeName","src":"9491:6:30","typeDescriptions":{}}},"id":5131,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9491:38:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"3130303030","id":5132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9532:5:30","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"value":"10000"},"src":"9491:46:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":5140,"name":"significand","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5093,"src":"9562:11:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int32","typeString":"int32"}],"id":5139,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9555:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5138,"name":"int256","nodeType":"ElementaryTypeName","src":"9555:6:30","typeDescriptions":{}}},"id":5141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9555:19:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":5137,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9547:7:30","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":5136,"name":"uint256","nodeType":"ElementaryTypeName","src":"9547:7:30","typeDescriptions":{}}},"id":5142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9547:28:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"hexValue":"3078343030","id":5143,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9578:5:30","typeDescriptions":{"typeIdentifier":"t_rational_1024_by_1","typeString":"int_const 1024"},"value":"0x400"},"src":"9547:36:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":5135,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9540:6:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":5134,"name":"int256","nodeType":"ElementaryTypeName","src":"9540:6:30","typeDescriptions":{}}},"id":5145,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9540:44:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"9491:93:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"id":5147,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"9490:95:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3130","id":5148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9589:2:30","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"9490:101:30","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":5119,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9484:5:30","typeDescriptions":{"typeIdentifier":"t_type$_t_int32_$","typeString":"type(int32)"},"typeName":{"id":5118,"name":"int32","nodeType":"ElementaryTypeName","src":"9484:5:30","typeDescriptions":{}}},"id":5150,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9484:108:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"src":"9475:117:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5152,"nodeType":"ExpressionStatement","src":"9475:117:30"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5194,"name":"sign","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5073,"src":"9808:4:30","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":5195,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9816:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9808:9:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5203,"nodeType":"IfStatement","src":"9804:43:30","trueBody":{"id":5202,"nodeType":"Block","src":"9819:28:30","statements":[{"expression":{"id":5200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5197,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5111,"src":"9827:6:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"Assignment","operator":"*=","rightHandSide":{"id":5199,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"-","prefix":true,"src":"9837:3:30","subExpression":{"hexValue":"31","id":5198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9839:1:30","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"typeDescriptions":{"typeIdentifier":"t_rational_minus_1_by_1","typeString":"int_const -1"}},"src":"9827:13:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5201,"nodeType":"ExpressionStatement","src":"9827:13:30"}]}},{"expression":{"id":5204,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5111,"src":"9859:6:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"functionReturnParameters":5065,"id":5205,"nodeType":"Return","src":"9852:13:30"}]},"documentation":{"id":5058,"nodeType":"StructuredDocumentation","src":"8054:749:30","text":"@notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\n `int32`.\n @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\n by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\n use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\n expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\n @param _buffer An instance of `Witnet.Buffer`.\n @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position."},"id":5207,"implemented":true,"kind":"function","modifiers":[],"name":"readFloat16","nameLocation":"8815:11:30","nodeType":"FunctionDefinition","parameters":{"id":5062,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5061,"mutability":"mutable","name":"_buffer","nameLocation":"8848:7:30","nodeType":"VariableDeclaration","scope":5207,"src":"8827:28:30","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":5060,"nodeType":"UserDefinedTypeName","pathNode":{"id":5059,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"8827:13:30"},"referencedDeclaration":4361,"src":"8827:13:30","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"8826:30:30"},"returnParameters":{"id":5065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5207,"src":"8880:5:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":5063,"name":"int32","nodeType":"ElementaryTypeName","src":"8880:5:30","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"8879:7:30"},"scope":5261,"src":"8806:1064:30","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":5259,"nodeType":"Block","src":"10423:519:30","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5220,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5218,"name":"_len","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"10437:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":5219,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10444:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10437:8:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744275666665723a2043616e6e6f7420636f70792030206279746573","id":5221,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10447:35:30","typeDescriptions":{"typeIdentifier":"t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea","typeString":"literal_string \"WitnetBuffer: Cannot copy 0 bytes\""},"value":"WitnetBuffer: Cannot copy 0 bytes"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea","typeString":"literal_string \"WitnetBuffer: Cannot copy 0 bytes\""}],"id":5217,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10429:7:30","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5222,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10429:54:30","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5223,"nodeType":"ExpressionStatement","src":"10429:54:30"},{"body":{"id":5240,"nodeType":"Block","src":"10567:104:30","statements":[{"AST":{"nodeType":"YulBlock","src":"10584:44:30","statements":[{"expression":{"arguments":[{"name":"_dest","nodeType":"YulIdentifier","src":"10601:5:30"},{"arguments":[{"name":"_src","nodeType":"YulIdentifier","src":"10614:4:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"10608:5:30"},"nodeType":"YulFunctionCall","src":"10608:11:30"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10594:6:30"},"nodeType":"YulFunctionCall","src":"10594:26:30"},"nodeType":"YulExpressionStatement","src":"10594:26:30"}]},"evmVersion":"london","externalReferences":[{"declaration":5210,"isOffset":false,"isSlot":false,"src":"10601:5:30","valueSize":1},{"declaration":5212,"isOffset":false,"isSlot":false,"src":"10614:4:30","valueSize":1}],"id":5231,"nodeType":"InlineAssembly","src":"10575:53:30"},{"expression":{"id":5234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5232,"name":"_dest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5210,"src":"10635:5:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"3332","id":5233,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10644:2:30","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"src":"10635:11:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":5235,"nodeType":"ExpressionStatement","src":"10635:11:30"},{"expression":{"id":5238,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5236,"name":"_src","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5212,"src":"10654:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"3332","id":5237,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10662:2:30","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"src":"10654:10:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":5239,"nodeType":"ExpressionStatement","src":"10654:10:30"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5224,"name":"_len","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"10543:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"3332","id":5225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10551:2:30","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"src":"10543:10:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5241,"loopExpression":{"expression":{"id":5229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5227,"name":"_len","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"10555:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"3332","id":5228,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10563:2:30","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"src":"10555:10:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":5230,"nodeType":"ExpressionStatement","src":"10555:10:30"},"nodeType":"ForStatement","src":"10536:135:30"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5242,"name":"_len","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"10680:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":5243,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10687:1:30","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10680:8:30","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5258,"nodeType":"IfStatement","src":"10676:262:30","trueBody":{"id":5257,"nodeType":"Block","src":"10690:248:30","statements":[{"assignments":[5246],"declarations":[{"constant":false,"id":5246,"mutability":"mutable","name":"mask","nameLocation":"10733:4:30","nodeType":"VariableDeclaration","scope":5257,"src":"10728:9:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5245,"name":"uint","nodeType":"ElementaryTypeName","src":"10728:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5255,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"323536","id":5247,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10740:3:30","typeDescriptions":{"typeIdentifier":"t_rational_256_by_1","typeString":"int_const 256"},"value":"256"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3332","id":5248,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10748:2:30","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":5249,"name":"_len","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5214,"src":"10753:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10748:9:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5251,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"10747:11:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10740:18:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":5253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10761:1:30","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"10740:22:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"10728:34:30"},{"AST":{"nodeType":"YulBlock","src":"10779:153:30","statements":[{"nodeType":"YulVariableDeclaration","src":"10789:42:30","value":{"arguments":[{"arguments":[{"name":"_src","nodeType":"YulIdentifier","src":"10814:4:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"10808:5:30"},"nodeType":"YulFunctionCall","src":"10808:11:30"},{"arguments":[{"name":"mask","nodeType":"YulIdentifier","src":"10825:4:30"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"10821:3:30"},"nodeType":"YulFunctionCall","src":"10821:9:30"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"10804:3:30"},"nodeType":"YulFunctionCall","src":"10804:27:30"},"variables":[{"name":"srcpart","nodeType":"YulTypedName","src":"10793:7:30","type":""}]},{"nodeType":"YulVariableDeclaration","src":"10840:39:30","value":{"arguments":[{"arguments":[{"name":"_dest","nodeType":"YulIdentifier","src":"10866:5:30"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"10860:5:30"},"nodeType":"YulFunctionCall","src":"10860:12:30"},{"name":"mask","nodeType":"YulIdentifier","src":"10874:4:30"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"10856:3:30"},"nodeType":"YulFunctionCall","src":"10856:23:30"},"variables":[{"name":"destpart","nodeType":"YulTypedName","src":"10844:8:30","type":""}]},{"expression":{"arguments":[{"name":"_dest","nodeType":"YulIdentifier","src":"10895:5:30"},{"arguments":[{"name":"destpart","nodeType":"YulIdentifier","src":"10905:8:30"},{"name":"srcpart","nodeType":"YulIdentifier","src":"10915:7:30"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"10902:2:30"},"nodeType":"YulFunctionCall","src":"10902:21:30"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10888:6:30"},"nodeType":"YulFunctionCall","src":"10888:36:30"},"nodeType":"YulExpressionStatement","src":"10888:36:30"}]},"evmVersion":"london","externalReferences":[{"declaration":5210,"isOffset":false,"isSlot":false,"src":"10866:5:30","valueSize":1},{"declaration":5210,"isOffset":false,"isSlot":false,"src":"10895:5:30","valueSize":1},{"declaration":5212,"isOffset":false,"isSlot":false,"src":"10814:4:30","valueSize":1},{"declaration":5246,"isOffset":false,"isSlot":false,"src":"10825:4:30","valueSize":1},{"declaration":5246,"isOffset":false,"isSlot":false,"src":"10874:4:30","valueSize":1}],"id":5256,"nodeType":"InlineAssembly","src":"10770:162:30"}]}}]},"documentation":{"id":5208,"nodeType":"StructuredDocumentation","src":"9874:427:30","text":"@notice Copy bytes from one memory address into another.\n @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\n of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\n @param _dest Address of the destination memory.\n @param _src Address to the source memory.\n @param _len How many bytes to copy."},"id":5260,"implemented":true,"kind":"function","modifiers":[],"name":"memcpy","nameLocation":"10369:6:30","nodeType":"FunctionDefinition","parameters":{"id":5215,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5210,"mutability":"mutable","name":"_dest","nameLocation":"10381:5:30","nodeType":"VariableDeclaration","scope":5260,"src":"10376:10:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5209,"name":"uint","nodeType":"ElementaryTypeName","src":"10376:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":5212,"mutability":"mutable","name":"_src","nameLocation":"10393:4:30","nodeType":"VariableDeclaration","scope":5260,"src":"10388:9:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5211,"name":"uint","nodeType":"ElementaryTypeName","src":"10388:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":5214,"mutability":"mutable","name":"_len","nameLocation":"10404:4:30","nodeType":"VariableDeclaration","scope":5260,"src":"10399:9:30","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5213,"name":"uint","nodeType":"ElementaryTypeName","src":"10399:4:30","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10375:34:30"},"returnParameters":{"id":5216,"nodeType":"ParameterList","parameters":[],"src":"10423:0:30"},"scope":5261,"src":"10360:582:30","stateMutability":"pure","virtual":false,"visibility":"private"}],"scope":5262,"src":"658:10287:30","usedErrors":[]}],"src":"33:10913:30"},"id":30},"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619],"WitnetBuffer":[5261],"WitnetDecoderLib":[6386]},"id":6387,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":5263,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:31"},{"id":5264,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:31"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol","file":"./WitnetBuffer.sol","id":5265,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":6387,"sourceUnit":5262,"src":"100:28:31","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"library","documentation":{"id":5266,"nodeType":"StructuredDocumentation","src":"130:683:31","text":"@title A minimalistic implementation of “RFC 7049 Concise Binary Object Representation”\n @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\n the gas cost of decoding them into a useful native type.\n @dev Most of the logic has been borrowed from Patrick Gansterer’s cbor.js library: https://github.com/paroga/cbor-js\n @author The Witnet Foundation.\n \n TODO: add support for Array (majorType = 4)\n TODO: add support for Map (majorType = 5)\n TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\n TODO: add support for Float64 (majorType = 7, additionalInformation = 27) "},"fullyImplemented":true,"id":6386,"linearizedBaseContracts":[6386],"name":"WitnetDecoderLib","nameLocation":"822:16:31","nodeType":"ContractDefinition","nodes":[{"id":5270,"libraryName":{"id":5267,"name":"WitnetBuffer","nodeType":"IdentifierPath","referencedDeclaration":5261,"src":"850:12:31"},"nodeType":"UsingForDirective","src":"844:37:31","typeName":{"id":5269,"nodeType":"UserDefinedTypeName","pathNode":{"id":5268,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"867:13:31"},"referencedDeclaration":4361,"src":"867:13:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}}},{"constant":true,"id":5277,"mutability":"constant","name":"_UINT32_MAX","nameLocation":"910:11:31","nodeType":"VariableDeclaration","scope":6386,"src":"885:55:31","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":5271,"name":"uint32","nodeType":"ElementaryTypeName","src":"885:6:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"value":{"expression":{"arguments":[{"id":5274,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"929:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":5273,"name":"uint32","nodeType":"ElementaryTypeName","src":"929:6:31","typeDescriptions":{}}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"}],"id":5272,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"924:4:31","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":5275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"924:12:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_uint32","typeString":"type(uint32)"}},"id":5276,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"max","nodeType":"MemberAccess","src":"924:16:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"},{"constant":true,"id":5284,"mutability":"constant","name":"_UINT64_MAX","nameLocation":"969:11:31","nodeType":"VariableDeclaration","scope":6386,"src":"944:55:31","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5278,"name":"uint64","nodeType":"ElementaryTypeName","src":"944:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":{"expression":{"arguments":[{"id":5281,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"988:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint64_$","typeString":"type(uint64)"},"typeName":{"id":5280,"name":"uint64","nodeType":"ElementaryTypeName","src":"988:6:31","typeDescriptions":{}}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_uint64_$","typeString":"type(uint64)"}],"id":5279,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"983:4:31","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":5282,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"983:12:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_uint64","typeString":"type(uint64)"}},"id":5283,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"max","nodeType":"MemberAccess","src":"983:16:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"body":{"id":5333,"nodeType":"Block","src":"1279:461:31","statements":[{"expression":{"id":5302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":5293,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5288,"src":"1285:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5295,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"1285:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":5297,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5288,"src":"1313:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5298,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"1313:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5299,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5288,"src":"1332:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"1332:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5296,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"1302:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5301,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1302:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"1285:80:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5303,"nodeType":"ExpressionStatement","src":"1285:80:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5308,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5305,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5288,"src":"1379:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5306,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"1379:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"37","id":5307,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1403:1:31","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1379:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420612060626f6f6c602076616c75652066726f6d206120605769746e65742e43424f52602077697468206d616a6f725479706520213d2037","id":5309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1406:89:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567","typeString":"literal_string \"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\""},"value":"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567","typeString":"literal_string \"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\""}],"id":5304,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1371:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5310,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1371:125:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5311,"nodeType":"ExpressionStatement","src":"1371:125:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5315,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5312,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5288,"src":"1506:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5313,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"1506:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3230","id":5314,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1524:2:31","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},"src":"1506:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5322,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5319,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5288,"src":"1565:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5320,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"1565:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3231","id":5321,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1583:2:31","typeDescriptions":{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},"value":"21"},"src":"1565:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5330,"nodeType":"Block","src":"1619:117:31","statements":[{"expression":{"arguments":[{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f20726561642060626f6f6c602066726f6d206120605769746e65742e43424f52602077697468206c656e20646966666572656e74207468616e203230206f72203231","id":5327,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1634:94:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73","typeString":"literal_string \"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\""},"value":"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73","typeString":"literal_string \"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\""}],"id":5326,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"1627:6:31","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":5328,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1627:102:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5329,"nodeType":"ExpressionStatement","src":"1627:102:31"}]},"id":5331,"nodeType":"IfStatement","src":"1561:175:31","trueBody":{"id":5325,"nodeType":"Block","src":"1587:26:31","statements":[{"expression":{"hexValue":"74727565","id":5323,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1602:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":5292,"id":5324,"nodeType":"Return","src":"1595:11:31"}]}},"id":5332,"nodeType":"IfStatement","src":"1502:234:31","trueBody":{"id":5318,"nodeType":"Block","src":"1528:27:31","statements":[{"expression":{"hexValue":"66616c7365","id":5316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1543:5:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"functionReturnParameters":5292,"id":5317,"nodeType":"Return","src":"1536:12:31"}]}}]},"documentation":{"id":5285,"nodeType":"StructuredDocumentation","src":"1004:195:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `bool` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as a `bool` value."},"functionSelector":"9eee60ca","id":5334,"implemented":true,"kind":"function","modifiers":[],"name":"decodeBool","nameLocation":"1211:10:31","nodeType":"FunctionDefinition","parameters":{"id":5289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5288,"mutability":"mutable","name":"_cborValue","nameLocation":"1241:10:31","nodeType":"VariableDeclaration","scope":5334,"src":"1222:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5287,"nodeType":"UserDefinedTypeName","pathNode":{"id":5286,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"1222:11:31"},"referencedDeclaration":4356,"src":"1222:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"1221:31:31"},"returnParameters":{"id":5292,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5291,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5334,"src":"1273:4:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":5290,"name":"bool","nodeType":"ElementaryTypeName","src":"1273:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1272:6:31"},"scope":6386,"src":"1202:538:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":5434,"nodeType":"Block","src":"2033:823:31","statements":[{"expression":{"id":5352,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":5343,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2039:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5345,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"2039:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":5347,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2067:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5348,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"2067:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5349,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2086:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"2086:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5346,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"2056:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5351,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2056:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"2039:80:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5353,"nodeType":"ExpressionStatement","src":"2039:80:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5357,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5354,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2129:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5355,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"2129:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":5356,"name":"_UINT32_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5277,"src":"2147:11:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"2129:29:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5432,"nodeType":"Block","src":"2784:68:31","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":5427,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2829:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5428,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"2829:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5426,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2822:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":5425,"name":"uint32","nodeType":"ElementaryTypeName","src":"2822:6:31","typeDescriptions":{}}},"id":5429,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2822:22:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"expression":{"expression":{"id":5422,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2799:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5423,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"2799:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5424,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"read","nodeType":"MemberAccess","referencedDeclaration":4708,"src":"2799:22:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint32_$returns$_t_bytes_memory_ptr_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory,uint32) pure returns (bytes memory)"}},"id":5430,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2799:46:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":5342,"id":5431,"nodeType":"Return","src":"2792:53:31"}]},"id":5433,"nodeType":"IfStatement","src":"2125:727:31","trueBody":{"id":5421,"nodeType":"Block","src":"2160:618:31","statements":[{"assignments":[5359],"declarations":[{"constant":false,"id":5359,"mutability":"mutable","name":"bytesData","nameLocation":"2181:9:31","nodeType":"VariableDeclaration","scope":5421,"src":"2168:22:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":5358,"name":"bytes","nodeType":"ElementaryTypeName","src":"2168:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":5360,"nodeType":"VariableDeclarationStatement","src":"2168:22:31"},{"assignments":[5362],"declarations":[{"constant":false,"id":5362,"mutability":"mutable","name":"itemLength","nameLocation":"2293:10:31","nodeType":"VariableDeclaration","scope":5421,"src":"2286:17:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"},"typeName":{"id":5361,"name":"uint32","nodeType":"ElementaryTypeName","src":"2286:6:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"visibility":"internal"}],"id":5372,"initialValue":{"arguments":[{"arguments":[{"expression":{"id":5366,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2340:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5367,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"2340:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5368,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2359:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5369,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"2359:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5365,"name":"readIndefiniteStringLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6237,"src":"2313:26:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5370,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2313:67:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5364,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2306:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":5363,"name":"uint32","nodeType":"ElementaryTypeName","src":"2306:6:31","typeDescriptions":{}}},"id":5371,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2306:75:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"VariableDeclarationStatement","src":"2286:95:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5375,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5373,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5362,"src":"2393:10:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5374,"name":"_UINT32_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5277,"src":"2406:11:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"2393:24:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5418,"nodeType":"IfStatement","src":"2389:359:31","trueBody":{"id":5417,"nodeType":"Block","src":"2419:329:31","statements":[{"expression":{"id":5386,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5376,"name":"bytesData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5359,"src":"2429:9:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5379,"name":"bytesData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5359,"src":"2458:9:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"id":5383,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5362,"src":"2492:10:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"expression":{"expression":{"id":5380,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2469:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5381,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"2469:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"read","nodeType":"MemberAccess","referencedDeclaration":4708,"src":"2469:22:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint32_$returns$_t_bytes_memory_ptr_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory,uint32) pure returns (bytes memory)"}},"id":5384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2469:34:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":5377,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2441:3:31","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":5378,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"2441:16:31","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":5385,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2441:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"2429:75:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5387,"nodeType":"ExpressionStatement","src":"2429:75:31"},{"expression":{"id":5398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5388,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5362,"src":"2514:10:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"expression":{"id":5392,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2561:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5393,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"2561:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5394,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2580:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5395,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"2580:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5391,"name":"readIndefiniteStringLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6237,"src":"2534:26:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2534:67:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5390,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2527:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint32_$","typeString":"type(uint32)"},"typeName":{"id":5389,"name":"uint32","nodeType":"ElementaryTypeName","src":"2527:6:31","typeDescriptions":{}}},"id":5397,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2527:75:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"2514:88:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":5399,"nodeType":"ExpressionStatement","src":"2514:88:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint32","typeString":"uint32"},"id":5402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5400,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5362,"src":"2616:10:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5401,"name":"_UINT32_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5277,"src":"2629:11:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"src":"2616:24:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5416,"nodeType":"IfStatement","src":"2612:128:31","trueBody":{"id":5415,"nodeType":"Block","src":"2642:98:31","statements":[{"expression":{"id":5413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5403,"name":"bytesData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5359,"src":"2654:9:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5406,"name":"bytesData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5359,"src":"2683:9:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"id":5410,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5362,"src":"2717:10:31","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint32","typeString":"uint32"}],"expression":{"expression":{"id":5407,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5338,"src":"2694:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5408,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"2694:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5409,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"read","nodeType":"MemberAccess","referencedDeclaration":4708,"src":"2694:22:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint32_$returns$_t_bytes_memory_ptr_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory,uint32) pure returns (bytes memory)"}},"id":5411,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2694:34:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":5404,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2666:3:31","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":5405,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"2666:16:31","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":5412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2666:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"2654:75:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5414,"nodeType":"ExpressionStatement","src":"2654:75:31"}]}}]}},{"expression":{"id":5419,"name":"bytesData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5359,"src":"2762:9:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":5342,"id":5420,"nodeType":"Return","src":"2755:16:31"}]}}]},"documentation":{"id":5335,"nodeType":"StructuredDocumentation","src":"1744:200:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as a `bytes` value.   "},"functionSelector":"bb6ef6cf","id":5435,"implemented":true,"kind":"function","modifiers":[],"name":"decodeBytes","nameLocation":"1956:11:31","nodeType":"FunctionDefinition","parameters":{"id":5339,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5338,"mutability":"mutable","name":"_cborValue","nameLocation":"1987:10:31","nodeType":"VariableDeclaration","scope":5435,"src":"1968:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5337,"nodeType":"UserDefinedTypeName","pathNode":{"id":5336,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"1968:11:31"},"referencedDeclaration":4356,"src":"1968:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"1967:31:31"},"returnParameters":{"id":5342,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5341,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5435,"src":"2019:12:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":5340,"name":"bytes","nodeType":"ElementaryTypeName","src":"2019:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2018:14:31"},"scope":6386,"src":"1947:909:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":5489,"nodeType":"Block","src":"3165:209:31","statements":[{"assignments":[5445],"declarations":[{"constant":false,"id":5445,"mutability":"mutable","name":"_bb","nameLocation":"3184:3:31","nodeType":"VariableDeclaration","scope":5489,"src":"3171:16:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":5444,"name":"bytes","nodeType":"ElementaryTypeName","src":"3171:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":5449,"initialValue":{"arguments":[{"id":5447,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5439,"src":"3202:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":5446,"name":"decodeBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5435,"src":"3190:11:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_bytes_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (bytes memory)"}},"id":5448,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3190:23:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"3171:42:31"},{"assignments":[5451],"declarations":[{"constant":false,"id":5451,"mutability":"mutable","name":"_len","nameLocation":"3224:4:31","nodeType":"VariableDeclaration","scope":5489,"src":"3219:9:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5450,"name":"uint","nodeType":"ElementaryTypeName","src":"3219:4:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5460,"initialValue":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5452,"name":"_bb","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5445,"src":"3231:3:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5453,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"3231:10:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"3332","id":5454,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3244:2:31","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"src":"3231:15:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"expression":{"id":5457,"name":"_bb","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5445,"src":"3254:3:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5458,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"3254:10:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":5459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"3231:33:31","trueExpression":{"hexValue":"3332","id":5456,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3249:2:31","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3219:45:31"},{"body":{"id":5487,"nodeType":"Block","src":"3306:64:31","statements":[{"expression":{"id":5485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5471,"name":"_bytes32","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5442,"src":"3316:8:31","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"|=","rightHandSide":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":5484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":5478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":5474,"name":"_bb","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5445,"src":"3336:3:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5476,"indexExpression":{"id":5475,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5462,"src":"3340:2:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3336:7:31","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30786666","id":5477,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3346:4:31","typeDescriptions":{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"},"value":"0xff"},"src":"3336:14:31","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":5473,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3328:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":5472,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3328:7:31","typeDescriptions":{}}},"id":5479,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3328:23:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5480,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5462,"src":"3356:2:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"38","id":5481,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3361:1:31","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},"src":"3356:6:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":5483,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"3355:8:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3328:35:31","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"3316:47:31","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":5486,"nodeType":"ExpressionStatement","src":"3316:47:31"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":5467,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5465,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5462,"src":"3288:2:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5466,"name":"_len","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5451,"src":"3293:4:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3288:9:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5488,"initializationExpression":{"assignments":[5462],"declarations":[{"constant":false,"id":5462,"mutability":"mutable","name":"_i","nameLocation":"3280:2:31","nodeType":"VariableDeclaration","scope":5488,"src":"3275:7:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":5461,"name":"uint","nodeType":"ElementaryTypeName","src":"3275:4:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":5464,"initialValue":{"hexValue":"30","id":5463,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3285:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"3275:11:31"},"loopExpression":{"expression":{"id":5469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3299:5:31","subExpression":{"id":5468,"name":"_i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5462,"src":"3299:2:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":5470,"nodeType":"ExpressionStatement","src":"3299:5:31"},"nodeType":"ForStatement","src":"3270:100:31"}]},"documentation":{"id":5436,"nodeType":"StructuredDocumentation","src":"2860:210:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return _bytes32 The value represented by the input, as a `bytes32` value."},"functionSelector":"08c05c33","id":5490,"implemented":true,"kind":"function","modifiers":[],"name":"decodeBytes32","nameLocation":"3082:13:31","nodeType":"FunctionDefinition","parameters":{"id":5440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5439,"mutability":"mutable","name":"_cborValue","nameLocation":"3115:10:31","nodeType":"VariableDeclaration","scope":5490,"src":"3096:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5438,"nodeType":"UserDefinedTypeName","pathNode":{"id":5437,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"3096:11:31"},"referencedDeclaration":4356,"src":"3096:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"3095:31:31"},"returnParameters":{"id":5443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5442,"mutability":"mutable","name":"_bytes32","nameLocation":"3155:8:31","nodeType":"VariableDeclaration","scope":5490,"src":"3147:16:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":5441,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3147:7:31","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"3146:18:31"},"scope":6386,"src":"3073:301:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":5520,"nodeType":"Block","src":"4013:325:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5503,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5500,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5494,"src":"4027:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5501,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"4027:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"37","id":5502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4051:1:31","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"4027:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f2072656164206120606669786564602076616c75652066726f6d2061206057542e43424f52602077697468206d616a6f725479706520213d2037","id":5504,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4054:86:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e","typeString":"literal_string \"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\""},"value":"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e","typeString":"literal_string \"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\""}],"id":5499,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4019:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4019:122:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5506,"nodeType":"ExpressionStatement","src":"4019:122:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5511,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5508,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5494,"src":"4155:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5509,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"4155:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3235","id":5510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4191:2:31","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},"src":"4155:38:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f2072656164206066697865643136602066726f6d2061206057542e43424f52602077697468206164646974696f6e616c496e666f726d6174696f6e20213d203235","id":5512,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4195:93:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad","typeString":"literal_string \"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\""},"value":"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad","typeString":"literal_string \"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\""}],"id":5507,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4147:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5513,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4147:142:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5514,"nodeType":"ExpressionStatement","src":"4147:142:31"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":5515,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5494,"src":"4302:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5516,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"4302:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":5517,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readFloat16","nodeType":"MemberAccess","referencedDeclaration":5207,"src":"4302:29:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_int32_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (int32)"}},"id":5518,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4302:31:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"functionReturnParameters":5498,"id":5519,"nodeType":"Return","src":"4295:38:31"}]},"documentation":{"id":5491,"nodeType":"StructuredDocumentation","src":"3378:551:31","text":"@notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\n @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\n by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\n use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `int128` value."},"functionSelector":"8138799a","id":5521,"implemented":true,"kind":"function","modifiers":[],"name":"decodeFixed16","nameLocation":"3941:13:31","nodeType":"FunctionDefinition","parameters":{"id":5495,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5494,"mutability":"mutable","name":"_cborValue","nameLocation":"3974:10:31","nodeType":"VariableDeclaration","scope":5521,"src":"3955:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5493,"nodeType":"UserDefinedTypeName","pathNode":{"id":5492,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"3955:11:31"},"referencedDeclaration":4356,"src":"3955:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"3954:31:31"},"returnParameters":{"id":5498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5497,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5521,"src":"4006:5:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":5496,"name":"int32","nodeType":"ElementaryTypeName","src":"4006:5:31","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"4005:7:31"},"scope":6386,"src":"3932:406:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":5598,"nodeType":"Block","src":"4731:544:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5535,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5532,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5525,"src":"4745:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5533,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"4745:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"34","id":5534,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4769:1:31","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"4745:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f20726561642060696e743132385b5d602066726f6d206120605769746e65742e43424f52602077697468206d616a6f725479706520213d2034","id":5536,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4772:85:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf","typeString":"literal_string \"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\""},"value":"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf","typeString":"literal_string \"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\""}],"id":5531,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4737:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4737:121:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5538,"nodeType":"ExpressionStatement","src":"4737:121:31"},{"assignments":[5540],"declarations":[{"constant":false,"id":5540,"mutability":"mutable","name":"length","nameLocation":"4872:6:31","nodeType":"VariableDeclaration","scope":5598,"src":"4865:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5539,"name":"uint64","nodeType":"ElementaryTypeName","src":"4865:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5547,"initialValue":{"arguments":[{"expression":{"id":5542,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5525,"src":"4892:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5543,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"4892:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5544,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5525,"src":"4911:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5545,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"4911:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5541,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"4881:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5546,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4881:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"4865:79:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5551,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5549,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5540,"src":"4958:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5550,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"4967:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"4958:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e6774682043424f522061727261797320617265206e6f7420737570706f72746564","id":5552,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4980:67:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""},"value":"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""}],"id":5548,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4950:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4950:98:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5554,"nodeType":"ExpressionStatement","src":"4950:98:31"},{"assignments":[5559],"declarations":[{"constant":false,"id":5559,"mutability":"mutable","name":"array","nameLocation":"5070:5:31","nodeType":"VariableDeclaration","scope":5598,"src":"5055:20:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[]"},"typeName":{"baseType":{"id":5557,"name":"int32","nodeType":"ElementaryTypeName","src":"5055:5:31","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5558,"nodeType":"ArrayTypeName","src":"5055:7:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}},"visibility":"internal"}],"id":5565,"initialValue":{"arguments":[{"id":5563,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5540,"src":"5090:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5562,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"5078:11:31","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_int32_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (int32[] memory)"},"typeName":{"baseType":{"id":5560,"name":"int32","nodeType":"ElementaryTypeName","src":"5082:5:31","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5561,"nodeType":"ArrayTypeName","src":"5082:7:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}}},"id":5564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5078:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5055:42:31"},{"body":{"id":5594,"nodeType":"Block","src":"5139:113:31","statements":[{"assignments":[5580],"declarations":[{"constant":false,"id":5580,"mutability":"mutable","name":"item","nameLocation":"5166:4:31","nodeType":"VariableDeclaration","scope":5594,"src":"5147:23:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5579,"nodeType":"UserDefinedTypeName","pathNode":{"id":5578,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"5147:11:31"},"referencedDeclaration":4356,"src":"5147:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"id":5585,"initialValue":{"arguments":[{"expression":{"id":5582,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5525,"src":"5189:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"5189:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}],"id":5581,"name":"valueFromBuffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6121,"src":"5173:15:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (struct Witnet.CBOR memory)"}},"id":5584,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5173:34:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"nodeType":"VariableDeclarationStatement","src":"5147:60:31"},{"expression":{"id":5592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":5586,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5559,"src":"5215:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[] memory"}},"id":5588,"indexExpression":{"id":5587,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5567,"src":"5221:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5215:8:31","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5590,"name":"item","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5580,"src":"5240:4:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":5589,"name":"decodeFixed16","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5521,"src":"5226:13:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_int32_$","typeString":"function (struct Witnet.CBOR memory) pure returns (int32)"}},"id":5591,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5226:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"src":"5215:30:31","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5593,"nodeType":"ExpressionStatement","src":"5215:30:31"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5570,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5567,"src":"5122:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5571,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5540,"src":"5126:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"5122:10:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5595,"initializationExpression":{"assignments":[5567],"declarations":[{"constant":false,"id":5567,"mutability":"mutable","name":"i","nameLocation":"5115:1:31","nodeType":"VariableDeclaration","scope":5595,"src":"5108:8:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5566,"name":"uint64","nodeType":"ElementaryTypeName","src":"5108:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5569,"initialValue":{"hexValue":"30","id":5568,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5119:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5108:12:31"},"loopExpression":{"expression":{"id":5574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5134:3:31","subExpression":{"id":5573,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5567,"src":"5134:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5575,"nodeType":"ExpressionStatement","src":"5134:3:31"},"nodeType":"ForStatement","src":"5103:149:31"},{"expression":{"id":5596,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5559,"src":"5265:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[] memory"}},"functionReturnParameters":5530,"id":5597,"nodeType":"Return","src":"5258:12:31"}]},"documentation":{"id":5522,"nodeType":"StructuredDocumentation","src":"4342:289:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\n as explained in `decodeFixed16`.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `int128[]` value."},"functionSelector":"531f4ba7","id":5599,"implemented":true,"kind":"function","modifiers":[],"name":"decodeFixed16Array","nameLocation":"4643:18:31","nodeType":"FunctionDefinition","parameters":{"id":5526,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5525,"mutability":"mutable","name":"_cborValue","nameLocation":"4681:10:31","nodeType":"VariableDeclaration","scope":5599,"src":"4662:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5524,"nodeType":"UserDefinedTypeName","pathNode":{"id":5523,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"4662:11:31"},"referencedDeclaration":4356,"src":"4662:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"4661:31:31"},"returnParameters":{"id":5530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5529,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5599,"src":"4715:14:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[]"},"typeName":{"baseType":{"id":5527,"name":"int32","nodeType":"ElementaryTypeName","src":"4715:5:31","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":5528,"nodeType":"ArrayTypeName","src":"4715:7:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}},"visibility":"internal"}],"src":"4714:16:31"},"scope":6386,"src":"4634:641:31","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":5657,"nodeType":"Block","src":"5563:566:31","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5611,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5608,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5603,"src":"5573:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5609,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"5573:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":5610,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5597:1:31","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5573:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5636,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5603,"src":"5755:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5637,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"5755:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":5638,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5779:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5755:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5651,"nodeType":"IfStatement","src":"5751:271:31","trueBody":{"id":5650,"nodeType":"Block","src":"5782:240:31","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"id":5645,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5603,"src":"6002:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":5644,"name":"decodeUint64","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5925,"src":"5989:12:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_uint64_$","typeString":"function (struct Witnet.CBOR memory) pure returns (uint64)"}},"id":5646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5989:24:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5643,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5981:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint128_$","typeString":"type(uint128)"},"typeName":{"id":5642,"name":"uint128","nodeType":"ElementaryTypeName","src":"5981:7:31","typeDescriptions":{}}},"id":5647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5981:33:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"}],"id":5641,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5974:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_int128_$","typeString":"type(int128)"},"typeName":{"id":5640,"name":"int128","nodeType":"ElementaryTypeName","src":"5974:6:31","typeDescriptions":{}}},"id":5648,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5974:41:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"functionReturnParameters":5607,"id":5649,"nodeType":"Return","src":"5967:48:31"}]}},"id":5652,"nodeType":"IfStatement","src":"5569:453:31","trueBody":{"id":5635,"nodeType":"Block","src":"5600:145:31","statements":[{"assignments":[5613],"declarations":[{"constant":false,"id":5613,"mutability":"mutable","name":"length","nameLocation":"5615:6:31","nodeType":"VariableDeclaration","scope":5635,"src":"5608:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5612,"name":"uint64","nodeType":"ElementaryTypeName","src":"5608:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5620,"initialValue":{"arguments":[{"expression":{"id":5615,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5603,"src":"5635:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5616,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"5635:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5617,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5603,"src":"5654:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5618,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"5654:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5614,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"5624:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5624:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"5608:79:31"},{"expression":{"commonType":{"typeIdentifier":"t_int128","typeString":"int128"},"id":5633,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":5624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"-","prefix":true,"src":"5709:2:31","subExpression":{"hexValue":"31","id":5623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5710:1:31","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"typeDescriptions":{"typeIdentifier":"t_rational_minus_1_by_1","typeString":"int_const -1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_minus_1_by_1","typeString":"int_const -1"}],"id":5622,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5702:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_int128_$","typeString":"type(int128)"},"typeName":{"id":5621,"name":"int128","nodeType":"ElementaryTypeName","src":"5702:6:31","typeDescriptions":{}}},"id":5625,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5702:10:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"arguments":[{"arguments":[{"id":5630,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5613,"src":"5730:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5629,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5722:7:31","typeDescriptions":{"typeIdentifier":"t_type$_t_uint128_$","typeString":"type(uint128)"},"typeName":{"id":5628,"name":"uint128","nodeType":"ElementaryTypeName","src":"5722:7:31","typeDescriptions":{}}},"id":5631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5722:15:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint128","typeString":"uint128"}],"id":5627,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5715:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_int128_$","typeString":"type(int128)"},"typeName":{"id":5626,"name":"int128","nodeType":"ElementaryTypeName","src":"5715:6:31","typeDescriptions":{}}},"id":5632,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5715:23:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"src":"5702:36:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"functionReturnParameters":5607,"id":5634,"nodeType":"Return","src":"5695:43:31"}]}},{"expression":{"arguments":[{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f20726561642060696e74313238602066726f6d206120605769746e65742e43424f52602077697468206d616a6f7254797065206e6f742030206f722031","id":5654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6034:89:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae","typeString":"literal_string \"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\""},"value":"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae","typeString":"literal_string \"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\""}],"id":5653,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"6027:6:31","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":5655,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6027:97:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5656,"nodeType":"ExpressionStatement","src":"6027:97:31"}]},"documentation":{"id":5600,"nodeType":"StructuredDocumentation","src":"5279:200:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `int128` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `int128` value."},"functionSelector":"94863ea4","id":5658,"implemented":true,"kind":"function","modifiers":[],"name":"decodeInt128","nameLocation":"5491:12:31","nodeType":"FunctionDefinition","parameters":{"id":5604,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5603,"mutability":"mutable","name":"_cborValue","nameLocation":"5523:10:31","nodeType":"VariableDeclaration","scope":5658,"src":"5504:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5602,"nodeType":"UserDefinedTypeName","pathNode":{"id":5601,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"5504:11:31"},"referencedDeclaration":4356,"src":"5504:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"5503:31:31"},"returnParameters":{"id":5607,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5606,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5658,"src":"5555:6:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"},"typeName":{"id":5605,"name":"int128","nodeType":"ElementaryTypeName","src":"5555:6:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"visibility":"internal"}],"src":"5554:8:31"},"scope":6386,"src":"5482:647:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":5735,"nodeType":"Block","src":"6437:545:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5669,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5662,"src":"6451:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"6451:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"34","id":5671,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6475:1:31","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"6451:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f20726561642060696e743132385b5d602066726f6d206120605769746e65742e43424f52602077697468206d616a6f725479706520213d2034","id":5673,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6478:85:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf","typeString":"literal_string \"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\""},"value":"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf","typeString":"literal_string \"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\""}],"id":5668,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6443:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5674,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6443:121:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5675,"nodeType":"ExpressionStatement","src":"6443:121:31"},{"assignments":[5677],"declarations":[{"constant":false,"id":5677,"mutability":"mutable","name":"length","nameLocation":"6578:6:31","nodeType":"VariableDeclaration","scope":5735,"src":"6571:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5676,"name":"uint64","nodeType":"ElementaryTypeName","src":"6571:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5684,"initialValue":{"arguments":[{"expression":{"id":5679,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5662,"src":"6598:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5680,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"6598:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5681,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5662,"src":"6617:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5682,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"6617:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5678,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"6587:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5683,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6587:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"6571:79:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5686,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5677,"src":"6664:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5687,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"6673:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"6664:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e6774682043424f522061727261797320617265206e6f7420737570706f72746564","id":5689,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6686:67:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""},"value":"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""}],"id":5685,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6656:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5690,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6656:98:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5691,"nodeType":"ExpressionStatement","src":"6656:98:31"},{"assignments":[5696],"declarations":[{"constant":false,"id":5696,"mutability":"mutable","name":"array","nameLocation":"6777:5:31","nodeType":"VariableDeclaration","scope":5735,"src":"6761:21:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[]"},"typeName":{"baseType":{"id":5694,"name":"int128","nodeType":"ElementaryTypeName","src":"6761:6:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":5695,"nodeType":"ArrayTypeName","src":"6761:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}},"visibility":"internal"}],"id":5702,"initialValue":{"arguments":[{"id":5700,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5677,"src":"6798:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5699,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"6785:12:31","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_int128_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (int128[] memory)"},"typeName":{"baseType":{"id":5697,"name":"int128","nodeType":"ElementaryTypeName","src":"6789:6:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":5698,"nodeType":"ArrayTypeName","src":"6789:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}}},"id":5701,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6785:20:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[] memory"}},"nodeType":"VariableDeclarationStatement","src":"6761:44:31"},{"body":{"id":5731,"nodeType":"Block","src":"6847:112:31","statements":[{"assignments":[5717],"declarations":[{"constant":false,"id":5717,"mutability":"mutable","name":"item","nameLocation":"6874:4:31","nodeType":"VariableDeclaration","scope":5731,"src":"6855:23:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5716,"nodeType":"UserDefinedTypeName","pathNode":{"id":5715,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"6855:11:31"},"referencedDeclaration":4356,"src":"6855:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"id":5722,"initialValue":{"arguments":[{"expression":{"id":5719,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5662,"src":"6897:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5720,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"6897:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}],"id":5718,"name":"valueFromBuffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6121,"src":"6881:15:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (struct Witnet.CBOR memory)"}},"id":5721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6881:34:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"nodeType":"VariableDeclarationStatement","src":"6855:60:31"},{"expression":{"id":5729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":5723,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5696,"src":"6923:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[] memory"}},"id":5725,"indexExpression":{"id":5724,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5704,"src":"6929:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"6923:8:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5727,"name":"item","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5717,"src":"6947:4:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":5726,"name":"decodeInt128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5658,"src":"6934:12:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_int128_$","typeString":"function (struct Witnet.CBOR memory) pure returns (int128)"}},"id":5728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6934:18:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"src":"6923:29:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":5730,"nodeType":"ExpressionStatement","src":"6923:29:31"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5707,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5704,"src":"6830:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5708,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5677,"src":"6834:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"6830:10:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5732,"initializationExpression":{"assignments":[5704],"declarations":[{"constant":false,"id":5704,"mutability":"mutable","name":"i","nameLocation":"6823:1:31","nodeType":"VariableDeclaration","scope":5732,"src":"6816:8:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5703,"name":"uint64","nodeType":"ElementaryTypeName","src":"6816:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5706,"initialValue":{"hexValue":"30","id":5705,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6827:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"6816:12:31"},"loopExpression":{"expression":{"id":5711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"6842:3:31","subExpression":{"id":5710,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5704,"src":"6842:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5712,"nodeType":"ExpressionStatement","src":"6842:3:31"},"nodeType":"ForStatement","src":"6811:148:31"},{"expression":{"id":5733,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5696,"src":"6972:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[] memory"}},"functionReturnParameters":5667,"id":5734,"nodeType":"Return","src":"6965:12:31"}]},"documentation":{"id":5659,"nodeType":"StructuredDocumentation","src":"6133:204:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `int128[]` value."},"functionSelector":"3380d816","id":5736,"implemented":true,"kind":"function","modifiers":[],"name":"decodeInt128Array","nameLocation":"6349:17:31","nodeType":"FunctionDefinition","parameters":{"id":5663,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5662,"mutability":"mutable","name":"_cborValue","nameLocation":"6386:10:31","nodeType":"VariableDeclaration","scope":5736,"src":"6367:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5661,"nodeType":"UserDefinedTypeName","pathNode":{"id":5660,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"6367:11:31"},"referencedDeclaration":4356,"src":"6367:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"6366:31:31"},"returnParameters":{"id":5667,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5666,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5736,"src":"6420:15:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[]"},"typeName":{"baseType":{"id":5664,"name":"int128","nodeType":"ElementaryTypeName","src":"6420:6:31","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":5665,"nodeType":"ArrayTypeName","src":"6420:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}},"visibility":"internal"}],"src":"6419:17:31"},"scope":6386,"src":"6340:642:31","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":5821,"nodeType":"Block","src":"7276:605:31","statements":[{"expression":{"id":5754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":5745,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7282:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5747,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"7282:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":5749,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7310:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5750,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"7310:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5751,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7329:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"7329:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5748,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"7299:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7299:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"7282:80:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5755,"nodeType":"ExpressionStatement","src":"7282:80:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5756,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7372:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5757,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"7372:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":5758,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"7390:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"7372:29:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5819,"nodeType":"Block","src":"7804:73:31","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":5812,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7835:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5813,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"7835:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5814,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7854:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"len","nodeType":"MemberAccess","referencedDeclaration":4353,"src":"7854:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5811,"name":"readText","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6385,"src":"7826:8:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint64_$returns$_t_bytes_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory,uint64) pure returns (bytes memory)"}},"id":5816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7826:43:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":5810,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7819:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":5809,"name":"string","nodeType":"ElementaryTypeName","src":"7819:6:31","typeDescriptions":{}}},"id":5817,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7819:51:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":5744,"id":5818,"nodeType":"Return","src":"7812:58:31"}]},"id":5820,"nodeType":"IfStatement","src":"7368:509:31","trueBody":{"id":5808,"nodeType":"Block","src":"7403:395:31","statements":[{"assignments":[5761],"declarations":[{"constant":false,"id":5761,"mutability":"mutable","name":"textData","nameLocation":"7424:8:31","nodeType":"VariableDeclaration","scope":5808,"src":"7411:21:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":5760,"name":"bytes","nodeType":"ElementaryTypeName","src":"7411:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":5762,"nodeType":"VariableDeclarationStatement","src":"7411:21:31"},{"assignments":[5764],"declarations":[{"constant":false,"id":5764,"mutability":"mutable","name":"done","nameLocation":"7445:4:31","nodeType":"VariableDeclaration","scope":5808,"src":"7440:9:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":5763,"name":"bool","nodeType":"ElementaryTypeName","src":"7440:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":5765,"nodeType":"VariableDeclarationStatement","src":"7440:9:31"},{"body":{"id":5801,"nodeType":"Block","src":"7471:290:31","statements":[{"assignments":[5769],"declarations":[{"constant":false,"id":5769,"mutability":"mutable","name":"itemLength","nameLocation":"7488:10:31","nodeType":"VariableDeclaration","scope":5801,"src":"7481:17:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5768,"name":"uint64","nodeType":"ElementaryTypeName","src":"7481:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5776,"initialValue":{"arguments":[{"expression":{"id":5771,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7528:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"7528:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5773,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7547:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5774,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"7547:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5770,"name":"readIndefiniteStringLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6237,"src":"7501:26:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5775,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7501:67:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"7481:87:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5779,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5777,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5769,"src":"7582:10:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5778,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"7595:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"7582:24:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":5799,"nodeType":"Block","src":"7719:34:31","statements":[{"expression":{"id":5797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5795,"name":"done","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5764,"src":"7731:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":5796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"7738:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"7731:11:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5798,"nodeType":"ExpressionStatement","src":"7731:11:31"}]},"id":5800,"nodeType":"IfStatement","src":"7578:175:31","trueBody":{"id":5794,"nodeType":"Block","src":"7608:105:31","statements":[{"expression":{"id":5792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":5780,"name":"textData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5761,"src":"7620:8:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5783,"name":"textData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5761,"src":"7648:8:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"expression":{"id":5785,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5740,"src":"7667:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5786,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"7667:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5787,"name":"itemLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5769,"src":"7686:10:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"34","id":5788,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7699:1:31","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"7686:14:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5784,"name":"readText","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6385,"src":"7658:8:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint64_$returns$_t_bytes_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory,uint64) pure returns (bytes memory)"}},"id":5790,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7658:43:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":5781,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7631:3:31","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":5782,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"7631:16:31","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":5791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7631:71:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"7620:82:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":5793,"nodeType":"ExpressionStatement","src":"7620:82:31"}]}}]},"condition":{"id":5767,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"7464:5:31","subExpression":{"id":5766,"name":"done","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5764,"src":"7465:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5802,"nodeType":"WhileStatement","src":"7457:304:31"},{"expression":{"arguments":[{"id":5805,"name":"textData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5761,"src":"7782:8:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":5804,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7775:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":5803,"name":"string","nodeType":"ElementaryTypeName","src":"7775:6:31","typeDescriptions":{}}},"id":5806,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7775:16:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":5744,"id":5807,"nodeType":"Return","src":"7768:23:31"}]}}]},"documentation":{"id":5737,"nodeType":"StructuredDocumentation","src":"6986:199:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `string` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as a `string` value."},"functionSelector":"e67c5bd1","id":5822,"implemented":true,"kind":"function","modifiers":[],"name":"decodeString","nameLocation":"7197:12:31","nodeType":"FunctionDefinition","parameters":{"id":5741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5740,"mutability":"mutable","name":"_cborValue","nameLocation":"7229:10:31","nodeType":"VariableDeclaration","scope":5822,"src":"7210:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5739,"nodeType":"UserDefinedTypeName","pathNode":{"id":5738,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"7210:11:31"},"referencedDeclaration":4356,"src":"7210:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"7209:31:31"},"returnParameters":{"id":5744,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5743,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5822,"src":"7261:13:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":5742,"name":"string","nodeType":"ElementaryTypeName","src":"7261:6:31","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"7260:15:31"},"scope":6386,"src":"7188:693:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":5899,"nodeType":"Block","src":"8189:545:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5833,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5826,"src":"8203:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5834,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"8203:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"34","id":5835,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8227:1:31","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"8203:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f20726561642060737472696e675b5d602066726f6d206120605769746e65742e43424f52602077697468206d616a6f725479706520213d2034","id":5837,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8230:85:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c","typeString":"literal_string \"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\""},"value":"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c","typeString":"literal_string \"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\""}],"id":5832,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"8195:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8195:121:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5839,"nodeType":"ExpressionStatement","src":"8195:121:31"},{"assignments":[5841],"declarations":[{"constant":false,"id":5841,"mutability":"mutable","name":"length","nameLocation":"8330:6:31","nodeType":"VariableDeclaration","scope":5899,"src":"8323:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5840,"name":"uint64","nodeType":"ElementaryTypeName","src":"8323:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5848,"initialValue":{"arguments":[{"expression":{"id":5843,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5826,"src":"8350:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5844,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"8350:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5845,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5826,"src":"8369:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"8369:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5842,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"8339:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8339:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"8323:79:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5850,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5841,"src":"8416:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5851,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"8425:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"8416:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e6774682043424f522061727261797320617265206e6f7420737570706f72746564","id":5853,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8438:67:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""},"value":"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""}],"id":5849,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"8408:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5854,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8408:98:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5855,"nodeType":"ExpressionStatement","src":"8408:98:31"},{"assignments":[5860],"declarations":[{"constant":false,"id":5860,"mutability":"mutable","name":"array","nameLocation":"8529:5:31","nodeType":"VariableDeclaration","scope":5899,"src":"8513:21:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":5858,"name":"string","nodeType":"ElementaryTypeName","src":"8513:6:31","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":5859,"nodeType":"ArrayTypeName","src":"8513:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"id":5866,"initialValue":{"arguments":[{"id":5864,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5841,"src":"8550:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5863,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"8537:12:31","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (string memory[] memory)"},"typeName":{"baseType":{"id":5861,"name":"string","nodeType":"ElementaryTypeName","src":"8541:6:31","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":5862,"nodeType":"ArrayTypeName","src":"8541:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}}},"id":5865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8537:20:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"8513:44:31"},{"body":{"id":5895,"nodeType":"Block","src":"8599:112:31","statements":[{"assignments":[5881],"declarations":[{"constant":false,"id":5881,"mutability":"mutable","name":"item","nameLocation":"8626:4:31","nodeType":"VariableDeclaration","scope":5895,"src":"8607:23:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5880,"nodeType":"UserDefinedTypeName","pathNode":{"id":5879,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"8607:11:31"},"referencedDeclaration":4356,"src":"8607:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"id":5886,"initialValue":{"arguments":[{"expression":{"id":5883,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5826,"src":"8649:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5884,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"8649:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}],"id":5882,"name":"valueFromBuffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6121,"src":"8633:15:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (struct Witnet.CBOR memory)"}},"id":5885,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8633:34:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"nodeType":"VariableDeclarationStatement","src":"8607:60:31"},{"expression":{"id":5893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":5887,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5860,"src":"8675:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"id":5889,"indexExpression":{"id":5888,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5868,"src":"8681:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8675:8:31","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5891,"name":"item","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5881,"src":"8699:4:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":5890,"name":"decodeString","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5822,"src":"8686:12:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (string memory)"}},"id":5892,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8686:18:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"8675:29:31","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":5894,"nodeType":"ExpressionStatement","src":"8675:29:31"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5873,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5871,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5868,"src":"8582:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5872,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5841,"src":"8586:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"8582:10:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5896,"initializationExpression":{"assignments":[5868],"declarations":[{"constant":false,"id":5868,"mutability":"mutable","name":"i","nameLocation":"8575:1:31","nodeType":"VariableDeclaration","scope":5896,"src":"8568:8:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5867,"name":"uint64","nodeType":"ElementaryTypeName","src":"8568:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5870,"initialValue":{"hexValue":"30","id":5869,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8579:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"8568:12:31"},"loopExpression":{"expression":{"id":5875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"8594:3:31","subExpression":{"id":5874,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5868,"src":"8594:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5876,"nodeType":"ExpressionStatement","src":"8594:3:31"},"nodeType":"ForStatement","src":"8563:148:31"},{"expression":{"id":5897,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5860,"src":"8724:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"functionReturnParameters":5831,"id":5898,"nodeType":"Return","src":"8717:12:31"}]},"documentation":{"id":5823,"nodeType":"StructuredDocumentation","src":"7885:204:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `string[]` value."},"functionSelector":"c5e88ff2","id":5900,"implemented":true,"kind":"function","modifiers":[],"name":"decodeStringArray","nameLocation":"8101:17:31","nodeType":"FunctionDefinition","parameters":{"id":5827,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5826,"mutability":"mutable","name":"_cborValue","nameLocation":"8138:10:31","nodeType":"VariableDeclaration","scope":5900,"src":"8119:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5825,"nodeType":"UserDefinedTypeName","pathNode":{"id":5824,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"8119:11:31"},"referencedDeclaration":4356,"src":"8119:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"8118:31:31"},"returnParameters":{"id":5831,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5830,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5900,"src":"8172:15:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":5828,"name":"string","nodeType":"ElementaryTypeName","src":"8172:6:31","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":5829,"nodeType":"ArrayTypeName","src":"8172:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"8171:17:31"},"scope":6386,"src":"8092:642:31","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":5924,"nodeType":"Block","src":"9022:206:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5910,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5904,"src":"9036:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5911,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"9036:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":5912,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9060:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9036:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f2072656164206075696e743634602066726f6d206120605769746e65742e43424f52602077697468206d616a6f725479706520213d2030","id":5914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9063:83:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0","typeString":"literal_string \"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\""},"value":"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0","typeString":"literal_string \"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\""}],"id":5909,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9028:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9028:119:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5916,"nodeType":"ExpressionStatement","src":"9028:119:31"},{"expression":{"arguments":[{"expression":{"id":5918,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5904,"src":"9171:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"9171:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5920,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5904,"src":"9190:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5921,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"9190:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5917,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"9160:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5922,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9160:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":5908,"id":5923,"nodeType":"Return","src":"9153:70:31"}]},"documentation":{"id":5901,"nodeType":"StructuredDocumentation","src":"8738:200:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `uint64` value."},"functionSelector":"7a8acab1","id":5925,"implemented":true,"kind":"function","modifiers":[],"name":"decodeUint64","nameLocation":"8950:12:31","nodeType":"FunctionDefinition","parameters":{"id":5905,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5904,"mutability":"mutable","name":"_cborValue","nameLocation":"8982:10:31","nodeType":"VariableDeclaration","scope":5925,"src":"8963:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5903,"nodeType":"UserDefinedTypeName","pathNode":{"id":5902,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"8963:11:31"},"referencedDeclaration":4356,"src":"8963:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"8962:31:31"},"returnParameters":{"id":5908,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5907,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":5925,"src":"9014:6:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5906,"name":"uint64","nodeType":"ElementaryTypeName","src":"9014:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"9013:8:31"},"scope":6386,"src":"8941:287:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":6002,"nodeType":"Block","src":"9536:545:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":5939,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":5936,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5929,"src":"9550:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5937,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"majorType","nodeType":"MemberAccess","referencedDeclaration":4349,"src":"9550:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"34","id":5938,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9574:1:31","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"9550:25:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f2072656164206075696e7436345b5d602066726f6d206120605769746e65742e43424f52602077697468206d616a6f725479706520213d2034","id":5940,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9577:85:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1","typeString":"literal_string \"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\""},"value":"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1","typeString":"literal_string \"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\""}],"id":5935,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9542:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5941,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9542:121:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5942,"nodeType":"ExpressionStatement","src":"9542:121:31"},{"assignments":[5944],"declarations":[{"constant":false,"id":5944,"mutability":"mutable","name":"length","nameLocation":"9677:6:31","nodeType":"VariableDeclaration","scope":6002,"src":"9670:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5943,"name":"uint64","nodeType":"ElementaryTypeName","src":"9670:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5951,"initialValue":{"arguments":[{"expression":{"id":5946,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5929,"src":"9697:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5947,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"9697:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"expression":{"id":5948,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5929,"src":"9716:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5949,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"additionalInformation","nodeType":"MemberAccess","referencedDeclaration":4351,"src":"9716:32:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":5945,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"9686:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":5950,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9686:63:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"9670:79:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5953,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5944,"src":"9763:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5954,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"9772:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"9763:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e6774682043424f522061727261797320617265206e6f7420737570706f72746564","id":5956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9785:67:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""},"value":"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","typeString":"literal_string \"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\""}],"id":5952,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9755:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":5957,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9755:98:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":5958,"nodeType":"ExpressionStatement","src":"9755:98:31"},{"assignments":[5963],"declarations":[{"constant":false,"id":5963,"mutability":"mutable","name":"array","nameLocation":"9876:5:31","nodeType":"VariableDeclaration","scope":6002,"src":"9860:21:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":5961,"name":"uint64","nodeType":"ElementaryTypeName","src":"9860:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5962,"nodeType":"ArrayTypeName","src":"9860:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"id":5969,"initialValue":{"arguments":[{"id":5967,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5944,"src":"9897:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":5966,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"9884:12:31","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (uint64[] memory)"},"typeName":{"baseType":{"id":5964,"name":"uint64","nodeType":"ElementaryTypeName","src":"9888:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5965,"nodeType":"ArrayTypeName","src":"9888:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}}},"id":5968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9884:20:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"nodeType":"VariableDeclarationStatement","src":"9860:44:31"},{"body":{"id":5998,"nodeType":"Block","src":"9946:112:31","statements":[{"assignments":[5984],"declarations":[{"constant":false,"id":5984,"mutability":"mutable","name":"item","nameLocation":"9973:4:31","nodeType":"VariableDeclaration","scope":5998,"src":"9954:23:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5983,"nodeType":"UserDefinedTypeName","pathNode":{"id":5982,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"9954:11:31"},"referencedDeclaration":4356,"src":"9954:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"id":5989,"initialValue":{"arguments":[{"expression":{"id":5986,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5929,"src":"9996:10:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":5987,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"buffer","nodeType":"MemberAccess","referencedDeclaration":4345,"src":"9996:17:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}],"id":5985,"name":"valueFromBuffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6121,"src":"9980:15:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (struct Witnet.CBOR memory)"}},"id":5988,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9980:34:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"nodeType":"VariableDeclarationStatement","src":"9954:60:31"},{"expression":{"id":5996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":5990,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5963,"src":"10022:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":5992,"indexExpression":{"id":5991,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5971,"src":"10028:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10022:8:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":5994,"name":"item","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5984,"src":"10046:4:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":5993,"name":"decodeUint64","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5925,"src":"10033:12:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_uint64_$","typeString":"function (struct Witnet.CBOR memory) pure returns (uint64)"}},"id":5995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10033:18:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"10022:29:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5997,"nodeType":"ExpressionStatement","src":"10022:29:31"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":5976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":5974,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5971,"src":"9929:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":5975,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5944,"src":"9933:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"9929:10:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":5999,"initializationExpression":{"assignments":[5971],"declarations":[{"constant":false,"id":5971,"mutability":"mutable","name":"i","nameLocation":"9922:1:31","nodeType":"VariableDeclaration","scope":5999,"src":"9915:8:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":5970,"name":"uint64","nodeType":"ElementaryTypeName","src":"9915:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":5973,"initialValue":{"hexValue":"30","id":5972,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9926:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"9915:12:31"},"loopExpression":{"expression":{"id":5978,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"9941:3:31","subExpression":{"id":5977,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5971,"src":"9941:1:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5979,"nodeType":"ExpressionStatement","src":"9941:3:31"},"nodeType":"ForStatement","src":"9910:148:31"},{"expression":{"id":6000,"name":"array","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5963,"src":"10071:5:31","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"functionReturnParameters":5934,"id":6001,"nodeType":"Return","src":"10064:12:31"}]},"documentation":{"id":5926,"nodeType":"StructuredDocumentation","src":"9232:204:31","text":"@notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\n @param _cborValue An instance of `Witnet.CBOR`.\n @return The value represented by the input, as an `uint64[]` value."},"functionSelector":"f8a597d3","id":6003,"implemented":true,"kind":"function","modifiers":[],"name":"decodeUint64Array","nameLocation":"9448:17:31","nodeType":"FunctionDefinition","parameters":{"id":5930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5929,"mutability":"mutable","name":"_cborValue","nameLocation":"9485:10:31","nodeType":"VariableDeclaration","scope":6003,"src":"9466:29:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":5928,"nodeType":"UserDefinedTypeName","pathNode":{"id":5927,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"9466:11:31"},"referencedDeclaration":4356,"src":"9466:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"9465:31:31"},"returnParameters":{"id":5934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":5933,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6003,"src":"9519:15:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":5931,"name":"uint64","nodeType":"ElementaryTypeName","src":"9519:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":5932,"nodeType":"ArrayTypeName","src":"9519:8:31","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"9518:17:31"},"scope":6386,"src":"9439:642:31","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6027,"nodeType":"Block","src":"10496:106:31","statements":[{"assignments":[6016],"declarations":[{"constant":false,"id":6016,"mutability":"mutable","name":"buffer","nameLocation":"10523:6:31","nodeType":"VariableDeclaration","scope":6027,"src":"10502:27:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":6015,"nodeType":"UserDefinedTypeName","pathNode":{"id":6014,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"10502:13:31"},"referencedDeclaration":4361,"src":"10502:13:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"id":6022,"initialValue":{"arguments":[{"id":6019,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6006,"src":"10546:10:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"hexValue":"30","id":6020,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10558:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":6017,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"10532:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"Buffer","nodeType":"MemberAccess","referencedDeclaration":4361,"src":"10532:13:31","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Buffer_$4361_storage_ptr_$","typeString":"type(struct Witnet.Buffer storage pointer)"}},"id":6021,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10532:28:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"nodeType":"VariableDeclarationStatement","src":"10502:58:31"},{"expression":{"arguments":[{"id":6024,"name":"buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6016,"src":"10590:6:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}],"id":6023,"name":"valueFromBuffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6121,"src":"10574:15:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (struct Witnet.CBOR memory)"}},"id":6025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10574:23:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"functionReturnParameters":6011,"id":6026,"nodeType":"Return","src":"10567:30:31"}]},"documentation":{"id":6004,"nodeType":"StructuredDocumentation","src":"10085:317:31","text":"@notice Decode a Witnet.CBOR structure from raw bytes.\n @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\n @param _cborBytes Raw bytes representing a CBOR-encoded value.\n @return A `Witnet.CBOR` instance containing a partially decoded value."},"functionSelector":"dfca5d34","id":6028,"implemented":true,"kind":"function","modifiers":[],"name":"valueFromBytes","nameLocation":"10414:14:31","nodeType":"FunctionDefinition","parameters":{"id":6007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6006,"mutability":"mutable","name":"_cborBytes","nameLocation":"10442:10:31","nodeType":"VariableDeclaration","scope":6028,"src":"10429:23:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":6005,"name":"bytes","nodeType":"ElementaryTypeName","src":"10429:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10428:25:31"},"returnParameters":{"id":6011,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6010,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6028,"src":"10476:18:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":6009,"nodeType":"UserDefinedTypeName","pathNode":{"id":6008,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"10476:11:31"},"referencedDeclaration":4356,"src":"10476:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"10475:20:31"},"scope":6386,"src":"10405:197:31","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6120,"nodeType":"Block","src":"11031:830:31","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6043,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":6039,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6032,"src":"11045:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6040,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","referencedDeclaration":4358,"src":"11045:12:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"11045:19:31","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":6042,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11067:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11045:23:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20466f756e6420656d70747920627566666572207768656e2070617273696e672043424f522076616c7565","id":6044,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11070:62:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d","typeString":"literal_string \"WitnetDecoderLib: Found empty buffer when parsing CBOR value\""},"value":"WitnetDecoderLib: Found empty buffer when parsing CBOR value"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d","typeString":"literal_string \"WitnetDecoderLib: Found empty buffer when parsing CBOR value\""}],"id":6038,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11037:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":6045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11037:96:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":6046,"nodeType":"ExpressionStatement","src":"11037:96:31"},{"assignments":[6048],"declarations":[{"constant":false,"id":6048,"mutability":"mutable","name":"initialByte","nameLocation":"11146:11:31","nodeType":"VariableDeclaration","scope":6120,"src":"11140:17:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6047,"name":"uint8","nodeType":"ElementaryTypeName","src":"11140:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":6049,"nodeType":"VariableDeclarationStatement","src":"11140:17:31"},{"assignments":[6051],"declarations":[{"constant":false,"id":6051,"mutability":"mutable","name":"majorType","nameLocation":"11169:9:31","nodeType":"VariableDeclaration","scope":6120,"src":"11163:15:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6050,"name":"uint8","nodeType":"ElementaryTypeName","src":"11163:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":6053,"initialValue":{"hexValue":"323535","id":6052,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11181:3:31","typeDescriptions":{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"},"value":"255"},"nodeType":"VariableDeclarationStatement","src":"11163:21:31"},{"assignments":[6055],"declarations":[{"constant":false,"id":6055,"mutability":"mutable","name":"additionalInformation","nameLocation":"11196:21:31","nodeType":"VariableDeclaration","scope":6120,"src":"11190:27:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6054,"name":"uint8","nodeType":"ElementaryTypeName","src":"11190:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":6056,"nodeType":"VariableDeclarationStatement","src":"11190:27:31"},{"assignments":[6058],"declarations":[{"constant":false,"id":6058,"mutability":"mutable","name":"tag","nameLocation":"11230:3:31","nodeType":"VariableDeclaration","scope":6120,"src":"11223:10:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":6057,"name":"uint64","nodeType":"ElementaryTypeName","src":"11223:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":6060,"initialValue":{"id":6059,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"11236:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"11223:24:31"},{"assignments":[6062],"declarations":[{"constant":false,"id":6062,"mutability":"mutable","name":"isTagged","nameLocation":"11259:8:31","nodeType":"VariableDeclaration","scope":6120,"src":"11254:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":6061,"name":"bool","nodeType":"ElementaryTypeName","src":"11254:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":6064,"initialValue":{"hexValue":"74727565","id":6063,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"11270:4:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"nodeType":"VariableDeclarationStatement","src":"11254:20:31"},{"body":{"id":6101,"nodeType":"Block","src":"11297:359:31","statements":[{"expression":{"id":6070,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6066,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6048,"src":"11361:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6067,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6032,"src":"11375:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"11375:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11375:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"11361:33:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":6071,"nodeType":"ExpressionStatement","src":"11361:33:31"},{"expression":{"id":6076,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6072,"name":"majorType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6051,"src":"11402:9:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6075,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6073,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6048,"src":"11414:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"35","id":6074,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11429:1:31","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"11414:16:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"11402:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":6077,"nodeType":"ExpressionStatement","src":"11402:28:31"},{"expression":{"id":6082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6078,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6055,"src":"11438:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6079,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6048,"src":"11462:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783166","id":6080,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11476:4:31","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"0x1f"},"src":"11462:18:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"11438:42:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":6083,"nodeType":"ExpressionStatement","src":"11438:42:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6086,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6084,"name":"majorType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6051,"src":"11526:9:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"36","id":6085,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11539:1:31","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"11526:14:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":6099,"nodeType":"Block","src":"11615:35:31","statements":[{"expression":{"id":6097,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6095,"name":"isTagged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6062,"src":"11625:8:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":6096,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"11636:5:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"11625:16:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6098,"nodeType":"ExpressionStatement","src":"11625:16:31"}]},"id":6100,"nodeType":"IfStatement","src":"11522:128:31","trueBody":{"id":6094,"nodeType":"Block","src":"11542:67:31","statements":[{"expression":{"id":6092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6087,"name":"tag","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6058,"src":"11552:3:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":6089,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6032,"src":"11569:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"id":6090,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6055,"src":"11578:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":6088,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"11558:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":6091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11558:42:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"11552:48:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6093,"nodeType":"ExpressionStatement","src":"11552:48:31"}]}}]},"condition":{"id":6065,"name":"isTagged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6062,"src":"11287:8:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6102,"nodeType":"WhileStatement","src":"11280:376:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6104,"name":"majorType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6051,"src":"11670:9:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"37","id":6105,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11683:1:31","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"11670:14:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20496e76616c69642043424f52206d616a6f722074797065","id":6107,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11686:43:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175","typeString":"literal_string \"WitnetDecoderLib: Invalid CBOR major type\""},"value":"WitnetDecoderLib: Invalid CBOR major type"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175","typeString":"literal_string \"WitnetDecoderLib: Invalid CBOR major type\""}],"id":6103,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11662:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":6108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11662:68:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":6109,"nodeType":"ExpressionStatement","src":"11662:68:31"},{"expression":{"arguments":[{"id":6112,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6032,"src":"11763:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"id":6113,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6048,"src":"11778:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":6114,"name":"majorType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6051,"src":"11797:9:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":6115,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6055,"src":"11814:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"hexValue":"30","id":6116,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11843:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":6117,"name":"tag","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6058,"src":"11852:3:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"expression":{"id":6110,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"11744:6:31","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6111,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"CBOR","nodeType":"MemberAccess","referencedDeclaration":4356,"src":"11744:11:31","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CBOR_$4356_storage_ptr_$","typeString":"type(struct Witnet.CBOR storage pointer)"}},"id":6118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11744:112:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"functionReturnParameters":6037,"id":6119,"nodeType":"Return","src":"11737:119:31"}]},"documentation":{"id":6029,"nodeType":"StructuredDocumentation","src":"10606:327:31","text":"@notice Decode a Witnet.CBOR structure from raw bytes.\n @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\n @param _buffer A Buffer structure representing a CBOR-encoded value.\n @return A `Witnet.CBOR` instance containing a partially decoded value."},"functionSelector":"7f3fb7ca","id":6121,"implemented":true,"kind":"function","modifiers":[],"name":"valueFromBuffer","nameLocation":"10945:15:31","nodeType":"FunctionDefinition","parameters":{"id":6033,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6032,"mutability":"mutable","name":"_buffer","nameLocation":"10982:7:31","nodeType":"VariableDeclaration","scope":6121,"src":"10961:28:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":6031,"nodeType":"UserDefinedTypeName","pathNode":{"id":6030,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"10961:13:31"},"referencedDeclaration":4361,"src":"10961:13:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"}],"src":"10960:30:31"},"returnParameters":{"id":6037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6036,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6121,"src":"11011:18:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":6035,"nodeType":"UserDefinedTypeName","pathNode":{"id":6034,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"11011:11:31"},"referencedDeclaration":4356,"src":"11011:11:31","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"11010:20:31"},"scope":6386,"src":"10936:925:31","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":6186,"nodeType":"Block","src":"12141:575:31","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6132,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12151:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"3234","id":6133,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12175:2:31","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},"src":"12151:26:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6138,"nodeType":"IfStatement","src":"12147:75:31","trueBody":{"id":6137,"nodeType":"Block","src":"12179:43:31","statements":[{"expression":{"id":6135,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12194:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"functionReturnParameters":6131,"id":6136,"nodeType":"Return","src":"12187:28:31"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6141,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6139,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12231:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3234","id":6140,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12256:2:31","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},"src":"12231:27:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6147,"nodeType":"IfStatement","src":"12227:74:31","trueBody":{"id":6146,"nodeType":"Block","src":"12260:41:31","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6142,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6125,"src":"12275:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6143,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"12275:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12275:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"functionReturnParameters":6131,"id":6145,"nodeType":"Return","src":"12268:26:31"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6150,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6148,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12310:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3235","id":6149,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12335:2:31","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},"src":"12310:27:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6156,"nodeType":"IfStatement","src":"12306:75:31","trueBody":{"id":6155,"nodeType":"Block","src":"12339:42:31","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6151,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6125,"src":"12354:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint16","nodeType":"MemberAccess","referencedDeclaration":4893,"src":"12354:18:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint16_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint16)"}},"id":6153,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12354:20:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"}},"functionReturnParameters":6131,"id":6154,"nodeType":"Return","src":"12347:27:31"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6157,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12390:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3236","id":6158,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12415:2:31","typeDescriptions":{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},"value":"26"},"src":"12390:27:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6165,"nodeType":"IfStatement","src":"12386:75:31","trueBody":{"id":6164,"nodeType":"Block","src":"12419:42:31","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6160,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6125,"src":"12434:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6161,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint32","nodeType":"MemberAccess","referencedDeclaration":4934,"src":"12434:18:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint32_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint32)"}},"id":6162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12434:20:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"functionReturnParameters":6131,"id":6163,"nodeType":"Return","src":"12427:27:31"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6168,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6166,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12470:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3237","id":6167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12495:2:31","typeDescriptions":{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},"value":"27"},"src":"12470:27:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6174,"nodeType":"IfStatement","src":"12466:75:31","trueBody":{"id":6173,"nodeType":"Block","src":"12499:42:31","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6169,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6125,"src":"12514:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6170,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint64","nodeType":"MemberAccess","referencedDeclaration":4975,"src":"12514:18:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint64_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint64)"}},"id":6171,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12514:20:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":6131,"id":6172,"nodeType":"Return","src":"12507:27:31"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6177,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6175,"name":"additionalInformation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6127,"src":"12550:21:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"3331","id":6176,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12575:2:31","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},"src":"12550:27:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6181,"nodeType":"IfStatement","src":"12546:66:31","trueBody":{"id":6180,"nodeType":"Block","src":"12579:33:31","statements":[{"expression":{"id":6178,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"12594:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":6131,"id":6179,"nodeType":"Return","src":"12587:18:31"}]}},{"expression":{"arguments":[{"hexValue":"5769746e65744465636f6465724c69623a20496e76616c6964206c656e67746820656e636f64696e6720286e6f6e2d6578697374656e74206164646974696f6e616c496e666f726d6174696f6e2076616c756529","id":6183,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12624:86:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865","typeString":"literal_string \"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\""},"value":"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865","typeString":"literal_string \"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\""}],"id":6182,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"12617:6:31","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":6184,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12617:94:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":6185,"nodeType":"ExpressionStatement","src":"12617:94:31"}]},"documentation":{"id":6122,"nodeType":"StructuredDocumentation","src":"11865:165:31","text":"Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\n value of the `additionalInformation` argument."},"id":6187,"implemented":true,"kind":"function","modifiers":[],"name":"readLength","nameLocation":"12042:10:31","nodeType":"FunctionDefinition","parameters":{"id":6128,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6125,"mutability":"mutable","name":"_buffer","nameLocation":"12074:7:31","nodeType":"VariableDeclaration","scope":6187,"src":"12053:28:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":6124,"nodeType":"UserDefinedTypeName","pathNode":{"id":6123,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"12053:13:31"},"referencedDeclaration":4361,"src":"12053:13:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":6127,"mutability":"mutable","name":"additionalInformation","nameLocation":"12089:21:31","nodeType":"VariableDeclaration","scope":6187,"src":"12083:27:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6126,"name":"uint8","nodeType":"ElementaryTypeName","src":"12083:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"12052:59:31"},"returnParameters":{"id":6131,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6130,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6187,"src":"12133:6:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":6129,"name":"uint64","nodeType":"ElementaryTypeName","src":"12133:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"12132:8:31"},"scope":6386,"src":"12033:683:31","stateMutability":"pure","virtual":false,"visibility":"private"},{"body":{"id":6236,"nodeType":"Block","src":"13002:310:31","statements":[{"assignments":[6199],"declarations":[{"constant":false,"id":6199,"mutability":"mutable","name":"initialByte","nameLocation":"13014:11:31","nodeType":"VariableDeclaration","scope":6236,"src":"13008:17:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6198,"name":"uint8","nodeType":"ElementaryTypeName","src":"13008:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":6203,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6200,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6191,"src":"13028:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6201,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"13028:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13028:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"VariableDeclarationStatement","src":"13008:39:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6204,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6199,"src":"13057:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30786666","id":6205,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13072:4:31","typeDescriptions":{"typeIdentifier":"t_rational_255_by_1","typeString":"int_const 255"},"value":"0xff"},"src":"13057:19:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6210,"nodeType":"IfStatement","src":"13053:58:31","trueBody":{"id":6209,"nodeType":"Block","src":"13078:33:31","statements":[{"expression":{"id":6207,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"13093:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":6197,"id":6208,"nodeType":"Return","src":"13086:18:31"}]}},{"assignments":[6212],"declarations":[{"constant":false,"id":6212,"mutability":"mutable","name":"length","nameLocation":"13123:6:31","nodeType":"VariableDeclaration","scope":6236,"src":"13116:13:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":6211,"name":"uint64","nodeType":"ElementaryTypeName","src":"13116:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":6219,"initialValue":{"arguments":[{"id":6214,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6191,"src":"13143:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6215,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6199,"src":"13152:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783166","id":6216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13166:4:31","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"0x1f"},"src":"13152:18:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":6213,"name":"readLength","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6187,"src":"13132:10:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$_t_uint8_$returns$_t_uint64_$","typeString":"function (struct Witnet.Buffer memory,uint8) pure returns (uint64)"}},"id":6218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13132:39:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"13116:55:31"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6230,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6223,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6221,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6212,"src":"13185:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":6222,"name":"_UINT64_MAX","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5284,"src":"13194:11:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"13185:20:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6224,"name":"initialByte","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6199,"src":"13210:11:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"35","id":6225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13225:1:31","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"13210:16:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6227,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"13209:18:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":6228,"name":"majorType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6193,"src":"13231:9:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"13209:31:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13185:55:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65744465636f6465724c69623a20496e76616c696420696e646566696e697465206c656e677468","id":6231,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13242:45:31","typeDescriptions":{"typeIdentifier":"t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8","typeString":"literal_string \"WitnetDecoderLib: Invalid indefinite length\""},"value":"WitnetDecoderLib: Invalid indefinite length"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8","typeString":"literal_string \"WitnetDecoderLib: Invalid indefinite length\""}],"id":6220,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"13177:7:31","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":6232,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13177:111:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":6233,"nodeType":"ExpressionStatement","src":"13177:111:31"},{"expression":{"id":6234,"name":"length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6212,"src":"13301:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":6197,"id":6235,"nodeType":"Return","src":"13294:13:31"}]},"documentation":{"id":6188,"nodeType":"StructuredDocumentation","src":"12720:167:31","text":"Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\n as many bytes as specified by the first byte."},"id":6237,"implemented":true,"kind":"function","modifiers":[],"name":"readIndefiniteStringLength","nameLocation":"12899:26:31","nodeType":"FunctionDefinition","parameters":{"id":6194,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6191,"mutability":"mutable","name":"_buffer","nameLocation":"12947:7:31","nodeType":"VariableDeclaration","scope":6237,"src":"12926:28:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":6190,"nodeType":"UserDefinedTypeName","pathNode":{"id":6189,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"12926:13:31"},"referencedDeclaration":4361,"src":"12926:13:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":6193,"mutability":"mutable","name":"majorType","nameLocation":"12962:9:31","nodeType":"VariableDeclaration","scope":6237,"src":"12956:15:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6192,"name":"uint8","nodeType":"ElementaryTypeName","src":"12956:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"12925:47:31"},"returnParameters":{"id":6197,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6196,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6237,"src":"12994:6:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":6195,"name":"uint64","nodeType":"ElementaryTypeName","src":"12994:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"12993:8:31"},"scope":6386,"src":"12890:422:31","stateMutability":"pure","virtual":false,"visibility":"private"},{"body":{"id":6384,"nodeType":"Block","src":"13660:794:31","statements":[{"assignments":[6249],"declarations":[{"constant":false,"id":6249,"mutability":"mutable","name":"result","nameLocation":"13679:6:31","nodeType":"VariableDeclaration","scope":6384,"src":"13666:19:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":6248,"name":"bytes","nodeType":"ElementaryTypeName","src":"13666:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":6250,"nodeType":"VariableDeclarationStatement","src":"13666:19:31"},{"body":{"id":6380,"nodeType":"Block","src":"13740:691:31","statements":[{"assignments":[6262],"declarations":[{"constant":false,"id":6262,"mutability":"mutable","name":"value","nameLocation":"13754:5:31","nodeType":"VariableDeclaration","scope":6380,"src":"13748:11:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":6261,"name":"uint8","nodeType":"ElementaryTypeName","src":"13748:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":6266,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6263,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"13762:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6264,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"13762:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6265,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13762:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"VariableDeclarationStatement","src":"13748:33:31"},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6271,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6269,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6267,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"13793:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783830","id":6268,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13801:4:31","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"0x80"},"src":"13793:12:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":6270,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13809:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"13793:17:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6371,"nodeType":"IfStatement","src":"13789:588:31","trueBody":{"id":6370,"nodeType":"Block","src":"13812:565:31","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6272,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"13826:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30786530","id":6273,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13834:4:31","typeDescriptions":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"},"value":"0xe0"},"src":"13826:12:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6296,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"13967:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30786630","id":6297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13975:4:31","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"value":"0xf0"},"src":"13967:12:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":6367,"nodeType":"Block","src":"14153:216:31","statements":[{"expression":{"id":6361,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6329,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"14165:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6344,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6330,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"14174:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783066","id":6331,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14182:4:31","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"0x0f"},"src":"14174:12:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6333,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14173:14:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"3138","id":6334,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14191:2:31","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"14173:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6340,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6336,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"14209:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6337,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"14209:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14209:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783366","id":6339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14231:4:31","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3f"},"src":"14209:26:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6341,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14208:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"3132","id":6342,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14240:2:31","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"14208:34:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"14173:69:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6352,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6349,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6345,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"14258:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6346,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"14258:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6347,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14258:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783366","id":6348,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14280:4:31","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3f"},"src":"14258:26:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6350,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14257:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"36","id":6351,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14289:1:31","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"14257:33:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"14173:117:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6354,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"14307:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6355,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"14307:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14307:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783366","id":6357,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14329:4:31","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3f"},"src":"14307:26:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6359,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14306:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"14173:161:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"14165:169:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":6362,"nodeType":"ExpressionStatement","src":"14165:169:31"},{"expression":{"id":6365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6363,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6243,"src":"14346:7:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"33","id":6364,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14357:1:31","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"src":"14346:12:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6366,"nodeType":"ExpressionStatement","src":"14346:12:31"}]},"id":6368,"nodeType":"IfStatement","src":"13963:406:31","trueBody":{"id":6328,"nodeType":"Block","src":"13981:166:31","statements":[{"expression":{"id":6322,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6299,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"13993:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6321,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6305,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6300,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"14002:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783066","id":6301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14010:4:31","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"0x0f"},"src":"14002:12:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6303,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14001:14:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"3132","id":6304,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14019:2:31","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"14001:20:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6313,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6306,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"14037:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6307,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"14037:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14037:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783366","id":6309,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14059:4:31","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3f"},"src":"14037:26:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6311,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14036:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"36","id":6312,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14068:1:31","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"14036:33:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"14001:68:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6315,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"14085:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6316,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"14085:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6317,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14085:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783366","id":6318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14107:4:31","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3f"},"src":"14085:26:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6320,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"14084:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"14001:111:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"13993:119:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":6323,"nodeType":"ExpressionStatement","src":"13993:119:31"},{"expression":{"id":6326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6324,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6243,"src":"14124:7:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"32","id":6325,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14135:1:31","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"14124:12:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6327,"nodeType":"ExpressionStatement","src":"14124:12:31"}]}},"id":6369,"nodeType":"IfStatement","src":"13822:547:31","trueBody":{"id":6295,"nodeType":"Block","src":"13840:117:31","statements":[{"expression":{"id":6289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6275,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"13852:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6276,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"13861:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783166","id":6277,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13869:4:31","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"0x1f"},"src":"13861:12:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6279,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"13860:14:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"36","id":6280,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13878:1:31","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},"src":"13860:19:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":6286,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6282,"name":"_buffer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6241,"src":"13895:7:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer memory"}},"id":6283,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"readUint8","nodeType":"MemberAccess","referencedDeclaration":4852,"src":"13895:17:31","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Buffer_$4361_memory_ptr_$returns$_t_uint8_$bound_to$_t_struct$_Buffer_$4361_memory_ptr_$","typeString":"function (struct Witnet.Buffer memory) pure returns (uint8)"}},"id":6284,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13895:19:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783366","id":6285,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13917:4:31","typeDescriptions":{"typeIdentifier":"t_rational_63_by_1","typeString":"int_const 63"},"value":"0x3f"},"src":"13895:26:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"id":6287,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"13894:28:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"13860:62:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"13852:70:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":6290,"nodeType":"ExpressionStatement","src":"13852:70:31"},{"expression":{"id":6293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6291,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6243,"src":"13934:7:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":6292,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13945:1:31","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"13934:12:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6294,"nodeType":"ExpressionStatement","src":"13934:12:31"}]}}]}},{"expression":{"id":6378,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6372,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6249,"src":"14384:6:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":6375,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6249,"src":"14410:6:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":6376,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6262,"src":"14418:5:31","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"expression":{"id":6373,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14393:3:31","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6374,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"14393:16:31","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6377,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14393:31:31","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"14384:40:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6379,"nodeType":"ExpressionStatement","src":"14384:40:31"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6257,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6255,"name":"index","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6252,"src":"13714:5:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":6256,"name":"_length","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6243,"src":"13722:7:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"13714:15:31","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6381,"initializationExpression":{"assignments":[6252],"declarations":[{"constant":false,"id":6252,"mutability":"mutable","name":"index","nameLocation":"13703:5:31","nodeType":"VariableDeclaration","scope":6381,"src":"13696:12:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":6251,"name":"uint64","nodeType":"ElementaryTypeName","src":"13696:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":6254,"initialValue":{"hexValue":"30","id":6253,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13711:1:31","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"13696:16:31"},"loopExpression":{"expression":{"id":6259,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"13731:7:31","subExpression":{"id":6258,"name":"index","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6252,"src":"13731:5:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6260,"nodeType":"ExpressionStatement","src":"13731:7:31"},"nodeType":"ForStatement","src":"13691:740:31"},{"expression":{"id":6382,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6249,"src":"14443:6:31","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":6247,"id":6383,"nodeType":"Return","src":"14436:13:31"}]},"documentation":{"id":6238,"nodeType":"StructuredDocumentation","src":"13316:186:31","text":"Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\n but it can be easily casted into a string with `string(result)`."},"id":6385,"implemented":true,"kind":"function","modifiers":[],"name":"readText","nameLocation":"13570:8:31","nodeType":"FunctionDefinition","parameters":{"id":6244,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6241,"mutability":"mutable","name":"_buffer","nameLocation":"13600:7:31","nodeType":"VariableDeclaration","scope":6385,"src":"13579:28:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_memory_ptr","typeString":"struct Witnet.Buffer"},"typeName":{"id":6240,"nodeType":"UserDefinedTypeName","pathNode":{"id":6239,"name":"Witnet.Buffer","nodeType":"IdentifierPath","referencedDeclaration":4361,"src":"13579:13:31"},"referencedDeclaration":4361,"src":"13579:13:31","typeDescriptions":{"typeIdentifier":"t_struct$_Buffer_$4361_storage_ptr","typeString":"struct Witnet.Buffer"}},"visibility":"internal"},{"constant":false,"id":6243,"mutability":"mutable","name":"_length","nameLocation":"13616:7:31","nodeType":"VariableDeclaration","scope":6385,"src":"13609:14:31","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":6242,"name":"uint64","nodeType":"ElementaryTypeName","src":"13609:6:31","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"13578:46:31"},"returnParameters":{"id":6247,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6246,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6385,"src":"13646:12:31","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":6245,"name":"bytes","nodeType":"ElementaryTypeName","src":"13646:5:31","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"13645:14:31"},"scope":6386,"src":"13561:893:31","stateMutability":"pure","virtual":false,"visibility":"private"}],"scope":6387,"src":"814:13642:31","usedErrors":[]}],"src":"33:14424:31"},"id":31},"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619],"WitnetBuffer":[5261],"WitnetDecoderLib":[6386],"WitnetParserLib":[7528]},"id":7529,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":6388,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:32"},{"id":6389,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:32"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol","file":"./WitnetDecoderLib.sol","id":6390,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":7529,"sourceUnit":6387,"src":"100:32:32","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"library","documentation":{"id":6391,"nodeType":"StructuredDocumentation","src":"134:241:32","text":"@title A library for decoding Witnet request results\n @notice The library exposes functions to check the Witnet request success.\n and retrieve Witnet results from CBOR values into solidity types.\n @author The Witnet Foundation."},"fullyImplemented":true,"id":7528,"linearizedBaseContracts":[7528],"name":"WitnetParserLib","nameLocation":"383:15:32","nodeType":"ContractDefinition","nodes":[{"id":6394,"libraryName":{"id":6392,"name":"WitnetDecoderLib","nodeType":"IdentifierPath","referencedDeclaration":6386,"src":"412:16:32"},"nodeType":"UsingForDirective","src":"406:33:32","typeName":{"id":6393,"name":"bytes","nodeType":"ElementaryTypeName","src":"433:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},{"id":6398,"libraryName":{"id":6395,"name":"WitnetDecoderLib","nodeType":"IdentifierPath","referencedDeclaration":6386,"src":"450:16:32"},"nodeType":"UsingForDirective","src":"444:39:32","typeName":{"id":6397,"nodeType":"UserDefinedTypeName","pathNode":{"id":6396,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"471:11:32"},"referencedDeclaration":4356,"src":"471:11:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}}},{"body":{"id":6420,"nodeType":"Block","src":"794:122:32","statements":[{"assignments":[6411],"declarations":[{"constant":false,"id":6411,"mutability":"mutable","name":"cborValue","nameLocation":"823:9:32","nodeType":"VariableDeclaration","scope":6420,"src":"804:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":6410,"nodeType":"UserDefinedTypeName","pathNode":{"id":6409,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"804:11:32"},"referencedDeclaration":4356,"src":"804:11:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"id":6415,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":6412,"name":"_cborBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6401,"src":"835:10:32","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},"id":6413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"valueFromBytes","nodeType":"MemberAccess","referencedDeclaration":6028,"src":"835:25:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_bytes_memory_ptr_$returns$_t_struct$_CBOR_$4356_memory_ptr_$bound_to$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) pure returns (struct Witnet.CBOR memory)"}},"id":6414,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"835:27:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"nodeType":"VariableDeclarationStatement","src":"804:58:32"},{"expression":{"arguments":[{"id":6417,"name":"cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6411,"src":"899:9:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"id":6416,"name":"resultFromCborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6445,"src":"879:19:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_struct$_Result_$4342_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (struct Witnet.Result memory)"}},"id":6418,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"879:30:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"functionReturnParameters":6406,"id":6419,"nodeType":"Return","src":"872:37:32"}]},"documentation":{"id":6399,"nodeType":"StructuredDocumentation","src":"489:179:32","text":"@notice Decode raw CBOR bytes into a Witnet.Result instance.\n @param _cborBytes Raw bytes representing a CBOR-encoded value.\n @return A `Witnet.Result` instance."},"functionSelector":"e99e47f3","id":6421,"implemented":true,"kind":"function","modifiers":[],"name":"resultFromCborBytes","nameLocation":"682:19:32","nodeType":"FunctionDefinition","parameters":{"id":6402,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6401,"mutability":"mutable","name":"_cborBytes","nameLocation":"717:10:32","nodeType":"VariableDeclaration","scope":6421,"src":"702:25:32","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":6400,"name":"bytes","nodeType":"ElementaryTypeName","src":"702:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"701:27:32"},"returnParameters":{"id":6406,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6405,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6421,"src":"768:20:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6404,"nodeType":"UserDefinedTypeName","pathNode":{"id":6403,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"768:13:32"},"referencedDeclaration":4342,"src":"768:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"767:22:32"},"scope":7528,"src":"673:243:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6444,"nodeType":"Block","src":"1217:291:32","statements":[{"assignments":[6432],"declarations":[{"constant":false,"id":6432,"mutability":"mutable","name":"success","nameLocation":"1420:7:32","nodeType":"VariableDeclaration","scope":6444,"src":"1415:12:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":6431,"name":"bool","nodeType":"ElementaryTypeName","src":"1415:4:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":6437,"initialValue":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6433,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6425,"src":"1430:10:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":6434,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"tag","nodeType":"MemberAccess","referencedDeclaration":4355,"src":"1430:14:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"3339","id":6435,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1448:2:32","typeDescriptions":{"typeIdentifier":"t_rational_39_by_1","typeString":"int_const 39"},"value":"39"},"src":"1430:20:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"1415:35:32"},{"expression":{"arguments":[{"id":6440,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6432,"src":"1481:7:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"id":6441,"name":"_cborValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6425,"src":"1490:10:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}],"expression":{"id":6438,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"1467:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"Result","nodeType":"MemberAccess","referencedDeclaration":4342,"src":"1467:13:32","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Result_$4342_storage_ptr_$","typeString":"type(struct Witnet.Result storage pointer)"}},"id":6442,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1467:34:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"functionReturnParameters":6430,"id":6443,"nodeType":"Return","src":"1460:41:32"}]},"documentation":{"id":6422,"nodeType":"StructuredDocumentation","src":"922:163:32","text":"@notice Decode a CBOR value into a Witnet.Result instance.\n @param _cborValue An instance of `Witnet.Value`.\n @return A `Witnet.Result` instance."},"functionSelector":"130283ee","id":6445,"implemented":true,"kind":"function","modifiers":[],"name":"resultFromCborValue","nameLocation":"1099:19:32","nodeType":"FunctionDefinition","parameters":{"id":6426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6425,"mutability":"mutable","name":"_cborValue","nameLocation":"1138:10:32","nodeType":"VariableDeclaration","scope":6445,"src":"1119:29:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR"},"typeName":{"id":6424,"nodeType":"UserDefinedTypeName","pathNode":{"id":6423,"name":"Witnet.CBOR","nodeType":"IdentifierPath","referencedDeclaration":4356,"src":"1119:11:32"},"referencedDeclaration":4356,"src":"1119:11:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_storage_ptr","typeString":"struct Witnet.CBOR"}},"visibility":"internal"}],"src":"1118:31:32"},"returnParameters":{"id":6430,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6429,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6445,"src":"1187:20:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6428,"nodeType":"UserDefinedTypeName","pathNode":{"id":6427,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1187:13:32"},"referencedDeclaration":4342,"src":"1187:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1186:22:32"},"scope":7528,"src":"1090:418:32","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":6457,"nodeType":"Block","src":"1773:39:32","statements":[{"expression":{"expression":{"id":6454,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6449,"src":"1790:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":6455,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"1790:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":6453,"id":6456,"nodeType":"Return","src":"1783:22:32"}]},"documentation":{"id":6446,"nodeType":"StructuredDocumentation","src":"1514:161:32","text":"@notice Tell if a Witnet.Result is successful.\n @param _result An instance of Witnet.Result.\n @return `true` if successful, `false` if errored."},"functionSelector":"6646c119","id":6458,"implemented":true,"kind":"function","modifiers":[],"name":"isOk","nameLocation":"1689:4:32","nodeType":"FunctionDefinition","parameters":{"id":6450,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6449,"mutability":"mutable","name":"_result","nameLocation":"1715:7:32","nodeType":"VariableDeclaration","scope":6458,"src":"1694:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6448,"nodeType":"UserDefinedTypeName","pathNode":{"id":6447,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1694:13:32"},"referencedDeclaration":4342,"src":"1694:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1693:30:32"},"returnParameters":{"id":6453,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6452,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6458,"src":"1763:4:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":6451,"name":"bool","nodeType":"ElementaryTypeName","src":"1763:4:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1762:6:32"},"scope":7528,"src":"1680:132:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6471,"nodeType":"Block","src":"2073:40:32","statements":[{"expression":{"id":6469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"2090:16:32","subExpression":{"expression":{"id":6467,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6462,"src":"2091:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":6468,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"2091:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":6466,"id":6470,"nodeType":"Return","src":"2083:23:32"}]},"documentation":{"id":6459,"nodeType":"StructuredDocumentation","src":"1818:158:32","text":"@notice Tell if a Witnet.Result is errored.\n @param _result An instance of Witnet.Result.\n @return `true` if errored, `false` if successful."},"functionSelector":"a1d45d56","id":6472,"implemented":true,"kind":"function","modifiers":[],"name":"isError","nameLocation":"1990:7:32","nodeType":"FunctionDefinition","parameters":{"id":6463,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6462,"mutability":"mutable","name":"_result","nameLocation":"2019:7:32","nodeType":"VariableDeclaration","scope":6472,"src":"1998:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6461,"nodeType":"UserDefinedTypeName","pathNode":{"id":6460,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"1998:13:32"},"referencedDeclaration":4342,"src":"1998:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"1997:30:32"},"returnParameters":{"id":6466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6465,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6472,"src":"2063:4:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":6464,"name":"bool","nodeType":"ElementaryTypeName","src":"2063:4:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2062:6:32"},"scope":7528,"src":"1981:132:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6492,"nodeType":"Block","src":"2413:158:32","statements":[{"expression":{"arguments":[{"expression":{"id":6482,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6476,"src":"2431:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":6483,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"2431:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642062797465732076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":6484,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2448:71:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e","typeString":"literal_string \"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read bytes value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e","typeString":"literal_string \"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\""}],"id":6481,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2423:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":6485,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2423:97:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":6486,"nodeType":"ExpressionStatement","src":"2423:97:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":6487,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6476,"src":"2537:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":6488,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"2537:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":6489,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeBytes","nodeType":"MemberAccess","referencedDeclaration":5435,"src":"2537:25:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_bytes_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (bytes memory)"}},"id":6490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2537:27:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":6480,"id":6491,"nodeType":"Return","src":"2530:34:32"}]},"documentation":{"id":6473,"nodeType":"StructuredDocumentation","src":"2119:186:32","text":"@notice Decode a bytes value from a Witnet.Result as a `bytes` value.\n @param _result An instance of Witnet.Result.\n @return The `bytes` decoded from the Witnet.Result."},"functionSelector":"a1b90891","id":6493,"implemented":true,"kind":"function","modifiers":[],"name":"asBytes","nameLocation":"2319:7:32","nodeType":"FunctionDefinition","parameters":{"id":6477,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6476,"mutability":"mutable","name":"_result","nameLocation":"2348:7:32","nodeType":"VariableDeclaration","scope":6493,"src":"2327:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6475,"nodeType":"UserDefinedTypeName","pathNode":{"id":6474,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"2327:13:32"},"referencedDeclaration":4342,"src":"2327:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"2326:30:32"},"returnParameters":{"id":6480,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6479,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6493,"src":"2395:12:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":6478,"name":"bytes","nodeType":"ElementaryTypeName","src":"2395:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2394:14:32"},"scope":7528,"src":"2310:261:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6513,"nodeType":"Block","src":"2872:162:32","statements":[{"expression":{"arguments":[{"expression":{"id":6503,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6497,"src":"2890:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":6504,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"2890:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20747269656420746f207265616420627974657333322076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":6505,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2907:73:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6","typeString":"literal_string \"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\""},"value":"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6","typeString":"literal_string \"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\""}],"id":6502,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2882:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":6506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2882:99:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":6507,"nodeType":"ExpressionStatement","src":"2882:99:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":6508,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6497,"src":"2998:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":6509,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"2998:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":6510,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeBytes32","nodeType":"MemberAccess","referencedDeclaration":5490,"src":"2998:27:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_bytes32_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (bytes32)"}},"id":6511,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2998:29:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":6501,"id":6512,"nodeType":"Return","src":"2991:36:32"}]},"documentation":{"id":6494,"nodeType":"StructuredDocumentation","src":"2577:190:32","text":"@notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\n @param _result An instance of Witnet.Result.\n @return The `bytes32` decoded from the Witnet.Result."},"functionSelector":"a2e87655","id":6514,"implemented":true,"kind":"function","modifiers":[],"name":"asBytes32","nameLocation":"2781:9:32","nodeType":"FunctionDefinition","parameters":{"id":6498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6497,"mutability":"mutable","name":"_result","nameLocation":"2812:7:32","nodeType":"VariableDeclaration","scope":6514,"src":"2791:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6496,"nodeType":"UserDefinedTypeName","pathNode":{"id":6495,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"2791:13:32"},"referencedDeclaration":4342,"src":"2791:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"2790:30:32"},"returnParameters":{"id":6501,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6500,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6514,"src":"2859:7:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":6499,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2859:7:32","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2858:9:32"},"scope":7528,"src":"2772:262:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":6549,"nodeType":"Block","src":"3379:204:32","statements":[{"assignments":[6528],"declarations":[{"constant":false,"id":6528,"mutability":"mutable","name":"error","nameLocation":"3405:5:32","nodeType":"VariableDeclaration","scope":6549,"src":"3389:21:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":6526,"name":"uint64","nodeType":"ElementaryTypeName","src":"3389:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6527,"nodeType":"ArrayTypeName","src":"3389:8:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"id":6532,"initialValue":{"arguments":[{"id":6530,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6518,"src":"3424:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}],"id":6529,"name":"asRawError","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7057,"src":"3413:10:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (uint64[] memory)"}},"id":6531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3413:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3389:43:32"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6536,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6533,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6528,"src":"3446:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"3446:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":6535,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3462:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3446:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6542,"nodeType":"IfStatement","src":"3442:80:32","trueBody":{"id":6541,"nodeType":"Block","src":"3465:57:32","statements":[{"expression":{"expression":{"expression":{"id":6537,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"3486:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"3486:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6539,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Unknown","nodeType":"MemberAccess","referencedDeclaration":4362,"src":"3486:25:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"functionReturnParameters":6523,"id":6540,"nodeType":"Return","src":"3479:32:32"}]}},{"expression":{"arguments":[{"baseExpression":{"id":6544,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6528,"src":"3567:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6546,"indexExpression":{"hexValue":"30","id":6545,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3573:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3567:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6543,"name":"_supportedErrorOrElseUnknown","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7298,"src":"3538:28:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_enum$_ErrorCodes_$4618_$","typeString":"function (uint64) pure returns (enum Witnet.ErrorCodes)"}},"id":6547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3538:38:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"functionReturnParameters":6523,"id":6548,"nodeType":"Return","src":"3531:45:32"}]},"documentation":{"id":6515,"nodeType":"StructuredDocumentation","src":"3040:221:32","text":"@notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\n @param _result An instance of `Witnet.Result`.\n @return The `CBORValue.Error memory` decoded from the Witnet.Result."},"functionSelector":"d45d097d","id":6550,"implemented":true,"kind":"function","modifiers":[],"name":"asErrorCode","nameLocation":"3275:11:32","nodeType":"FunctionDefinition","parameters":{"id":6519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6518,"mutability":"mutable","name":"_result","nameLocation":"3308:7:32","nodeType":"VariableDeclaration","scope":6550,"src":"3287:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6517,"nodeType":"UserDefinedTypeName","pathNode":{"id":6516,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"3287:13:32"},"referencedDeclaration":4342,"src":"3287:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"3286:30:32"},"returnParameters":{"id":6523,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6522,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":6550,"src":"3356:17:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":6521,"nodeType":"UserDefinedTypeName","pathNode":{"id":6520,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"3356:17:32"},"referencedDeclaration":4618,"src":"3356:17:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"}],"src":"3355:19:32"},"scope":7528,"src":"3266:317:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7033,"nodeType":"Block","src":"4160:4957:32","statements":[{"assignments":[6566],"declarations":[{"constant":false,"id":6566,"mutability":"mutable","name":"error","nameLocation":"4186:5:32","nodeType":"VariableDeclaration","scope":7033,"src":"4170:21:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":6564,"name":"uint64","nodeType":"ElementaryTypeName","src":"4170:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":6565,"nodeType":"ArrayTypeName","src":"4170:8:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"id":6570,"initialValue":{"arguments":[{"id":6568,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6554,"src":"4205:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}],"id":6567,"name":"asRawError","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7057,"src":"4194:10:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_struct$_Result_$4342_memory_ptr_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$","typeString":"function (struct Witnet.Result memory) pure returns (uint64[] memory)"}},"id":6569,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4194:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4170:43:32"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6571,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"4227:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"4227:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":6573,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4243:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"4227:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":6582,"nodeType":"IfStatement","src":"4223:115:32","trueBody":{"id":6581,"nodeType":"Block","src":"4246:92:32","statements":[{"expression":{"components":[{"expression":{"expression":{"id":6575,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"4268:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6576,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"4268:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6577,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Unknown","nodeType":"MemberAccess","referencedDeclaration":4362,"src":"4268:25:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},{"hexValue":"556e6b6e6f776e206572726f7220286e6f206572726f7220636f646529","id":6578,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4295:31:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_9362eb335c700860f9f440fe6cb27ce683232a7bc10c5d0c4a89a0025af0465a","typeString":"literal_string \"Unknown error (no error code)\""},"value":"Unknown error (no error code)"}],"id":6579,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"4267:60:32","typeDescriptions":{"typeIdentifier":"t_tuple$_t_enum$_ErrorCodes_$4618_$_t_stringliteral_9362eb335c700860f9f440fe6cb27ce683232a7bc10c5d0c4a89a0025af0465a_$","typeString":"tuple(enum Witnet.ErrorCodes,literal_string \"Unknown error (no error code)\")"}},"functionReturnParameters":6561,"id":6580,"nodeType":"Return","src":"4260:67:32"}]}},{"assignments":[6587],"declarations":[{"constant":false,"id":6587,"mutability":"mutable","name":"errorCode","nameLocation":"4365:9:32","nodeType":"VariableDeclaration","scope":7033,"src":"4347:27:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":6586,"nodeType":"UserDefinedTypeName","pathNode":{"id":6585,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"4347:17:32"},"referencedDeclaration":4618,"src":"4347:17:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"}],"id":6593,"initialValue":{"arguments":[{"baseExpression":{"id":6589,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"4406:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6591,"indexExpression":{"hexValue":"30","id":6590,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4412:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4406:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6588,"name":"_supportedErrorOrElseUnknown","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7298,"src":"4377:28:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_enum$_ErrorCodes_$4618_$","typeString":"function (uint64) pure returns (enum Witnet.ErrorCodes)"}},"id":6592,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4377:38:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"VariableDeclarationStatement","src":"4347:68:32"},{"assignments":[6595],"declarations":[{"constant":false,"id":6595,"mutability":"mutable","name":"errorMessage","nameLocation":"4438:12:32","nodeType":"VariableDeclaration","scope":7033,"src":"4425:25:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":6594,"name":"bytes","nodeType":"ElementaryTypeName","src":"4425:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":6596,"nodeType":"VariableDeclarationStatement","src":"4425:25:32"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6606,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6601,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6597,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"4465:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6598,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"4478:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6599,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"4478:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6600,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"SourceScriptNotCBOR","nodeType":"MemberAccess","referencedDeclaration":4363,"src":"4478:37:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"4465:50:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6605,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6602,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"4519:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"4519:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"32","id":6604,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4535:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"4519:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4465:71:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6625,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6621,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"4733:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6622,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"4746:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"4746:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6624,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"SourceScriptNotArray","nodeType":"MemberAccess","referencedDeclaration":4364,"src":"4746:38:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"4733:51:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6629,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6626,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"4788:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"4788:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"32","id":6628,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4804:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"4788:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4733:72:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6645,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"5012:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6646,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"5025:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6647,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"5025:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6648,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"SourceScriptNotRADON","nodeType":"MemberAccess","referencedDeclaration":4365,"src":"5025:38:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"5012:51:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6650,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5067:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6651,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5067:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"32","id":6652,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5083:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"5067:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5012:72:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6678,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6673,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6669,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"5294:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6670,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"5307:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6671,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"5307:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6672,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"RequestTooManySources","nodeType":"MemberAccess","referencedDeclaration":4378,"src":"5307:39:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"5294:52:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6674,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5350:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5350:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"32","id":6676,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5366:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"5350:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5294:73:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6697,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6693,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"5565:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6694,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"5578:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"5578:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6696,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"ScriptTooManyCalls","nodeType":"MemberAccess","referencedDeclaration":4379,"src":"5578:36:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"5565:49:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6698,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5618:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"5618:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"34","id":6700,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5634:1:32","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"5618:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5565:70:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6729,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"5952:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6730,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"5965:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"5965:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6732,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"UnsupportedOperator","nodeType":"MemberAccess","referencedDeclaration":4394,"src":"5965:37:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"5952:50:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6737,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6734,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6006:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"6006:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"35","id":6736,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6022:1:32","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"6006:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5952:71:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6775,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6771,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"6416:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6772,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"6429:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"6429:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6774,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"HTTP","nodeType":"MemberAccess","referencedDeclaration":4410,"src":"6429:22:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"6416:35:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6779,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6776,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6455:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6777,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"6455:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"33","id":6778,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6471:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"src":"6455:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6416:56:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6818,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"6810:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6819,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"6823:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"6823:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6821,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"RetrievalTimeout","nodeType":"MemberAccess","referencedDeclaration":4411,"src":"6823:34:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"6810:47:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6823,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6861:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"6861:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"32","id":6825,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6877:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"6861:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6810:68:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6842,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"7085:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6843,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"7098:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6844,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"7098:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Underflow","nodeType":"MemberAccess","referencedDeclaration":4426,"src":"7098:27:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"7085:40:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6850,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6847,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7129:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6848,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"7129:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"35","id":6849,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7145:1:32","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"7129:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"7085:61:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6888,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6884,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"7537:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6885,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"7550:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6886,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"7550:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6887,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"Overflow","nodeType":"MemberAccess","referencedDeclaration":4427,"src":"7550:26:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"7537:39:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6892,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6889,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7580:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6890,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"7580:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"35","id":6891,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7596:1:32","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"7580:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"7537:60:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":6935,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6930,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6926,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"7985:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6927,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"7998:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6928,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"7998:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6929,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"DivisionByZero","nodeType":"MemberAccess","referencedDeclaration":4428,"src":"7998:32:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"7985:45:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":6934,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":6931,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"8034:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"8034:12:32","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"35","id":6933,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8050:1:32","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"8034:17:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"7985:66:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6972,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6968,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"8447:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6969,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"8460:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"8460:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6971,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"BridgeMalformedRequest","nodeType":"MemberAccess","referencedDeclaration":4586,"src":"8460:40:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"8447:53:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6978,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"8617:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6979,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"8630:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"8630:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6981,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"BridgePoorIncentives","nodeType":"MemberAccess","referencedDeclaration":4587,"src":"8630:38:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"8617:51:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"id":6992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":6988,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"8793:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"expression":{"id":6989,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"8806:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":6990,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"8806:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":6991,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"BridgeOversizedResult","nodeType":"MemberAccess","referencedDeclaration":4588,"src":"8806:39:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"src":"8793:52:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":7011,"nodeType":"Block","src":"8960:101:32","statements":[{"expression":{"id":7009,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6998,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"8974:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"556e6b6e6f776e206572726f7220283078","id":7001,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9006:19:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5","typeString":"literal_string \"Unknown error (0x\""},"value":"Unknown error (0x"},{"arguments":[{"baseExpression":{"id":7003,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"9035:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":7005,"indexExpression":{"hexValue":"30","id":7004,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9041:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9035:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7002,"name":"_utohex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7527,"src":"9027:7:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":7006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9027:17:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"29","id":7007,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9046:3:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","typeString":"literal_string \")\""},"value":")"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5","typeString":"literal_string \"Unknown error (0x\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","typeString":"literal_string \")\""}],"expression":{"id":6999,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"8989:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":7000,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"8989:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":7008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8989:61:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"8974:76:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7010,"nodeType":"ExpressionStatement","src":"8974:76:32"}]},"id":7012,"nodeType":"IfStatement","src":"8789:272:32","trueBody":{"id":6997,"nodeType":"Block","src":"8847:107:32","statements":[{"expression":{"id":6995,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6993,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"8861:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"546865207265717565737420726573756c74206c656e677468206578636565647320612062726964676520636f6e747261637420646566696e6564206c696d6974","id":6994,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8876:67:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_39c5b8feea55b72e14e8fc15549edcd9101028bd93b98957f1a43e659164d240","typeString":"literal_string \"The request result length exceeds a bridge contract defined limit\""},"value":"The request result length exceeds a bridge contract defined limit"},"src":"8861:82:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6996,"nodeType":"ExpressionStatement","src":"8861:82:32"}]}},"id":7013,"nodeType":"IfStatement","src":"8613:448:32","trueBody":{"id":6987,"nodeType":"Block","src":"8670:113:32","statements":[{"expression":{"id":6985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6983,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"8684:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"546865207265717565737420686173206265656e2072656a65637465642062792074686520627269646765206e6f64652064756520746f20706f6f7220696e63656e7469766573","id":6984,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8699:73:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_7097a46923a4cac54a31a98eeae69b37a1b4ebddf8a36ec865824488d81ac30f","typeString":"literal_string \"The request has been rejected by the bridge node due to poor incentives\""},"value":"The request has been rejected by the bridge node due to poor incentives"},"src":"8684:88:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6986,"nodeType":"ExpressionStatement","src":"8684:88:32"}]}},"id":7014,"nodeType":"IfStatement","src":"8443:618:32","trueBody":{"id":6977,"nodeType":"Block","src":"8502:105:32","statements":[{"expression":{"id":6975,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6973,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"8516:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"54686520737472756374757265206f6620746865207265717565737420697320696e76616c696420616e642069742063616e6e6f7420626520706172736564","id":6974,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8531:65:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_2d243263f0d4cee50c16d04dfb8ef5c9e46142a739dd644d3bec8442686d18b4","typeString":"literal_string \"The structure of the request is invalid and it cannot be parsed\""},"value":"The structure of the request is invalid and it cannot be parsed"},"src":"8516:80:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6976,"nodeType":"ExpressionStatement","src":"8516:80:32"}]}},"id":7015,"nodeType":"IfStatement","src":"7981:1080:32","trueBody":{"id":6967,"nodeType":"Block","src":"8053:384:32","statements":[{"expression":{"id":6965,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6936,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"8067:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"4469766973696f6e206279207a65726f206174206f70657261746f7220636f6465203078","id":6939,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8116:38:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5","typeString":"literal_string \"Division by zero at operator code 0x\""},"value":"Division by zero at operator code 0x"},{"arguments":[{"baseExpression":{"id":6941,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"8180:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6943,"indexExpression":{"hexValue":"34","id":6942,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8186:1:32","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8180:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6940,"name":"_utohex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7527,"src":"8172:7:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8172:17:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20666f756e642061742063616c6c2023","id":6945,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8207:18:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},"value":" found at call #"},{"arguments":[{"baseExpression":{"id":6947,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"8249:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6949,"indexExpression":{"hexValue":"33","id":6948,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8255:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8249:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6946,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"8243:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6950,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8243:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20696e207363726970742023","id":6951,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8276:14:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},"value":" in script #"},{"arguments":[{"baseExpression":{"id":6953,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"8314:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6955,"indexExpression":{"hexValue":"32","id":6954,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8320:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8314:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6952,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"8308:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8308:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2066726f6d20","id":6957,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8341:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},"value":" from "},{"arguments":[{"baseExpression":{"id":6959,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"8377:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6961,"indexExpression":{"hexValue":"31","id":6960,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8383:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8377:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6958,"name":"stageName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7283,"src":"8367:9:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6962,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8367:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"207374616765","id":6963,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8404:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","typeString":"literal_string \" stage\""},"value":" stage"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5","typeString":"literal_string \"Division by zero at operator code 0x\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","typeString":"literal_string \" stage\""}],"expression":{"id":6937,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"8082:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6938,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"8082:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6964,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8082:344:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"8067:359:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6966,"nodeType":"ExpressionStatement","src":"8067:359:32"}]}},"id":7016,"nodeType":"IfStatement","src":"7533:1528:32","trueBody":{"id":6925,"nodeType":"Block","src":"7599:376:32","statements":[{"expression":{"id":6923,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6894,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"7613:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"4f766572666c6f77206174206f70657261746f7220636f6465203078","id":6897,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7662:30:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58","typeString":"literal_string \"Overflow at operator code 0x\""},"value":"Overflow at operator code 0x"},{"arguments":[{"baseExpression":{"id":6899,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7718:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6901,"indexExpression":{"hexValue":"34","id":6900,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7724:1:32","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7718:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6898,"name":"_utohex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7527,"src":"7710:7:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6902,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7710:17:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20666f756e642061742063616c6c2023","id":6903,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7745:18:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},"value":" found at call #"},{"arguments":[{"baseExpression":{"id":6905,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7787:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6907,"indexExpression":{"hexValue":"33","id":6906,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7793:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7787:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6904,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"7781:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7781:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20696e207363726970742023","id":6909,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7814:14:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},"value":" in script #"},{"arguments":[{"baseExpression":{"id":6911,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7852:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6913,"indexExpression":{"hexValue":"32","id":6912,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7858:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7852:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6910,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"7846:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6914,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7846:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2066726f6d20","id":6915,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7879:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},"value":" from "},{"arguments":[{"baseExpression":{"id":6917,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7915:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6919,"indexExpression":{"hexValue":"31","id":6918,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7921:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7915:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6916,"name":"stageName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7283,"src":"7905:9:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7905:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"207374616765","id":6921,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7942:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","typeString":"literal_string \" stage\""},"value":" stage"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58","typeString":"literal_string \"Overflow at operator code 0x\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","typeString":"literal_string \" stage\""}],"expression":{"id":6895,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7628:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6896,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"7628:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6922,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7628:336:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"7613:351:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6924,"nodeType":"ExpressionStatement","src":"7613:351:32"}]}},"id":7017,"nodeType":"IfStatement","src":"7081:1980:32","trueBody":{"id":6883,"nodeType":"Block","src":"7148:379:32","statements":[{"expression":{"id":6881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6852,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"7164:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"556e646572666c6f77206174206f70657261746f7220636f6465203078","id":6855,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7213:31:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0","typeString":"literal_string \"Underflow at operator code 0x\""},"value":"Underflow at operator code 0x"},{"arguments":[{"baseExpression":{"id":6857,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7270:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6859,"indexExpression":{"hexValue":"34","id":6858,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7276:1:32","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7270:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6856,"name":"_utohex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7527,"src":"7262:7:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6860,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7262:17:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20666f756e642061742063616c6c2023","id":6861,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7297:18:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},"value":" found at call #"},{"arguments":[{"baseExpression":{"id":6863,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7339:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6865,"indexExpression":{"hexValue":"33","id":6864,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7345:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7339:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6862,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"7333:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6866,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7333:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20696e207363726970742023","id":6867,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7366:14:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},"value":" in script #"},{"arguments":[{"baseExpression":{"id":6869,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7404:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6871,"indexExpression":{"hexValue":"32","id":6870,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7410:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7404:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6868,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"7398:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6872,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7398:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2066726f6d20","id":6873,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7431:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},"value":" from "},{"arguments":[{"baseExpression":{"id":6875,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"7467:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6877,"indexExpression":{"hexValue":"31","id":6876,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7473:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7467:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6874,"name":"stageName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7283,"src":"7457:9:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6878,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7457:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"207374616765","id":6879,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7494:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","typeString":"literal_string \" stage\""},"value":" stage"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0","typeString":"literal_string \"Underflow at operator code 0x\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","typeString":"literal_string \" stage\""}],"expression":{"id":6853,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7179:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6854,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"7179:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6880,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7179:337:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"7164:352:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6882,"nodeType":"ExpressionStatement","src":"7164:352:32"}]}},"id":7018,"nodeType":"IfStatement","src":"6806:2255:32","trueBody":{"id":6841,"nodeType":"Block","src":"6880:195:32","statements":[{"expression":{"id":6839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6828,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"6894:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"536f757263652023","id":6831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6943:10:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e","typeString":"literal_string \"Source #\""},"value":"Source #"},{"arguments":[{"baseExpression":{"id":6833,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6977:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6835,"indexExpression":{"hexValue":"31","id":6834,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6983:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6977:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6832,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6971:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6971:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20636f756c64206e6f74206265207265747269657665642062656361757365206f6620612074696d656f7574","id":6837,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7004:46:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66","typeString":"literal_string \" could not be retrieved because of a timeout\""},"value":" could not be retrieved because of a timeout"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e","typeString":"literal_string \"Source #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66","typeString":"literal_string \" could not be retrieved because of a timeout\""}],"expression":{"id":6829,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6909:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"6909:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6909:155:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"6894:170:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6840,"nodeType":"ExpressionStatement","src":"6894:170:32"}]}},"id":7019,"nodeType":"IfStatement","src":"6412:2649:32","trueBody":{"id":6817,"nodeType":"Block","src":"6474:326:32","statements":[{"expression":{"id":6815,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6781,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"6488:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"536f757263652023","id":6784,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6537:10:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e","typeString":"literal_string \"Source #\""},"value":"Source #"},{"arguments":[{"baseExpression":{"id":6786,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6571:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6788,"indexExpression":{"hexValue":"31","id":6787,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6577:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6571:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6785,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6565:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6789,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6565:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20636f756c64206e6f74206265207265747269657665642e204661696c656420776974682048545450206572726f7220636f64653a20","id":6790,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6598:56:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1","typeString":"literal_string \" could not be retrieved. Failed with HTTP error code: \""},"value":" could not be retrieved. Failed with HTTP error code: "},{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6796,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":6792,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6678:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6794,"indexExpression":{"hexValue":"32","id":6793,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6684:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6678:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"313030","id":6795,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6689:3:32","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"src":"6678:14:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6791,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6672:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6672:21:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":6799,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6717:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6801,"indexExpression":{"hexValue":"32","id":6800,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6723:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6717:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"%","rightExpression":{"hexValue":"313030","id":6802,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6728:3:32","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"src":"6717:14:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"3130","id":6804,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6734:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"6717:19:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6798,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6711:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6806,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6711:26:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":6812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":6808,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6761:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6810,"indexExpression":{"hexValue":"32","id":6809,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6767:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6761:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"%","rightExpression":{"hexValue":"3130","id":6811,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6772:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"6761:13:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6807,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6755:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6755:20:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e","typeString":"literal_string \"Source #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1","typeString":"literal_string \" could not be retrieved. Failed with HTTP error code: \""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":6782,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6503:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6783,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"6503:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6814,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6503:286:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"6488:301:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6816,"nodeType":"ExpressionStatement","src":"6488:301:32"}]}},"id":7020,"nodeType":"IfStatement","src":"5948:3113:32","trueBody":{"id":6770,"nodeType":"Block","src":"6025:381:32","statements":[{"expression":{"id":6768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6739,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"6039:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"4f70657261746f7220636f6465203078","id":6742,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6088:18:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7","typeString":"literal_string \"Operator code 0x\""},"value":"Operator code 0x"},{"arguments":[{"baseExpression":{"id":6744,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6132:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6746,"indexExpression":{"hexValue":"34","id":6745,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6138:1:32","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6132:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6743,"name":"_utohex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7527,"src":"6124:7:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6747,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6124:17:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20666f756e642061742063616c6c2023","id":6748,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6159:18:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},"value":" found at call #"},{"arguments":[{"baseExpression":{"id":6750,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6201:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6752,"indexExpression":{"hexValue":"33","id":6751,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6207:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6201:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6749,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6195:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6753,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6195:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20696e207363726970742023","id":6754,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6228:14:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},"value":" in script #"},{"arguments":[{"baseExpression":{"id":6756,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6266:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6758,"indexExpression":{"hexValue":"32","id":6757,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6272:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6266:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6755,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"6260:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6260:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2066726f6d20","id":6760,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6293:8:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},"value":" from "},{"arguments":[{"baseExpression":{"id":6762,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"6329:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6764,"indexExpression":{"hexValue":"31","id":6763,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6335:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6329:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6761,"name":"stageName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7283,"src":"6319:9:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6765,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6319:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"207374616765206973206e6f7420737570706f72746564","id":6766,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6356:25:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d","typeString":"literal_string \" stage is not supported\""},"value":" stage is not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7","typeString":"literal_string \"Operator code 0x\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","typeString":"literal_string \" found at call #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","typeString":"literal_string \" in script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","typeString":"literal_string \" from \""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d","typeString":"literal_string \" stage is not supported\""}],"expression":{"id":6740,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6054:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6741,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"6054:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6767,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6054:341:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"6039:356:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6769,"nodeType":"ExpressionStatement","src":"6039:356:32"}]}},"id":7021,"nodeType":"IfStatement","src":"5561:3500:32","trueBody":{"id":6728,"nodeType":"Block","src":"5637:305:32","statements":[{"expression":{"id":6726,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6703,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"5651:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"5363726970742023","id":6706,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5700:10:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100","typeString":"literal_string \"Script #\""},"value":"Script #"},{"arguments":[{"baseExpression":{"id":6708,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5734:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6710,"indexExpression":{"hexValue":"32","id":6709,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5740:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5734:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6707,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"5728:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5728:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2066726f6d2074686520","id":6712,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5761:12:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277","typeString":"literal_string \" from the \""},"value":" from the "},{"arguments":[{"baseExpression":{"id":6714,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5801:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6716,"indexExpression":{"hexValue":"31","id":6715,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5807:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5801:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6713,"name":"stageName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7283,"src":"5791:9:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5791:19:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20737461676520636f6e7461696e656420746f6f206d616e792063616c6c732028","id":6718,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5828:35:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a","typeString":"literal_string \" stage contained too many calls (\""},"value":" stage contained too many calls ("},{"arguments":[{"baseExpression":{"id":6720,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5887:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6722,"indexExpression":{"hexValue":"33","id":6721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5893:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5887:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6719,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"5881:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5881:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"29","id":6724,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5914:3:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","typeString":"literal_string \")\""},"value":")"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100","typeString":"literal_string \"Script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277","typeString":"literal_string \" from the \""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a","typeString":"literal_string \" stage contained too many calls (\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","typeString":"literal_string \")\""}],"expression":{"id":6704,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5666:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6705,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"5666:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5666:265:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"5651:280:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6727,"nodeType":"ExpressionStatement","src":"5651:280:32"}]}},"id":7022,"nodeType":"IfStatement","src":"5290:3771:32","trueBody":{"id":6692,"nodeType":"Block","src":"5369:186:32","statements":[{"expression":{"id":6690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6679,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"5383:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"546865207265717565737420636f6e7461696e656420746f6f206d616e7920736f75726365732028","id":6682,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5432:42:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2","typeString":"literal_string \"The request contained too many sources (\""},"value":"The request contained too many sources ("},{"arguments":[{"baseExpression":{"id":6684,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5499:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6686,"indexExpression":{"hexValue":"31","id":6685,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5505:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5499:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6683,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"5493:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6687,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5493:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"29","id":6688,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5527:3:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","typeString":"literal_string \")\""},"value":")"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2","typeString":"literal_string \"The request contained too many sources (\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","typeString":"literal_string \")\""}],"expression":{"id":6680,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5398:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6681,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"5398:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5398:146:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"5383:161:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6691,"nodeType":"ExpressionStatement","src":"5383:161:32"}]}},"id":7023,"nodeType":"IfStatement","src":"5008:4053:32","trueBody":{"id":6668,"nodeType":"Block","src":"5086:198:32","statements":[{"expression":{"id":6666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6655,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"5100:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"5468652043424f522076616c756520696e207363726970742023","id":6658,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5149:28:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d","typeString":"literal_string \"The CBOR value in script #\""},"value":"The CBOR value in script #"},{"arguments":[{"baseExpression":{"id":6660,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"5201:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6662,"indexExpression":{"hexValue":"31","id":6661,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5207:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5201:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6659,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"5195:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6663,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5195:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20776173206e6f7420612076616c696420446174612052657175657374","id":6664,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5228:31:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594","typeString":"literal_string \" was not a valid Data Request\""},"value":" was not a valid Data Request"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d","typeString":"literal_string \"The CBOR value in script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594","typeString":"literal_string \" was not a valid Data Request\""}],"expression":{"id":6656,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5115:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6657,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"5115:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5115:158:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"5100:173:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6667,"nodeType":"ExpressionStatement","src":"5100:173:32"}]}},"id":7024,"nodeType":"IfStatement","src":"4729:4332:32","trueBody":{"id":6644,"nodeType":"Block","src":"4807:195:32","statements":[{"expression":{"id":6642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6631,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"4821:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"5468652043424f522076616c756520696e207363726970742023","id":6634,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4870:28:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d","typeString":"literal_string \"The CBOR value in script #\""},"value":"The CBOR value in script #"},{"arguments":[{"baseExpression":{"id":6636,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"4922:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6638,"indexExpression":{"hexValue":"31","id":6637,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4928:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4922:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6635,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"4916:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4916:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20776173206e6f7420616e204172726179206f662063616c6c73","id":6640,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4949:28:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2","typeString":"literal_string \" was not an Array of calls\""},"value":" was not an Array of calls"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d","typeString":"literal_string \"The CBOR value in script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2","typeString":"literal_string \" was not an Array of calls\""}],"expression":{"id":6632,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4836:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6633,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"4836:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4836:155:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"4821:170:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6643,"nodeType":"ExpressionStatement","src":"4821:170:32"}]}},"id":7025,"nodeType":"IfStatement","src":"4461:4600:32","trueBody":{"id":6620,"nodeType":"Block","src":"4538:185:32","statements":[{"expression":{"id":6618,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":6607,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"4552:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"536f75726365207363726970742023","id":6610,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4601:17:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916","typeString":"literal_string \"Source script #\""},"value":"Source script #"},{"arguments":[{"baseExpression":{"id":6612,"name":"error","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6566,"src":"4642:5:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"id":6614,"indexExpression":{"hexValue":"31","id":6613,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4648:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4642:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":6611,"name":"_utoa","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7450,"src":"4636:5:32","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint64_$returns$_t_string_memory_ptr_$","typeString":"function (uint64) pure returns (string memory)"}},"id":6615,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4636:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"20776173206e6f7420612076616c69642043424f522076616c7565","id":6616,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4669:29:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1","typeString":"literal_string \" was not a valid CBOR value\""},"value":" was not a valid CBOR value"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916","typeString":"literal_string \"Source script #\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1","typeString":"literal_string \" was not a valid CBOR value\""}],"expression":{"id":6608,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4567:3:32","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":6609,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"4567:16:32","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":6617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4567:145:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"4552:160:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":6619,"nodeType":"ExpressionStatement","src":"4552:160:32"}]}},{"expression":{"components":[{"id":7026,"name":"errorCode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6587,"src":"9078:9:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},{"arguments":[{"id":7029,"name":"errorMessage","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":6595,"src":"9096:12:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":7028,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9089:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":7027,"name":"string","nodeType":"ElementaryTypeName","src":"9089:6:32","typeDescriptions":{}}},"id":7030,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9089:20:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"id":7031,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"9077:33:32","typeDescriptions":{"typeIdentifier":"t_tuple$_t_enum$_ErrorCodes_$4618_$_t_string_memory_ptr_$","typeString":"tuple(enum Witnet.ErrorCodes,string memory)"}},"functionReturnParameters":6561,"id":7032,"nodeType":"Return","src":"9070:40:32"}]},"documentation":{"id":6551,"nodeType":"StructuredDocumentation","src":"3589:441:32","text":"@notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\n @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\n @param _result An instance of `Witnet.Result`.\n @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."},"functionSelector":"8cc5eb54","id":7034,"implemented":true,"kind":"function","modifiers":[],"name":"asErrorMessage","nameLocation":"4044:14:32","nodeType":"FunctionDefinition","parameters":{"id":6555,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6554,"mutability":"mutable","name":"_result","nameLocation":"4080:7:32","nodeType":"VariableDeclaration","scope":7034,"src":"4059:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":6553,"nodeType":"UserDefinedTypeName","pathNode":{"id":6552,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"4059:13:32"},"referencedDeclaration":4342,"src":"4059:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"4058:30:32"},"returnParameters":{"id":6561,"nodeType":"ParameterList","parameters":[{"constant":false,"id":6558,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7034,"src":"4122:17:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":6557,"nodeType":"UserDefinedTypeName","pathNode":{"id":6556,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"4122:17:32"},"referencedDeclaration":4618,"src":"4122:17:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"},{"constant":false,"id":6560,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7034,"src":"4141:13:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":6559,"name":"string","nodeType":"ElementaryTypeName","src":"4141:6:32","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4121:34:32"},"scope":7528,"src":"4035:5082:32","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":7056,"nodeType":"Block","src":"9438:201:32","statements":[{"expression":{"arguments":[{"id":7047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9469:16:32","subExpression":{"expression":{"id":7045,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7038,"src":"9470:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7046,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"9470:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f2072656164206572726f7220636f64652066726f6d207375636365737366756c205769746e65742e526573756c74","id":7048,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9499:73:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d","typeString":"literal_string \"WitnetParserLib: Tried to read error code from successful Witnet.Result\""},"value":"WitnetParserLib: Tried to read error code from successful Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d","typeString":"literal_string \"WitnetParserLib: Tried to read error code from successful Witnet.Result\""}],"id":7044,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9448:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7049,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9448:134:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7050,"nodeType":"ExpressionStatement","src":"9448:134:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7051,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7038,"src":"9599:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"9599:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7053,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeUint64Array","nodeType":"MemberAccess","referencedDeclaration":6003,"src":"9599:31:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (uint64[] memory)"}},"id":7054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9599:33:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"functionReturnParameters":7043,"id":7055,"nodeType":"Return","src":"9592:40:32"}]},"documentation":{"id":7035,"nodeType":"StructuredDocumentation","src":"9123:203:32","text":"@notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\n @param _result An instance of `Witnet.Result`.\n @return The `uint64[]` raw error as decoded from the `Witnet.Result`."},"functionSelector":"0879730d","id":7057,"implemented":true,"kind":"function","modifiers":[],"name":"asRawError","nameLocation":"9340:10:32","nodeType":"FunctionDefinition","parameters":{"id":7039,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7038,"mutability":"mutable","name":"_result","nameLocation":"9372:7:32","nodeType":"VariableDeclaration","scope":7057,"src":"9351:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7037,"nodeType":"UserDefinedTypeName","pathNode":{"id":7036,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"9351:13:32"},"referencedDeclaration":4342,"src":"9351:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"9350:30:32"},"returnParameters":{"id":7043,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7042,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7057,"src":"9417:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":7040,"name":"uint64","nodeType":"ElementaryTypeName","src":"9417:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":7041,"nodeType":"ArrayTypeName","src":"9417:8:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"9416:17:32"},"scope":7528,"src":"9331:308:32","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":7077,"nodeType":"Block","src":"9932:158:32","statements":[{"expression":{"arguments":[{"expression":{"id":7067,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7061,"src":"9950:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7068,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"9950:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060626f6f6c602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9967:72:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207","typeString":"literal_string \"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207","typeString":"literal_string \"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\""}],"id":7066,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9942:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7070,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9942:98:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7071,"nodeType":"ExpressionStatement","src":"9942:98:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7072,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7061,"src":"10057:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7073,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"10057:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7074,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeBool","nodeType":"MemberAccess","referencedDeclaration":5334,"src":"10057:24:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_bool_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (bool)"}},"id":7075,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10057:26:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":7065,"id":7076,"nodeType":"Return","src":"10050:33:32"}]},"documentation":{"id":7058,"nodeType":"StructuredDocumentation","src":"9645:187:32","text":"@notice Decode a boolean value from a Witnet.Result as an `bool` value.\n @param _result An instance of Witnet.Result.\n @return The `bool` decoded from the Witnet.Result."},"functionSelector":"abf82f4c","id":7078,"implemented":true,"kind":"function","modifiers":[],"name":"asBool","nameLocation":"9846:6:32","nodeType":"FunctionDefinition","parameters":{"id":7062,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7061,"mutability":"mutable","name":"_result","nameLocation":"9874:7:32","nodeType":"VariableDeclaration","scope":7078,"src":"9853:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7060,"nodeType":"UserDefinedTypeName","pathNode":{"id":7059,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"9853:13:32"},"referencedDeclaration":4342,"src":"9853:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"9852:30:32"},"returnParameters":{"id":7065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7064,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7078,"src":"9922:4:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":7063,"name":"bool","nodeType":"ElementaryTypeName","src":"9922:4:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"9921:6:32"},"scope":7528,"src":"9837:253:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7098,"nodeType":"Block","src":"10780:164:32","statements":[{"expression":{"arguments":[{"expression":{"id":7088,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7082,"src":"10798:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"10798:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f2072656164206066697865643136602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7090,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10815:75:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a","typeString":"literal_string \"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a","typeString":"literal_string \"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\""}],"id":7087,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10790:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10790:101:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7092,"nodeType":"ExpressionStatement","src":"10790:101:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7093,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7082,"src":"10908:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7094,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"10908:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7095,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeFixed16","nodeType":"MemberAccess","referencedDeclaration":5521,"src":"10908:27:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_int32_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (int32)"}},"id":7096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10908:29:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"functionReturnParameters":7086,"id":7097,"nodeType":"Return","src":"10901:36:32"}]},"documentation":{"id":7079,"nodeType":"StructuredDocumentation","src":"10096:580:32","text":"@notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\n @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\n by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\n use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\n @param _result An instance of Witnet.Result.\n @return The `int128` decoded from the Witnet.Result."},"functionSelector":"d8868db6","id":7099,"implemented":true,"kind":"function","modifiers":[],"name":"asFixed16","nameLocation":"10690:9:32","nodeType":"FunctionDefinition","parameters":{"id":7083,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7082,"mutability":"mutable","name":"_result","nameLocation":"10721:7:32","nodeType":"VariableDeclaration","scope":7099,"src":"10700:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7081,"nodeType":"UserDefinedTypeName","pathNode":{"id":7080,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"10700:13:32"},"referencedDeclaration":4342,"src":"10700:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"10699:30:32"},"returnParameters":{"id":7086,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7085,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7099,"src":"10769:5:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"},"typeName":{"id":7084,"name":"int32","nodeType":"ElementaryTypeName","src":"10769:5:32","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"visibility":"internal"}],"src":"10768:7:32"},"scope":7528,"src":"10681:263:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7120,"nodeType":"Block","src":"11274:171:32","statements":[{"expression":{"arguments":[{"expression":{"id":7110,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7103,"src":"11292:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7111,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"11292:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060666978656431365b5d602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11309:77:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340","typeString":"literal_string \"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340","typeString":"literal_string \"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\""}],"id":7109,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11284:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11284:103:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7114,"nodeType":"ExpressionStatement","src":"11284:103:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7115,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7103,"src":"11404:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7116,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"11404:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeFixed16Array","nodeType":"MemberAccess","referencedDeclaration":5599,"src":"11404:32:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_array$_t_int32_$dyn_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (int32[] memory)"}},"id":7118,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11404:34:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[] memory"}},"functionReturnParameters":7108,"id":7119,"nodeType":"Return","src":"11397:41:32"}]},"documentation":{"id":7100,"nodeType":"StructuredDocumentation","src":"10950:206:32","text":"@notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\n @param _result An instance of Witnet.Result.\n @return The `int128[]` decoded from the Witnet.Result."},"functionSelector":"08efc097","id":7121,"implemented":true,"kind":"function","modifiers":[],"name":"asFixed16Array","nameLocation":"11170:14:32","nodeType":"FunctionDefinition","parameters":{"id":7104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7103,"mutability":"mutable","name":"_result","nameLocation":"11206:7:32","nodeType":"VariableDeclaration","scope":7121,"src":"11185:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7102,"nodeType":"UserDefinedTypeName","pathNode":{"id":7101,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"11185:13:32"},"referencedDeclaration":4342,"src":"11185:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"11184:30:32"},"returnParameters":{"id":7108,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7107,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7121,"src":"11254:14:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[]"},"typeName":{"baseType":{"id":7105,"name":"int32","nodeType":"ElementaryTypeName","src":"11254:5:32","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":7106,"nodeType":"ArrayTypeName","src":"11254:7:32","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}},"visibility":"internal"}],"src":"11253:16:32"},"scope":7528,"src":"11161:284:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7141,"nodeType":"Block","src":"11750:162:32","statements":[{"expression":{"arguments":[{"expression":{"id":7131,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7125,"src":"11768:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7132,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"11768:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060696e74313238602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7133,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11785:74:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5","typeString":"literal_string \"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5","typeString":"literal_string \"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\""}],"id":7130,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11760:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7134,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11760:100:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7135,"nodeType":"ExpressionStatement","src":"11760:100:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7136,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7125,"src":"11877:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7137,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"11877:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7138,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeInt128","nodeType":"MemberAccess","referencedDeclaration":5658,"src":"11877:26:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_int128_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (int128)"}},"id":7139,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11877:28:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"functionReturnParameters":7129,"id":7140,"nodeType":"Return","src":"11870:35:32"}]},"documentation":{"id":7122,"nodeType":"StructuredDocumentation","src":"11451:199:32","text":"@notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\n @param _result An instance of Witnet.Result.\n @return The `int128` decoded from the Witnet.Result."},"functionSelector":"c71db521","id":7142,"implemented":true,"kind":"function","modifiers":[],"name":"asInt128","nameLocation":"11664:8:32","nodeType":"FunctionDefinition","parameters":{"id":7126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7125,"mutability":"mutable","name":"_result","nameLocation":"11694:7:32","nodeType":"VariableDeclaration","scope":7142,"src":"11673:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7124,"nodeType":"UserDefinedTypeName","pathNode":{"id":7123,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"11673:13:32"},"referencedDeclaration":4342,"src":"11673:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"11672:30:32"},"returnParameters":{"id":7129,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7128,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7142,"src":"11738:6:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"},"typeName":{"id":7127,"name":"int128","nodeType":"ElementaryTypeName","src":"11738:6:32","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"visibility":"internal"}],"src":"11737:8:32"},"scope":7528,"src":"11655:257:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7163,"nodeType":"Block","src":"12250:169:32","statements":[{"expression":{"arguments":[{"expression":{"id":7153,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7146,"src":"12268:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7154,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"12268:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060696e743132385b5d602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7155,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12285:76:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de","typeString":"literal_string \"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de","typeString":"literal_string \"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\""}],"id":7152,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"12260:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12260:102:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7157,"nodeType":"ExpressionStatement","src":"12260:102:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7158,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7146,"src":"12379:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7159,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"12379:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7160,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeInt128Array","nodeType":"MemberAccess","referencedDeclaration":5736,"src":"12379:31:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_array$_t_int128_$dyn_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (int128[] memory)"}},"id":7161,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12379:33:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[] memory"}},"functionReturnParameters":7151,"id":7162,"nodeType":"Return","src":"12372:40:32"}]},"documentation":{"id":7143,"nodeType":"StructuredDocumentation","src":"11918:214:32","text":"@notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\n @param _result An instance of Witnet.Result.\n @return The `int128[]` decoded from the Witnet.Result."},"functionSelector":"fc853c37","id":7164,"implemented":true,"kind":"function","modifiers":[],"name":"asInt128Array","nameLocation":"12146:13:32","nodeType":"FunctionDefinition","parameters":{"id":7147,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7146,"mutability":"mutable","name":"_result","nameLocation":"12181:7:32","nodeType":"VariableDeclaration","scope":7164,"src":"12160:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7145,"nodeType":"UserDefinedTypeName","pathNode":{"id":7144,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"12160:13:32"},"referencedDeclaration":4342,"src":"12160:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"12159:30:32"},"returnParameters":{"id":7151,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7150,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7164,"src":"12229:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[]"},"typeName":{"baseType":{"id":7148,"name":"int128","nodeType":"ElementaryTypeName","src":"12229:6:32","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":7149,"nodeType":"ArrayTypeName","src":"12229:8:32","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}},"visibility":"internal"}],"src":"12228:17:32"},"scope":7528,"src":"12137:282:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7184,"nodeType":"Block","src":"12724:162:32","statements":[{"expression":{"arguments":[{"expression":{"id":7174,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7168,"src":"12742:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7175,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"12742:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060737472696e67602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7176,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"12759:74:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8","typeString":"literal_string \"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `string` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8","typeString":"literal_string \"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\""}],"id":7173,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"12734:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7177,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12734:100:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7178,"nodeType":"ExpressionStatement","src":"12734:100:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7179,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7168,"src":"12851:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7180,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"12851:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeString","nodeType":"MemberAccess","referencedDeclaration":5822,"src":"12851:26:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_string_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (string memory)"}},"id":7182,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"12851:28:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":7172,"id":7183,"nodeType":"Return","src":"12844:35:32"}]},"documentation":{"id":7165,"nodeType":"StructuredDocumentation","src":"12425:189:32","text":"@notice Decode a string value from a Witnet.Result as a `string` value.\n @param _result An instance of Witnet.Result.\n @return The `string` decoded from the Witnet.Result."},"functionSelector":"f417daf5","id":7185,"implemented":true,"kind":"function","modifiers":[],"name":"asString","nameLocation":"12628:8:32","nodeType":"FunctionDefinition","parameters":{"id":7169,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7168,"mutability":"mutable","name":"_result","nameLocation":"12658:7:32","nodeType":"VariableDeclaration","scope":7185,"src":"12637:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7167,"nodeType":"UserDefinedTypeName","pathNode":{"id":7166,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"12637:13:32"},"referencedDeclaration":4342,"src":"12637:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"12636:30:32"},"returnParameters":{"id":7172,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7171,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7185,"src":"12705:13:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":7170,"name":"string","nodeType":"ElementaryTypeName","src":"12705:6:32","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"12704:15:32"},"scope":7528,"src":"12619:267:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7206,"nodeType":"Block","src":"13214:169:32","statements":[{"expression":{"arguments":[{"expression":{"id":7196,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7189,"src":"13232:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7197,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"13232:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060737472696e675b5d602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13249:76:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395","typeString":"literal_string \"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395","typeString":"literal_string \"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\""}],"id":7195,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"13224:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7199,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13224:102:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7200,"nodeType":"ExpressionStatement","src":"13224:102:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7201,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7189,"src":"13343:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"13343:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7203,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeStringArray","nodeType":"MemberAccess","referencedDeclaration":5900,"src":"13343:31:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_array$_t_string_memory_ptr_$dyn_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (string memory[] memory)"}},"id":7204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13343:33:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string memory[] memory"}},"functionReturnParameters":7194,"id":7205,"nodeType":"Return","src":"13336:40:32"}]},"documentation":{"id":7186,"nodeType":"StructuredDocumentation","src":"12892:204:32","text":"@notice Decode an array of string values from a Witnet.Result as a `string[]` value.\n @param _result An instance of Witnet.Result.\n @return The `string[]` decoded from the Witnet.Result."},"functionSelector":"2d26b9e2","id":7207,"implemented":true,"kind":"function","modifiers":[],"name":"asStringArray","nameLocation":"13110:13:32","nodeType":"FunctionDefinition","parameters":{"id":7190,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7189,"mutability":"mutable","name":"_result","nameLocation":"13145:7:32","nodeType":"VariableDeclaration","scope":7207,"src":"13124:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7188,"nodeType":"UserDefinedTypeName","pathNode":{"id":7187,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"13124:13:32"},"referencedDeclaration":4342,"src":"13124:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"13123:30:32"},"returnParameters":{"id":7194,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7193,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7207,"src":"13193:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_string_memory_ptr_$dyn_memory_ptr","typeString":"string[]"},"typeName":{"baseType":{"id":7191,"name":"string","nodeType":"ElementaryTypeName","src":"13193:6:32","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"id":7192,"nodeType":"ArrayTypeName","src":"13193:8:32","typeDescriptions":{"typeIdentifier":"t_array$_t_string_storage_$dyn_storage_ptr","typeString":"string[]"}},"visibility":"internal"}],"src":"13192:17:32"},"scope":7528,"src":"13101:282:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7227,"nodeType":"Block","src":"13690:162:32","statements":[{"expression":{"arguments":[{"expression":{"id":7217,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7211,"src":"13708:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7218,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"13708:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f2072656164206075696e743634602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7219,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"13725:74:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1","typeString":"literal_string \"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1","typeString":"literal_string \"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\""}],"id":7216,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"13700:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13700:100:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7221,"nodeType":"ExpressionStatement","src":"13700:100:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7222,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7211,"src":"13817:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7223,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"13817:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7224,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeUint64","nodeType":"MemberAccess","referencedDeclaration":5925,"src":"13817:26:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_uint64_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (uint64)"}},"id":7225,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13817:28:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":7215,"id":7226,"nodeType":"Return","src":"13810:35:32"}]},"documentation":{"id":7208,"nodeType":"StructuredDocumentation","src":"13389:198:32","text":"@notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\n @param _result An instance of Witnet.Result.\n @return The `uint64` decoded from the Witnet.Result."},"functionSelector":"8233f9b3","id":7228,"implemented":true,"kind":"function","modifiers":[],"name":"asUint64","nameLocation":"13601:8:32","nodeType":"FunctionDefinition","parameters":{"id":7212,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7211,"mutability":"mutable","name":"_result","nameLocation":"13631:7:32","nodeType":"VariableDeclaration","scope":7228,"src":"13610:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7210,"nodeType":"UserDefinedTypeName","pathNode":{"id":7209,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"13610:13:32"},"referencedDeclaration":4342,"src":"13610:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"13609:30:32"},"returnParameters":{"id":7215,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7214,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7228,"src":"13678:6:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":7213,"name":"uint64","nodeType":"ElementaryTypeName","src":"13678:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"13677:8:32"},"scope":7528,"src":"13592:260:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7249,"nodeType":"Block","src":"14189:169:32","statements":[{"expression":{"arguments":[{"expression":{"id":7239,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7232,"src":"14207:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7240,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"success","nodeType":"MemberAccess","referencedDeclaration":4338,"src":"14207:15:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f2072656164206075696e7436345b5d602076616c75652066726f6d206572726f726564205769746e65742e526573756c74","id":7241,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14224:76:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0","typeString":"literal_string \"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\""},"value":"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0","typeString":"literal_string \"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\""}],"id":7238,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"14199:7:32","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7242,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14199:102:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7243,"nodeType":"ExpressionStatement","src":"14199:102:32"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"id":7244,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7232,"src":"14318:7:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result memory"}},"id":7245,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","referencedDeclaration":4341,"src":"14318:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_CBOR_$4356_memory_ptr","typeString":"struct Witnet.CBOR memory"}},"id":7246,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"decodeUint64Array","nodeType":"MemberAccess","referencedDeclaration":6003,"src":"14318:31:32","typeDescriptions":{"typeIdentifier":"t_function_delegatecall_pure$_t_struct$_CBOR_$4356_memory_ptr_$returns$_t_array$_t_uint64_$dyn_memory_ptr_$bound_to$_t_struct$_CBOR_$4356_memory_ptr_$","typeString":"function (struct Witnet.CBOR memory) pure returns (uint64[] memory)"}},"id":7247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"14318:33:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[] memory"}},"functionReturnParameters":7237,"id":7248,"nodeType":"Return","src":"14311:40:32"}]},"documentation":{"id":7229,"nodeType":"StructuredDocumentation","src":"13858:213:32","text":"@notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\n @param _result An instance of Witnet.Result.\n @return The `uint64[]` decoded from the Witnet.Result."},"functionSelector":"147e5c8f","id":7250,"implemented":true,"kind":"function","modifiers":[],"name":"asUint64Array","nameLocation":"14085:13:32","nodeType":"FunctionDefinition","parameters":{"id":7233,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7232,"mutability":"mutable","name":"_result","nameLocation":"14120:7:32","nodeType":"VariableDeclaration","scope":7250,"src":"14099:28:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_memory_ptr","typeString":"struct Witnet.Result"},"typeName":{"id":7231,"nodeType":"UserDefinedTypeName","pathNode":{"id":7230,"name":"Witnet.Result","nodeType":"IdentifierPath","referencedDeclaration":4342,"src":"14099:13:32"},"referencedDeclaration":4342,"src":"14099:13:32","typeDescriptions":{"typeIdentifier":"t_struct$_Result_$4342_storage_ptr","typeString":"struct Witnet.Result"}},"visibility":"internal"}],"src":"14098:30:32"},"returnParameters":{"id":7237,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7236,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7250,"src":"14168:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":7234,"name":"uint64","nodeType":"ElementaryTypeName","src":"14168:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":7235,"nodeType":"ArrayTypeName","src":"14168:8:32","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"14167:17:32"},"scope":7528,"src":"14076:282:32","stateMutability":"pure","virtual":false,"visibility":"external"},{"body":{"id":7282,"nodeType":"Block","src":"14701:268:32","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7258,"name":"_stageIndex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7253,"src":"14715:11:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":7259,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14730:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"14715:16:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7266,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7264,"name":"_stageIndex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7253,"src":"14786:11:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":7265,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14801:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"14786:16:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7272,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7270,"name":"_stageIndex","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7253,"src":"14859:11:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":7271,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14874:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"14859:16:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":7278,"nodeType":"Block","src":"14922:41:32","statements":[{"expression":{"hexValue":"756e6b6e6f776e","id":7276,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14943:9:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_24695ee963d29f0f52edfdea1e830d2fcfc9052d5ba70b194bddd0afbbc89765","typeString":"literal_string \"unknown\""},"value":"unknown"},"functionReturnParameters":7257,"id":7277,"nodeType":"Return","src":"14936:16:32"}]},"id":7279,"nodeType":"IfStatement","src":"14855:108:32","trueBody":{"id":7275,"nodeType":"Block","src":"14877:39:32","statements":[{"expression":{"hexValue":"74616c6c79","id":7273,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14898:7:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_c9096ffe4756b6ccced4fc07961d29e9d57f7de283a8d6224c11c5d8988e3919","typeString":"literal_string \"tally\""},"value":"tally"},"functionReturnParameters":7257,"id":7274,"nodeType":"Return","src":"14891:14:32"}]}},"id":7280,"nodeType":"IfStatement","src":"14782:181:32","trueBody":{"id":7269,"nodeType":"Block","src":"14804:45:32","statements":[{"expression":{"hexValue":"6167677265676174696f6e","id":7267,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14825:13:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_dc92b2e8ef7e132eebc3452d03e1add5aaceb961fed4dd2a4126277a08b27590","typeString":"literal_string \"aggregation\""},"value":"aggregation"},"functionReturnParameters":7257,"id":7268,"nodeType":"Return","src":"14818:20:32"}]}},"id":7281,"nodeType":"IfStatement","src":"14711:252:32","trueBody":{"id":7263,"nodeType":"Block","src":"14733:43:32","statements":[{"expression":{"hexValue":"72657472696576616c","id":7261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14754:11:32","typeDescriptions":{"typeIdentifier":"t_stringliteral_74e3c78e4bb699a6f9b494288786c08470d585803136b96b68f88fb614184b7c","typeString":"literal_string \"retrieval\""},"value":"retrieval"},"functionReturnParameters":7257,"id":7262,"nodeType":"Return","src":"14747:18:32"}]}}]},"documentation":{"id":7251,"nodeType":"StructuredDocumentation","src":"14364:237:32","text":"@notice Convert a stage index number into the name of the matching Witnet request stage.\n @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\n @return The name of the matching stage."},"functionSelector":"cb5371c0","id":7283,"implemented":true,"kind":"function","modifiers":[],"name":"stageName","nameLocation":"14615:9:32","nodeType":"FunctionDefinition","parameters":{"id":7254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7253,"mutability":"mutable","name":"_stageIndex","nameLocation":"14632:11:32","nodeType":"VariableDeclaration","scope":7283,"src":"14625:18:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":7252,"name":"uint64","nodeType":"ElementaryTypeName","src":"14625:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"14624:20:32"},"returnParameters":{"id":7257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7256,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7283,"src":"14682:13:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":7255,"name":"string","nodeType":"ElementaryTypeName","src":"14682:6:32","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"14681:15:32"},"scope":7528,"src":"14606:363:32","stateMutability":"pure","virtual":false,"visibility":"public"},{"body":{"id":7297,"nodeType":"Block","src":"15290:56:32","statements":[{"expression":{"arguments":[{"id":7294,"name":"_discriminant","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7286,"src":"15325:13:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"expression":{"id":7292,"name":"Witnet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4619,"src":"15307:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Witnet_$4619_$","typeString":"type(library Witnet)"}},"id":7293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"ErrorCodes","nodeType":"MemberAccess","referencedDeclaration":4618,"src":"15307:17:32","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ErrorCodes_$4618_$","typeString":"type(enum Witnet.ErrorCodes)"}},"id":7295,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15307:32:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"functionReturnParameters":7291,"id":7296,"nodeType":"Return","src":"15300:39:32"}]},"documentation":{"id":7284,"nodeType":"StructuredDocumentation","src":"14975:189:32","text":"@notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\n @param _discriminant The numeric identifier of an error.\n @return A member of `Witnet.ErrorCodes`."},"id":7298,"implemented":true,"kind":"function","modifiers":[],"name":"_supportedErrorOrElseUnknown","nameLocation":"15178:28:32","nodeType":"FunctionDefinition","parameters":{"id":7287,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7286,"mutability":"mutable","name":"_discriminant","nameLocation":"15214:13:32","nodeType":"VariableDeclaration","scope":7298,"src":"15207:20:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":7285,"name":"uint64","nodeType":"ElementaryTypeName","src":"15207:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"15206:22:32"},"returnParameters":{"id":7291,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7290,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7298,"src":"15267:17:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"},"typeName":{"id":7289,"nodeType":"UserDefinedTypeName","pathNode":{"id":7288,"name":"Witnet.ErrorCodes","nodeType":"IdentifierPath","referencedDeclaration":4618,"src":"15267:17:32"},"referencedDeclaration":4618,"src":"15267:17:32","typeDescriptions":{"typeIdentifier":"t_enum$_ErrorCodes_$4618","typeString":"enum Witnet.ErrorCodes"}},"visibility":"internal"}],"src":"15266:19:32"},"scope":7528,"src":"15169:177:32","stateMutability":"pure","virtual":false,"visibility":"private"},{"body":{"id":7449,"nodeType":"Block","src":"15674:609:32","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7308,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7306,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"15688:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"3130","id":7307,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15693:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"15688:7:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7338,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7336,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"15837:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"313030","id":7337,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15842:3:32","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"src":"15837:8:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":7446,"nodeType":"Block","src":"16037:240:32","statements":[{"assignments":[7385],"declarations":[{"constant":false,"id":7385,"mutability":"mutable","name":"b3","nameLocation":"16064:2:32","nodeType":"VariableDeclaration","scope":7446,"src":"16051:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":7384,"name":"bytes","nodeType":"ElementaryTypeName","src":"16051:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":7390,"initialValue":{"arguments":[{"hexValue":"33","id":7388,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16079:1:32","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"}],"id":7387,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"16069:9:32","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":7386,"name":"bytes","nodeType":"ElementaryTypeName","src":"16073:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":7389,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16069:12:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"16051:30:32"},{"expression":{"id":7405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7391,"name":"b3","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7385,"src":"16095:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7393,"indexExpression":{"hexValue":"30","id":7392,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16098:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16095:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7398,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"16116:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"313030","id":7399,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16121:3:32","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"src":"16116:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7397,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16110:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7396,"name":"uint8","nodeType":"ElementaryTypeName","src":"16110:5:32","typeDescriptions":{}}},"id":7401,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16110:15:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7402,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16128:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"16110:20:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7395,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16103:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7394,"name":"bytes1","nodeType":"ElementaryTypeName","src":"16103:6:32","typeDescriptions":{}}},"id":7404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16103:28:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"16095:36:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7406,"nodeType":"ExpressionStatement","src":"16095:36:32"},{"expression":{"id":7423,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7407,"name":"b3","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7385,"src":"16145:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7409,"indexExpression":{"hexValue":"31","id":7408,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16148:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16145:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7416,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7414,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"16166:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"%","rightExpression":{"hexValue":"313030","id":7415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16171:3:32","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"src":"16166:8:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"3130","id":7417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16177:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"16166:13:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7413,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16160:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7412,"name":"uint8","nodeType":"ElementaryTypeName","src":"16160:5:32","typeDescriptions":{}}},"id":7419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16160:20:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16183:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"16160:25:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7411,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16153:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7410,"name":"bytes1","nodeType":"ElementaryTypeName","src":"16153:6:32","typeDescriptions":{}}},"id":7422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16153:33:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"16145:41:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7424,"nodeType":"ExpressionStatement","src":"16145:41:32"},{"expression":{"id":7439,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7425,"name":"b3","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7385,"src":"16200:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7427,"indexExpression":{"hexValue":"32","id":7426,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16203:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16200:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7437,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7434,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7432,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"16221:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"%","rightExpression":{"hexValue":"3130","id":7433,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16226:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"16221:7:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7431,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16215:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7430,"name":"uint8","nodeType":"ElementaryTypeName","src":"16215:5:32","typeDescriptions":{}}},"id":7435,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16215:14:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7436,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16232:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"16215:19:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7429,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16208:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7428,"name":"bytes1","nodeType":"ElementaryTypeName","src":"16208:6:32","typeDescriptions":{}}},"id":7438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16208:27:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"16200:35:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7440,"nodeType":"ExpressionStatement","src":"16200:35:32"},{"expression":{"arguments":[{"id":7443,"name":"b3","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7385,"src":"16263:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":7442,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16256:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":7441,"name":"string","nodeType":"ElementaryTypeName","src":"16256:6:32","typeDescriptions":{}}},"id":7444,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16256:10:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":7305,"id":7445,"nodeType":"Return","src":"16249:17:32"}]},"id":7447,"nodeType":"IfStatement","src":"15833:444:32","trueBody":{"id":7383,"nodeType":"Block","src":"15847:184:32","statements":[{"assignments":[7340],"declarations":[{"constant":false,"id":7340,"mutability":"mutable","name":"b2","nameLocation":"15874:2:32","nodeType":"VariableDeclaration","scope":7383,"src":"15861:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":7339,"name":"bytes","nodeType":"ElementaryTypeName","src":"15861:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":7345,"initialValue":{"arguments":[{"hexValue":"32","id":7343,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15889:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":7342,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"15879:9:32","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":7341,"name":"bytes","nodeType":"ElementaryTypeName","src":"15883:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":7344,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15879:12:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"15861:30:32"},{"expression":{"id":7360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7346,"name":"b2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7340,"src":"15905:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7348,"indexExpression":{"hexValue":"30","id":7347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15908:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15905:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7353,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"15926:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"3130","id":7354,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15931:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"15926:7:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7352,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15920:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7351,"name":"uint8","nodeType":"ElementaryTypeName","src":"15920:5:32","typeDescriptions":{}}},"id":7356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15920:14:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7357,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15937:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"15920:19:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7350,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15913:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7349,"name":"bytes1","nodeType":"ElementaryTypeName","src":"15913:6:32","typeDescriptions":{}}},"id":7359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15913:27:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"15905:35:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7361,"nodeType":"ExpressionStatement","src":"15905:35:32"},{"expression":{"id":7376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7362,"name":"b2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7340,"src":"15954:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7364,"indexExpression":{"hexValue":"31","id":7363,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15957:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15954:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7369,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"15975:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"%","rightExpression":{"hexValue":"3130","id":7370,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15980:2:32","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"src":"15975:7:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7368,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15969:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7367,"name":"uint8","nodeType":"ElementaryTypeName","src":"15969:5:32","typeDescriptions":{}}},"id":7372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15969:14:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15986:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"15969:19:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7366,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15962:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7365,"name":"bytes1","nodeType":"ElementaryTypeName","src":"15962:6:32","typeDescriptions":{}}},"id":7375,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15962:27:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"15954:35:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7377,"nodeType":"ExpressionStatement","src":"15954:35:32"},{"expression":{"arguments":[{"id":7380,"name":"b2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7340,"src":"16017:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":7379,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16010:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":7378,"name":"string","nodeType":"ElementaryTypeName","src":"16010:6:32","typeDescriptions":{}}},"id":7381,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16010:10:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":7305,"id":7382,"nodeType":"Return","src":"16003:17:32"}]}},"id":7448,"nodeType":"IfStatement","src":"15684:593:32","trueBody":{"id":7335,"nodeType":"Block","src":"15697:130:32","statements":[{"assignments":[7310],"declarations":[{"constant":false,"id":7310,"mutability":"mutable","name":"b1","nameLocation":"15724:2:32","nodeType":"VariableDeclaration","scope":7335,"src":"15711:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":7309,"name":"bytes","nodeType":"ElementaryTypeName","src":"15711:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":7315,"initialValue":{"arguments":[{"hexValue":"31","id":7313,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15739:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"}],"id":7312,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"15729:9:32","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":7311,"name":"bytes","nodeType":"ElementaryTypeName","src":"15733:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":7314,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15729:12:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"15711:30:32"},{"expression":{"id":7328,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7316,"name":"b1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7310,"src":"15755:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7318,"indexExpression":{"hexValue":"30","id":7317,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15758:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"15755:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":7323,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7301,"src":"15776:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7322,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15770:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7321,"name":"uint8","nodeType":"ElementaryTypeName","src":"15770:5:32","typeDescriptions":{}}},"id":7324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15770:9:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7325,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15782:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"15770:14:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15763:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7319,"name":"bytes1","nodeType":"ElementaryTypeName","src":"15763:6:32","typeDescriptions":{}}},"id":7327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15763:22:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"15755:30:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7329,"nodeType":"ExpressionStatement","src":"15755:30:32"},{"expression":{"arguments":[{"id":7332,"name":"b1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7310,"src":"15813:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":7331,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15806:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":7330,"name":"string","nodeType":"ElementaryTypeName","src":"15806:6:32","typeDescriptions":{}}},"id":7333,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"15806:10:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":7305,"id":7334,"nodeType":"Return","src":"15799:17:32"}]}}]},"documentation":{"id":7299,"nodeType":"StructuredDocumentation","src":"15352:234:32","text":"@notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\n three less significant decimal values.\n @param _u A `uint64` value.\n @return The `string` representing its decimal value."},"id":7450,"implemented":true,"kind":"function","modifiers":[],"name":"_utoa","nameLocation":"15600:5:32","nodeType":"FunctionDefinition","parameters":{"id":7302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7301,"mutability":"mutable","name":"_u","nameLocation":"15613:2:32","nodeType":"VariableDeclaration","scope":7450,"src":"15606:9:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":7300,"name":"uint64","nodeType":"ElementaryTypeName","src":"15606:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"15605:11:32"},"returnParameters":{"id":7305,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7304,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7450,"src":"15655:13:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":7303,"name":"string","nodeType":"ElementaryTypeName","src":"15655:6:32","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"15654:15:32"},"scope":7528,"src":"15591:692:32","stateMutability":"pure","virtual":false,"visibility":"private"},{"body":{"id":7526,"nodeType":"Block","src":"16602:294:32","statements":[{"assignments":[7459],"declarations":[{"constant":false,"id":7459,"mutability":"mutable","name":"b2","nameLocation":"16625:2:32","nodeType":"VariableDeclaration","scope":7526,"src":"16612:15:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":7458,"name":"bytes","nodeType":"ElementaryTypeName","src":"16612:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":7464,"initialValue":{"arguments":[{"hexValue":"32","id":7462,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16640:1:32","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"}],"id":7461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"16630:9:32","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":7460,"name":"bytes","nodeType":"ElementaryTypeName","src":"16634:5:32","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":7463,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16630:12:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"16612:30:32"},{"assignments":[7466],"declarations":[{"constant":false,"id":7466,"mutability":"mutable","name":"d0","nameLocation":"16658:2:32","nodeType":"VariableDeclaration","scope":7526,"src":"16652:8:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":7465,"name":"uint8","nodeType":"ElementaryTypeName","src":"16652:5:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":7475,"initialValue":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7471,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7469,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7453,"src":"16669:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"3136","id":7470,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16674:2:32","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},"src":"16669:7:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7468,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16663:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7467,"name":"uint8","nodeType":"ElementaryTypeName","src":"16663:5:32","typeDescriptions":{}}},"id":7472,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16663:14:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7473,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16680:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"16663:19:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"VariableDeclarationStatement","src":"16652:30:32"},{"assignments":[7477],"declarations":[{"constant":false,"id":7477,"mutability":"mutable","name":"d1","nameLocation":"16698:2:32","nodeType":"VariableDeclaration","scope":7526,"src":"16692:8:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":7476,"name":"uint8","nodeType":"ElementaryTypeName","src":"16692:5:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"id":7486,"initialValue":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":7482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7480,"name":"_u","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7453,"src":"16709:2:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"%","rightExpression":{"hexValue":"3136","id":7481,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16714:2:32","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},"src":"16709:7:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":7479,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16703:5:32","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":7478,"name":"uint8","nodeType":"ElementaryTypeName","src":"16703:5:32","typeDescriptions":{}}},"id":7483,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16703:14:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3438","id":7484,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16720:2:32","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"},"src":"16703:19:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"VariableDeclarationStatement","src":"16692:30:32"},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7489,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7487,"name":"d0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7466,"src":"16736:2:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"3537","id":7488,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16741:2:32","typeDescriptions":{"typeIdentifier":"t_rational_57_by_1","typeString":"int_const 57"},"value":"57"},"src":"16736:7:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":7494,"nodeType":"IfStatement","src":"16732:32:32","trueBody":{"expression":{"id":7492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7490,"name":"d0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7466,"src":"16757:2:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"37","id":7491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16763:1:32","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"16757:7:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":7493,"nodeType":"ExpressionStatement","src":"16757:7:32"}},{"condition":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":7497,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7495,"name":"d1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7477,"src":"16778:2:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"3537","id":7496,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16783:2:32","typeDescriptions":{"typeIdentifier":"t_rational_57_by_1","typeString":"int_const 57"},"value":"57"},"src":"16778:7:32","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":7502,"nodeType":"IfStatement","src":"16774:32:32","trueBody":{"expression":{"id":7500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7498,"name":"d1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7477,"src":"16799:2:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"37","id":7499,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16805:1:32","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"16799:7:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":7501,"nodeType":"ExpressionStatement","src":"16799:7:32"}},{"expression":{"id":7510,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7503,"name":"b2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7459,"src":"16816:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7505,"indexExpression":{"hexValue":"30","id":7504,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16819:1:32","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16816:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":7508,"name":"d0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7466,"src":"16831:2:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7507,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16824:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7506,"name":"bytes1","nodeType":"ElementaryTypeName","src":"16824:6:32","typeDescriptions":{}}},"id":7509,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16824:10:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"16816:18:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7511,"nodeType":"ExpressionStatement","src":"16816:18:32"},{"expression":{"id":7519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":7512,"name":"b2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7459,"src":"16844:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":7514,"indexExpression":{"hexValue":"31","id":7513,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16847:1:32","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16844:5:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":7517,"name":"d1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7477,"src":"16859:2:32","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":7516,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16852:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":7515,"name":"bytes1","nodeType":"ElementaryTypeName","src":"16852:6:32","typeDescriptions":{}}},"id":7518,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16852:10:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"16844:18:32","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":7520,"nodeType":"ExpressionStatement","src":"16844:18:32"},{"expression":{"arguments":[{"id":7523,"name":"b2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7459,"src":"16886:2:32","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":7522,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16879:6:32","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":7521,"name":"string","nodeType":"ElementaryTypeName","src":"16879:6:32","typeDescriptions":{}}},"id":7524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"16879:10:32","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":7457,"id":7525,"nodeType":"Return","src":"16872:17:32"}]},"documentation":{"id":7451,"nodeType":"StructuredDocumentation","src":"16289:223:32","text":"@notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\n @param _u A `uint64` value.\n @return The `string` representing its hexadecimal value."},"id":7527,"implemented":true,"kind":"function","modifiers":[],"name":"_utohex","nameLocation":"16526:7:32","nodeType":"FunctionDefinition","parameters":{"id":7454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7453,"mutability":"mutable","name":"_u","nameLocation":"16541:2:32","nodeType":"VariableDeclaration","scope":7527,"src":"16534:9:32","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":7452,"name":"uint64","nodeType":"ElementaryTypeName","src":"16534:6:32","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"16533:11:32"},"returnParameters":{"id":7457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7456,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7527,"src":"16583:13:32","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":7455,"name":"string","nodeType":"ElementaryTypeName","src":"16583:6:32","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"16582:15:32"},"scope":7528,"src":"16517:379:32","stateMutability":"pure","virtual":false,"visibility":"private"}],"scope":7529,"src":"375:16523:32","usedErrors":[]}],"src":"33:16866:32"},"id":32},"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol","exportedSymbols":{"Clonable":[7948],"Context":[7979],"IWitnetRandomness":[3813],"IWitnetRequest":[3829],"IWitnetRequestBoardEvents":[3912],"IWitnetRequestBoardReporter":[3963],"IWitnetRequestBoardRequestor":[3993],"IWitnetRequestBoardView":[4106],"IWitnetRequestParser":[4284],"Initializable":[7995],"Ownable":[8100],"Proxiable":[8160],"UsingWitnet":[453],"Witnet":[4619],"WitnetRandomness":[1271],"WitnetRandomnessMock":[7838],"WitnetRequestBoard":[481],"WitnetRequestMalleableBase":[9039],"WitnetRequestRandomness":[9072]},"id":7839,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":7530,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:33"},{"id":7531,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"65:33:33"},{"absolutePath":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol","file":"../apps/WitnetRandomness.sol","id":7532,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":7839,"sourceUnit":1272,"src":"100:38:33","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":7534,"name":"WitnetRandomness","nodeType":"IdentifierPath","referencedDeclaration":1271,"src":"554:16:33"},"id":7535,"nodeType":"InheritanceSpecifier","src":"554:16:33"}],"contractDependencies":[9072],"contractKind":"contract","documentation":{"id":7533,"nodeType":"StructuredDocumentation","src":"140:369:33","text":"@title WitnetRandomness mock contract implementation. \n @dev TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. \n @dev ON SUPPORTED TESTNETS, PLEASE USE THE `WitnetRandomness`\n @dev CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.\n @dev SEE: https://docs.witnet.io/smart-contracts/witnet-randomness-oracle/contract-addresses\n @author Witnet Foundation."},"fullyImplemented":true,"id":7838,"linearizedBaseContracts":[7838,1271,7948,7995,453,3813],"name":"WitnetRandomnessMock","nameLocation":"518:20:33","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":7537,"mutability":"mutable","name":"__mockRandomizeLatencyBlocks","nameLocation":"592:28:33","nodeType":"VariableDeclaration","scope":7838,"src":"577:43:33","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":7536,"name":"uint8","nodeType":"ElementaryTypeName","src":"577:5:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":7539,"mutability":"mutable","name":"__mockRandomizeFee","nameLocation":"643:18:33","nodeType":"VariableDeclaration","scope":7838,"src":"626:35:33","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7538,"name":"uint256","nodeType":"ElementaryTypeName","src":"626:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":7541,"mutability":"mutable","name":"__mockRandomizeLatestId","nameLocation":"684:23:33","nodeType":"VariableDeclaration","scope":7838,"src":"667:40:33","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7540,"name":"uint256","nodeType":"ElementaryTypeName","src":"667:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"body":{"id":7565,"nodeType":"Block","src":"1224:123:33","statements":[{"expression":{"id":7559,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7557,"name":"__mockRandomizeLatencyBlocks","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7537,"src":"1234:28:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":7558,"name":"_mockRandomizeLatencyBlocks","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7544,"src":"1265:27:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"1234:58:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":7560,"nodeType":"ExpressionStatement","src":"1234:58:33"},{"expression":{"id":7563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7561,"name":"__mockRandomizeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7539,"src":"1302:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":7562,"name":"_mockRandomizeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7546,"src":"1323:17:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1302:38:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7564,"nodeType":"ExpressionStatement","src":"1302:38:33"}]},"documentation":{"id":7542,"nodeType":"StructuredDocumentation","src":"714:294:33","text":"Constructor: new WitnetRandomnessMock contract\n @param _mockRandomizeLatencyBlocks Mocked number of blocks in which a new randomness will be provided after `randomize()`\n @param _mockRandomizeFee Mocked randomize fee (will be constant no matter what tx gas price is provided)."},"id":7566,"implemented":true,"kind":"constructor","modifiers":[{"arguments":[{"arguments":[{"arguments":[{"hexValue":"307846466646664666664646666666464666464666464646464666664646466666666646664646466646","id":7552,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1174:42:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":7551,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:8:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":7550,"name":"address","nodeType":"ElementaryTypeName","src":"1166:8:33","stateMutability":"payable","typeDescriptions":{}}},"id":7553,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1166:51:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":7549,"name":"WitnetRequestBoard","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":481,"src":"1147:18:33","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_WitnetRequestBoard_$481_$","typeString":"type(contract WitnetRequestBoard)"}},"id":7554,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1147:71:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestBoard_$481","typeString":"contract WitnetRequestBoard"}}],"id":7555,"kind":"baseConstructorSpecifier","modifierName":{"id":7548,"name":"WitnetRandomness","nodeType":"IdentifierPath","referencedDeclaration":1271,"src":"1130:16:33"},"nodeType":"ModifierInvocation","src":"1130:89:33"}],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":7547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7544,"mutability":"mutable","name":"_mockRandomizeLatencyBlocks","nameLocation":"1045:27:33","nodeType":"VariableDeclaration","scope":7566,"src":"1039:33:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":7543,"name":"uint8","nodeType":"ElementaryTypeName","src":"1039:5:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":7546,"mutability":"mutable","name":"_mockRandomizeFee","nameLocation":"1094:17:33","nodeType":"VariableDeclaration","scope":7566,"src":"1086:25:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7545,"name":"uint256","nodeType":"ElementaryTypeName","src":"1086:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1025:96:33"},"returnParameters":{"id":7556,"nodeType":"ParameterList","parameters":[],"src":"1224:0:33"},"scope":7838,"src":"1013:334:33","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[553],"body":{"id":7577,"nodeType":"Block","src":"1568:42:33","statements":[{"expression":{"id":7575,"name":"__mockRandomizeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7539,"src":"1585:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":7574,"id":7576,"nodeType":"Return","src":"1578:25:33"}]},"documentation":{"id":7567,"nodeType":"StructuredDocumentation","src":"1353:96:33","text":"Returns mocked amount of wei required to be paid as a fee when requesting new randomization."},"functionSelector":"a60ee268","id":7578,"implemented":true,"kind":"function","modifiers":[],"name":"estimateRandomizeFee","nameLocation":"1463:20:33","nodeType":"FunctionDefinition","overrides":{"id":7571,"nodeType":"OverrideSpecifier","overrides":[],"src":"1529:8:33"},"parameters":{"id":7570,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7569,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7578,"src":"1484:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7568,"name":"uint256","nodeType":"ElementaryTypeName","src":"1484:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1483:9:33"},"returnParameters":{"id":7574,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7573,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7578,"src":"1555:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7572,"name":"uint256","nodeType":"ElementaryTypeName","src":"1555:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1554:9:33"},"scope":7838,"src":"1454:156:33","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[596],"body":{"id":7620,"nodeType":"Block","src":"2526:206:33","statements":[{"assignments":[7595],"declarations":[{"constant":false,"id":7595,"mutability":"mutable","name":"_data","nameLocation":"2558:5:33","nodeType":"VariableDeclaration","scope":7620,"src":"2536:27:33","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":7594,"nodeType":"UserDefinedTypeName","pathNode":{"id":7593,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"2536:13:33"},"referencedDeclaration":514,"src":"2536:13:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":7599,"initialValue":{"baseExpression":{"id":7596,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"2566:12:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":7598,"indexExpression":{"id":7597,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7581,"src":"2579:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2566:20:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2536:50:33"},{"expression":{"id":7603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7600,"name":"_id","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7587,"src":"2596:3:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7601,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7595,"src":"2602:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7602,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"2602:19:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2596:25:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7604,"nodeType":"ExpressionStatement","src":"2596:25:33"},{"expression":{"id":7608,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7605,"name":"_from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7585,"src":"2631:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7606,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7595,"src":"2639:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7607,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"2639:10:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2631:18:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":7609,"nodeType":"ExpressionStatement","src":"2631:18:33"},{"expression":{"id":7613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7610,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7589,"src":"2659:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7611,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7595,"src":"2672:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7612,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"2672:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2659:28:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7614,"nodeType":"ExpressionStatement","src":"2659:28:33"},{"expression":{"id":7618,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7615,"name":"_nextBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7591,"src":"2697:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7616,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7595,"src":"2710:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7617,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"2710:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2697:28:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7619,"nodeType":"ExpressionStatement","src":"2697:28:33"}]},"documentation":{"id":7579,"nodeType":"StructuredDocumentation","src":"1616:669:33","text":"Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\n @dev Returns zero values if no randomness request was actually posted within a given block.\n @param _block Block number whose randomness request is being queried for.\n @return _from Address from which the latest randomness request was posted.\n @return _id Unique request identifier as provided by the WRB.\n @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\n @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none."},"functionSelector":"a3252f68","id":7621,"implemented":true,"kind":"function","modifiers":[],"name":"getRandomizeData","nameLocation":"2299:16:33","nodeType":"FunctionDefinition","overrides":{"id":7583,"nodeType":"OverrideSpecifier","overrides":[],"src":"2370:8:33"},"parameters":{"id":7582,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7581,"mutability":"mutable","name":"_block","nameLocation":"2324:6:33","nodeType":"VariableDeclaration","scope":7621,"src":"2316:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7580,"name":"uint256","nodeType":"ElementaryTypeName","src":"2316:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2315:16:33"},"returnParameters":{"id":7592,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7585,"mutability":"mutable","name":"_from","nameLocation":"2417:5:33","nodeType":"VariableDeclaration","scope":7621,"src":"2409:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":7584,"name":"address","nodeType":"ElementaryTypeName","src":"2409:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":7587,"mutability":"mutable","name":"_id","nameLocation":"2444:3:33","nodeType":"VariableDeclaration","scope":7621,"src":"2436:11:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7586,"name":"uint256","nodeType":"ElementaryTypeName","src":"2436:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":7589,"mutability":"mutable","name":"_prevBlock","nameLocation":"2469:10:33","nodeType":"VariableDeclaration","scope":7621,"src":"2461:18:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7588,"name":"uint256","nodeType":"ElementaryTypeName","src":"2461:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":7591,"mutability":"mutable","name":"_nextBlock","nameLocation":"2501:10:33","nodeType":"VariableDeclaration","scope":7621,"src":"2493:18:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7590,"name":"uint256","nodeType":"ElementaryTypeName","src":"2493:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2395:126:33"},"scope":7838,"src":"2290:442:33","stateMutability":"view","virtual":true,"visibility":"external"},{"baseFunctions":[683],"body":{"id":7675,"nodeType":"Block","src":"3602:409:33","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":7638,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":7630,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"3616:12:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":7632,"indexExpression":{"id":7631,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7624,"src":"3629:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3616:20:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":7633,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"3616:25:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":7636,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3653:1:33","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":7635,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3645:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7634,"name":"address","nodeType":"ElementaryTypeName","src":"3645:7:33","typeDescriptions":{}}},"id":7637,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3645:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3616:39:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":7646,"nodeType":"IfStatement","src":"3612:109:33","trueBody":{"id":7645,"nodeType":"Block","src":"3657:64:33","statements":[{"expression":{"id":7643,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7639,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7624,"src":"3671:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":7641,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7624,"src":"3703:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":7640,"name":"getRandomnessNextBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":714,"src":"3680:22:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":7642,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3680:30:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3671:39:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7644,"nodeType":"ExpressionStatement","src":"3671:39:33"}]}},{"assignments":[7648],"declarations":[{"constant":false,"id":7648,"mutability":"mutable","name":"_queryId","nameLocation":"3738:8:33","nodeType":"VariableDeclaration","scope":7675,"src":"3730:16:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7647,"name":"uint256","nodeType":"ElementaryTypeName","src":"3730:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":7653,"initialValue":{"expression":{"baseExpression":{"id":7649,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"3749:12:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":7651,"indexExpression":{"id":7650,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7624,"src":"3762:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3749:20:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":7652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"3749:34:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3730:53:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7655,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7648,"src":"3801:8:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":7656,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3813:1:33","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3801:13:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573734d6f636b3a206e6f742072616e646f6d697a6564","id":7658,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3816:38:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892","typeString":"literal_string \"WitnetRandomnessMock: not randomized\""},"value":"WitnetRandomnessMock: not randomized"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892","typeString":"literal_string \"WitnetRandomnessMock: not randomized\""}],"id":7654,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3793:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3793:62:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7660,"nodeType":"ExpressionStatement","src":"3793:62:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":7662,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"3873:5:33","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":7663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"3873:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7664,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7624,"src":"3889:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":7665,"name":"__mockRandomizeLatencyBlocks","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7537,"src":"3898:28:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"3889:37:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3873:53:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573734d6f636b3a2070656e64696e672072616e646f6d697a65","id":7668,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3928:41:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18","typeString":"literal_string \"WitnetRandomnessMock: pending randomize\""},"value":"WitnetRandomnessMock: pending randomize"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18","typeString":"literal_string \"WitnetRandomnessMock: pending randomize\""}],"id":7661,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3865:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3865:105:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7670,"nodeType":"ExpressionStatement","src":"3865:105:33"},{"expression":{"arguments":[{"id":7672,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7624,"src":"3997:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":7671,"name":"blockhash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-5,"src":"3987:9:33","typeDescriptions":{"typeIdentifier":"t_function_blockhash_view$_t_uint256_$returns$_t_bytes32_$","typeString":"function (uint256) view returns (bytes32)"}},"id":7673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3987:17:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":7629,"id":7674,"nodeType":"Return","src":"3980:24:33"}]},"documentation":{"id":7622,"nodeType":"StructuredDocumentation","src":"2738:740:33","text":"Mocks randomness generated upon solving a request that was posted within a given block,\n if more than `__mockRandomizeLatencyBlocks` have elapsed since rquest, or to the _first_ request \n posted after that block, otherwise. \n @dev Please, note that 256 blocks after a `randomize()` request, randomness will be possibly returned \n @dev as `bytes32(0)` (depending on actual EVM implementation). \n @dev Fails if:\n @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\n @dev   ii.  a request posted in/after given block does exist, but lest than `__mockRandomizeLatencyBlocks` have elapsed.\n @param _block Block number from which the search will start."},"functionSelector":"fb476cad","id":7676,"implemented":true,"kind":"function","modifiers":[],"name":"getRandomnessAfter","nameLocation":"3492:18:33","nodeType":"FunctionDefinition","overrides":{"id":7626,"nodeType":"OverrideSpecifier","overrides":[],"src":"3563:8:33"},"parameters":{"id":7625,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7624,"mutability":"mutable","name":"_block","nameLocation":"3519:6:33","nodeType":"VariableDeclaration","scope":7676,"src":"3511:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7623,"name":"uint256","nodeType":"ElementaryTypeName","src":"3511:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3510:16:33"},"returnParameters":{"id":7629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7628,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7676,"src":"3589:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":7627,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3589:7:33","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"3588:9:33"},"scope":7838,"src":"3483:528:33","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[777],"body":{"id":7705,"nodeType":"Block","src":"4297:206:33","statements":[{"assignments":[7687],"declarations":[{"constant":false,"id":7687,"mutability":"mutable","name":"_data","nameLocation":"4329:5:33","nodeType":"VariableDeclaration","scope":7705,"src":"4307:27:33","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":7686,"nodeType":"UserDefinedTypeName","pathNode":{"id":7685,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"4307:13:33"},"referencedDeclaration":514,"src":"4307:13:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":7691,"initialValue":{"baseExpression":{"id":7688,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"4337:12:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":7690,"indexExpression":{"id":7689,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7679,"src":"4350:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4337:20:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"4307:50:33"},{"expression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":7702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":7692,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7687,"src":"4388:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7693,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"4388:19:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":7694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4411:1:33","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"4388:24:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":7696,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"4433:5:33","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":7697,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"4433:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7698,"name":"_block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7679,"src":"4449:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":7699,"name":"__mockRandomizeLatencyBlocks","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7537,"src":"4458:28:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"4449:37:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4433:53:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4388:98:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":7703,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"4374:122:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":7684,"id":7704,"nodeType":"Return","src":"4367:129:33"}]},"documentation":{"id":7677,"nodeType":"StructuredDocumentation","src":"4017:165:33","text":"Mocks `true` only when a randomness request got actually posted within given block,\n and at least `__mockRandomizeLatencyBlocks` have elapsed since then. "},"functionSelector":"9bc86fec","id":7706,"implemented":true,"kind":"function","modifiers":[],"name":"isRandomized","nameLocation":"4196:12:33","nodeType":"FunctionDefinition","overrides":{"id":7681,"nodeType":"OverrideSpecifier","overrides":[],"src":"4261:8:33"},"parameters":{"id":7680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7679,"mutability":"mutable","name":"_block","nameLocation":"4217:6:33","nodeType":"VariableDeclaration","scope":7706,"src":"4209:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7678,"name":"uint256","nodeType":"ElementaryTypeName","src":"4209:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4208:16:33"},"returnParameters":{"id":7684,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7683,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7706,"src":"4287:4:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":7682,"name":"bool","nodeType":"ElementaryTypeName","src":"4287:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4286:6:33"},"scope":7838,"src":"4187:316:33","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[966],"body":{"id":7808,"nodeType":"Block","src":"5081:1116:33","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7716,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7713,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"5095:20:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":7714,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"5118:5:33","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":7715,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"5118:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5095:35:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":7789,"nodeType":"IfStatement","src":"5091:944:33","trueBody":{"id":7788,"nodeType":"Block","src":"5132:903:33","statements":[{"expression":{"id":7719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7717,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7711,"src":"5146:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":7718,"name":"__mockRandomizeFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7539,"src":"5159:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5146:31:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7720,"nodeType":"ExpressionStatement","src":"5146:31:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7725,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":7722,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"5216:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"5216:9:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":7724,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7711,"src":"5229:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5216:23:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452616e646f6d6e6573734d6f636b3a2072657761726420746f6f206c6f77","id":7726,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5257:38:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1","typeString":"literal_string \"WitnetRandomnessMock: reward too low\""},"value":"WitnetRandomnessMock: reward too low"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1","typeString":"literal_string \"WitnetRandomnessMock: reward too low\""}],"id":7721,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5191:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7727,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5191:118:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7728,"nodeType":"ExpressionStatement","src":"5191:118:33"},{"assignments":[7730],"declarations":[{"constant":false,"id":7730,"mutability":"mutable","name":"_queryId","nameLocation":"5379:8:33","nodeType":"VariableDeclaration","scope":7788,"src":"5374:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7729,"name":"uint","nodeType":"ElementaryTypeName","src":"5374:4:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":7733,"initialValue":{"id":7732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"5390:26:33","subExpression":{"id":7731,"name":"__mockRandomizeLatestId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7541,"src":"5393:23:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5374:42:33"},{"assignments":[7736],"declarations":[{"constant":false,"id":7736,"mutability":"mutable","name":"_data","nameLocation":"5452:5:33","nodeType":"VariableDeclaration","scope":7788,"src":"5430:27:33","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"},"typeName":{"id":7735,"nodeType":"UserDefinedTypeName","pathNode":{"id":7734,"name":"RandomizeData","nodeType":"IdentifierPath","referencedDeclaration":514,"src":"5430:13:33"},"referencedDeclaration":514,"src":"5430:13:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData"}},"visibility":"internal"}],"id":7741,"initialValue":{"baseExpression":{"id":7737,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"5460:12:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":7740,"indexExpression":{"expression":{"id":7738,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"5473:5:33","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":7739,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"5473:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5460:26:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5430:56:33"},{"expression":{"id":7747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":7742,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7736,"src":"5500:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7744,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"from","nodeType":"MemberAccess","referencedDeclaration":507,"src":"5500:10:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7745,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"5513:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7746,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"5513:10:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"5500:23:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":7748,"nodeType":"ExpressionStatement","src":"5500:23:33"},{"expression":{"id":7753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":7749,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7736,"src":"5537:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7751,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnetQueryId","nodeType":"MemberAccess","referencedDeclaration":513,"src":"5537:19:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":7752,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7730,"src":"5559:8:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5537:30:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7754,"nodeType":"ExpressionStatement","src":"5537:30:33"},{"assignments":[7756],"declarations":[{"constant":false,"id":7756,"mutability":"mutable","name":"_prevBlock","nameLocation":"5636:10:33","nodeType":"VariableDeclaration","scope":7788,"src":"5628:18:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7755,"name":"uint256","nodeType":"ElementaryTypeName","src":"5628:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":7758,"initialValue":{"id":7757,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"5649:20:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5628:41:33"},{"expression":{"id":7763,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":7759,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7736,"src":"5683:5:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage_ptr","typeString":"struct WitnetRandomness.RandomizeData storage pointer"}},"id":7761,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"prevBlock","nodeType":"MemberAccess","referencedDeclaration":509,"src":"5683:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":7762,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7756,"src":"5701:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5683:28:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7764,"nodeType":"ExpressionStatement","src":"5683:28:33"},{"expression":{"id":7771,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":7765,"name":"__randomize_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":505,"src":"5725:12:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_RandomizeData_$514_storage_$","typeString":"mapping(uint256 => struct WitnetRandomness.RandomizeData storage ref)"}},"id":7767,"indexExpression":{"id":7766,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7756,"src":"5738:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5725:24:33","typeDescriptions":{"typeIdentifier":"t_struct$_RandomizeData_$514_storage","typeString":"struct WitnetRandomness.RandomizeData storage ref"}},"id":7768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"nextBlock","nodeType":"MemberAccess","referencedDeclaration":511,"src":"5725:34:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7769,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"5762:5:33","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":7770,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"5762:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5725:49:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7772,"nodeType":"ExpressionStatement","src":"5725:49:33"},{"expression":{"id":7776,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":7773,"name":"latestRandomizeBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":500,"src":"5788:20:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":7774,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"5811:5:33","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":7775,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"number","nodeType":"MemberAccess","src":"5811:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5788:35:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":7777,"nodeType":"ExpressionStatement","src":"5788:35:33"},{"eventCall":{"arguments":[{"expression":{"id":7779,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"5898:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"5898:10:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":7781,"name":"_prevBlock","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7756,"src":"5926:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":7782,"name":"_queryId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7730,"src":"5954:8:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":7783,"name":"witnetRandomnessRequest","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":497,"src":"5980:23:33","typeDescriptions":{"typeIdentifier":"t_contract$_WitnetRequestRandomness_$9072","typeString":"contract WitnetRequestRandomness"}},"id":7784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":8394,"src":"5980:28:33","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_bytes32_$","typeString":"function () view external returns (bytes32)"}},"id":7785,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5980:30:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":7778,"name":"Randomized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3714,"src":"5870:10:33","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$_t_bytes32_$returns$__$","typeString":"function (address,uint256,uint256,bytes32)"}},"id":7786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5870:154:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7787,"nodeType":"EmitStatement","src":"5865:159:33"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7793,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":7790,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7711,"src":"6090:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":7791,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6103:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"6103:9:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6090:22:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":7807,"nodeType":"IfStatement","src":"6086:105:33","trueBody":{"id":7806,"nodeType":"Block","src":"6114:77:33","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":7800,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6157:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7801,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"6157:9:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":7802,"name":"_usedFunds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7711,"src":"6169:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6157:22:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"expression":{"id":7796,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6136:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6136:10:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":7795,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6128:8:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":7794,"name":"address","nodeType":"ElementaryTypeName","src":"6128:8:33","stateMutability":"payable","typeDescriptions":{}}},"id":7798,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6128:19:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":7799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transfer","nodeType":"MemberAccess","src":"6128:28:33","typeDescriptions":{"typeIdentifier":"t_function_transfer_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":7804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6128:52:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7805,"nodeType":"ExpressionStatement","src":"6128:52:33"}]}}]},"documentation":{"id":7707,"nodeType":"StructuredDocumentation","src":"4509:455:33","text":"Mocks request to generate randomness, using underlying EVM as entropy source.\n Only one randomness request per block will be actually posted. Unused funds shall \n be transfered back to the tx sender.\n @dev FOR UNITARY TESTING ONLY. DO NOT USE IN PRODUCTION, AS PROVIDED RANDOMNESS\n @dev WILL NEITHER BE EVM-AGNOSTIC, NOR SECURE.\n @return _usedFunds Amount of funds actually used from those provided by the tx sender."},"functionSelector":"699b328a","id":7809,"implemented":true,"kind":"function","modifiers":[],"name":"randomize","nameLocation":"4978:9:33","nodeType":"FunctionDefinition","overrides":{"id":7709,"nodeType":"OverrideSpecifier","overrides":[],"src":"5031:8:33"},"parameters":{"id":7708,"nodeType":"ParameterList","parameters":[],"src":"4987:2:33"},"returnParameters":{"id":7712,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7711,"mutability":"mutable","name":"_usedFunds","nameLocation":"5065:10:33","nodeType":"VariableDeclaration","scope":7809,"src":"5057:18:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7710,"name":"uint256","nodeType":"ElementaryTypeName","src":"5057:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5056:20:33"},"scope":7838,"src":"4969:1228:33","stateMutability":"payable","virtual":true,"visibility":"external"},{"baseFunctions":[1014],"body":{"id":7836,"nodeType":"Block","src":"6582:117:33","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":7821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":7818,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6596:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7819,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"6596:9:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":7820,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6608:1:33","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"6596:13:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":7833,"nodeType":"IfStatement","src":"6592:83:33","trueBody":{"id":7832,"nodeType":"Block","src":"6611:64:33","statements":[{"expression":{"arguments":[{"expression":{"id":7828,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6654:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7829,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"6654:9:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"expression":{"id":7824,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6633:3:33","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6633:10:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":7823,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6625:8:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":7822,"name":"address","nodeType":"ElementaryTypeName","src":"6625:8:33","stateMutability":"payable","typeDescriptions":{}}},"id":7826,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6625:19:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":7827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transfer","nodeType":"MemberAccess","src":"6625:28:33","typeDescriptions":{"typeIdentifier":"t_function_transfer_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":7830,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6625:39:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7831,"nodeType":"ExpressionStatement","src":"6625:39:33"}]}},{"expression":{"hexValue":"30","id":7834,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6691:1:33","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"functionReturnParameters":7817,"id":7835,"nodeType":"Return","src":"6684:8:33"}]},"documentation":{"id":7810,"nodeType":"StructuredDocumentation","src":"6203:258:33","text":"Mocks by ignoring any fee increase on a pending-to-be-solved randomness request.\n @dev The whole `msg.value` shall be transferred back to the tx sender.\n @return _usedFunds Amount of funds actually used from those provided by the tx sender."},"functionSelector":"e35329f8","id":7837,"implemented":true,"kind":"function","modifiers":[],"name":"upgradeRandomizeFee","nameLocation":"6475:19:33","nodeType":"FunctionDefinition","overrides":{"id":7814,"nodeType":"OverrideSpecifier","overrides":[],"src":"6543:8:33"},"parameters":{"id":7813,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7812,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7837,"src":"6495:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7811,"name":"uint256","nodeType":"ElementaryTypeName","src":"6495:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6494:9:33"},"returnParameters":{"id":7817,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7816,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7837,"src":"6569:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7815,"name":"uint256","nodeType":"ElementaryTypeName","src":"6569:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6568:9:33"},"scope":7838,"src":"6466:233:33","stateMutability":"payable","virtual":true,"visibility":"public"}],"scope":7839,"src":"509:6192:33","usedErrors":[]}],"src":"33:6669:33"},"id":33},"witnet-solidity-bridge/contracts/patterns/Clonable.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Clonable.sol","exportedSymbols":{"Clonable":[7948],"Initializable":[7995]},"id":7949,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":7840,"literals":["solidity",">=","0.6",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:34"},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Initializable.sol","file":"./Initializable.sol","id":7841,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":7949,"sourceUnit":7996,"src":"66:29:34","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":7842,"name":"Initializable","nodeType":"IdentifierPath","referencedDeclaration":7995,"src":"127:13:34"},"id":7843,"nodeType":"InheritanceSpecifier","src":"127:13:34"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":false,"id":7948,"linearizedBaseContracts":[7948,7995],"name":"Clonable","nameLocation":"115:8:34","nodeType":"ContractDefinition","nodes":[{"constant":false,"documentation":{"id":7844,"nodeType":"StructuredDocumentation","src":"147:158:34","text":"Immutable contract address that actually attends all calls to this contract.\n @dev Differs from `address(this)` when reached within a DELEGATECALL."},"functionSelector":"7104ddb2","id":7850,"mutability":"immutable","name":"self","nameLocation":"335:4:34","nodeType":"VariableDeclaration","scope":7948,"src":"310:45:34","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":7845,"name":"address","nodeType":"ElementaryTypeName","src":"310:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"arguments":[{"id":7848,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"350:4:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":7847,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"342:7:34","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7846,"name":"address","nodeType":"ElementaryTypeName","src":"342:7:34","typeDescriptions":{}}},"id":7849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"342:13:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"anonymous":false,"id":7860,"name":"Cloned","nameLocation":"368:6:34","nodeType":"EventDefinition","parameters":{"id":7859,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7852,"indexed":true,"mutability":"mutable","name":"by","nameLocation":"391:2:34","nodeType":"VariableDeclaration","scope":7860,"src":"375:18:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":7851,"name":"address","nodeType":"ElementaryTypeName","src":"375:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":7855,"indexed":true,"mutability":"mutable","name":"self","nameLocation":"412:4:34","nodeType":"VariableDeclaration","scope":7860,"src":"395:21:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":7854,"nodeType":"UserDefinedTypeName","pathNode":{"id":7853,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"395:8:34"},"referencedDeclaration":7948,"src":"395:8:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"},{"constant":false,"id":7858,"indexed":true,"mutability":"mutable","name":"clone","nameLocation":"435:5:34","nodeType":"VariableDeclaration","scope":7860,"src":"418:22:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":7857,"nodeType":"UserDefinedTypeName","pathNode":{"id":7856,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"418:8:34"},"referencedDeclaration":7948,"src":"418:8:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"374:67:34"},"src":"362:80:34"},{"body":{"id":7874,"nodeType":"Block","src":"587:69:34","statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":7871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":7868,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"626:4:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":7867,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"618:7:34","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7866,"name":"address","nodeType":"ElementaryTypeName","src":"618:7:34","typeDescriptions":{}}},"id":7869,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"618:13:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":7870,"name":"self","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7850,"src":"635:4:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"618:21:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":7872,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"604:45:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":7865,"id":7873,"nodeType":"Return","src":"597:52:34"}]},"documentation":{"id":7861,"nodeType":"StructuredDocumentation","src":"448:69:34","text":"Tells whether this contract is a clone of another (i.e. `self()`)"},"functionSelector":"a04daef0","id":7875,"implemented":true,"kind":"function","modifiers":[],"name":"cloned","nameLocation":"531:6:34","nodeType":"FunctionDefinition","parameters":{"id":7862,"nodeType":"ParameterList","parameters":[],"src":"537:2:34"},"returnParameters":{"id":7865,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7864,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7875,"src":"577:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":7863,"name":"bool","nodeType":"ElementaryTypeName","src":"577:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"576:6:34"},"scope":7948,"src":"522:134:34","stateMutability":"view","virtual":false,"visibility":"public"},{"body":{"id":7909,"nodeType":"Block","src":"1183:789:34","statements":[{"assignments":[7883],"declarations":[{"constant":false,"id":7883,"mutability":"mutable","name":"_self","nameLocation":"1201:5:34","nodeType":"VariableDeclaration","scope":7909,"src":"1193:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":7882,"name":"address","nodeType":"ElementaryTypeName","src":"1193:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":7885,"initialValue":{"id":7884,"name":"self","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7850,"src":"1209:4:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1193:20:34"},{"AST":{"nodeType":"YulBlock","src":"1232:588:34","statements":[{"nodeType":"YulVariableDeclaration","src":"1278:22:34","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1295:4:34","type":"","value":"0x40"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1289:5:34"},"nodeType":"YulFunctionCall","src":"1289:11:34"},"variables":[{"name":"ptr","nodeType":"YulTypedName","src":"1282:3:34","type":""}]},{"expression":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1378:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"1383:66:34","type":"","value":"0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1371:6:34"},"nodeType":"YulFunctionCall","src":"1371:79:34"},"nodeType":"YulExpressionStatement","src":"1371:79:34"},{"expression":{"arguments":[{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1540:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"1545:4:34","type":"","value":"0x14"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1536:3:34"},"nodeType":"YulFunctionCall","src":"1536:14:34"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1556:4:34","type":"","value":"0x60"},{"name":"_self","nodeType":"YulIdentifier","src":"1562:5:34"}],"functionName":{"name":"shl","nodeType":"YulIdentifier","src":"1552:3:34"},"nodeType":"YulFunctionCall","src":"1552:16:34"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1529:6:34"},"nodeType":"YulFunctionCall","src":"1529:40:34"},"nodeType":"YulExpressionStatement","src":"1529:40:34"},{"expression":{"arguments":[{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"1649:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"1654:4:34","type":"","value":"0x28"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1645:3:34"},"nodeType":"YulFunctionCall","src":"1645:14:34"},{"kind":"number","nodeType":"YulLiteral","src":"1661:66:34","type":"","value":"0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1638:6:34"},"nodeType":"YulFunctionCall","src":"1638:90:34"},"nodeType":"YulExpressionStatement","src":"1638:90:34"},{"nodeType":"YulAssignment","src":"1777:33:34","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1797:1:34","type":"","value":"0"},{"name":"ptr","nodeType":"YulIdentifier","src":"1800:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"1805:4:34","type":"","value":"0x37"}],"functionName":{"name":"create","nodeType":"YulIdentifier","src":"1790:6:34"},"nodeType":"YulFunctionCall","src":"1790:20:34"},"variableNames":[{"name":"_instance","nodeType":"YulIdentifier","src":"1777:9:34"}]}]},"evmVersion":"london","externalReferences":[{"declaration":7880,"isOffset":false,"isSlot":false,"src":"1777:9:34","valueSize":1},{"declaration":7883,"isOffset":false,"isSlot":false,"src":"1562:5:34","valueSize":1}],"id":7886,"nodeType":"InlineAssembly","src":"1223:597:34"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":7896,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":7890,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7880,"src":"1853:9:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":7889,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1845:7:34","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7888,"name":"address","nodeType":"ElementaryTypeName","src":"1845:7:34","typeDescriptions":{}}},"id":7891,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1845:18:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":7894,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1875:1:34","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":7893,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1867:7:34","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7892,"name":"address","nodeType":"ElementaryTypeName","src":"1867:7:34","typeDescriptions":{}}},"id":7895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1867:10:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1845:32:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"436c6f6e61626c653a20435245415445206661696c6564","id":7897,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1879:25:34","typeDescriptions":{"typeIdentifier":"t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","typeString":"literal_string \"Clonable: CREATE failed\""},"value":"Clonable: CREATE failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","typeString":"literal_string \"Clonable: CREATE failed\""}],"id":7887,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1837:7:34","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7898,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1837:68:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7899,"nodeType":"ExpressionStatement","src":"1837:68:34"},{"eventCall":{"arguments":[{"expression":{"id":7901,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1927:3:34","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7902,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"1927:10:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":7904,"name":"self","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7850,"src":"1948:4:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":7903,"name":"Clonable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7948,"src":"1939:8:34","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clonable_$7948_$","typeString":"type(contract Clonable)"}},"id":7905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1939:14:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},{"id":7906,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7880,"src":"1955:9:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":7900,"name":"Cloned","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7860,"src":"1920:6:34","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_contract$_Clonable_$7948_$_t_contract$_Clonable_$7948_$returns$__$","typeString":"function (address,contract Clonable,contract Clonable)"}},"id":7907,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1920:45:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7908,"nodeType":"EmitStatement","src":"1915:50:34"}]},"documentation":{"id":7876,"nodeType":"StructuredDocumentation","src":"662:435:34","text":"Deploys and returns the address of a minimal proxy clone that replicates contract\n behaviour while using its own EVM storage.\n @dev This function should always provide a new address, no matter how many times \n @dev is actually called from the same `msg.sender`.\n @dev See https://eips.ethereum.org/EIPS/eip-1167.\n @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/."},"functionSelector":"09ed4607","id":7910,"implemented":true,"kind":"function","modifiers":[],"name":"clone","nameLocation":"1111:5:34","nodeType":"FunctionDefinition","parameters":{"id":7877,"nodeType":"ParameterList","parameters":[],"src":"1116:2:34"},"returnParameters":{"id":7881,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7880,"mutability":"mutable","name":"_instance","nameLocation":"1168:9:34","nodeType":"VariableDeclaration","scope":7910,"src":"1159:18:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":7879,"nodeType":"UserDefinedTypeName","pathNode":{"id":7878,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"1159:8:34"},"referencedDeclaration":7948,"src":"1159:8:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"1158:20:34"},"scope":7948,"src":"1102:870:34","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":7946,"nodeType":"Block","src":"2627:733:34","statements":[{"assignments":[7920],"declarations":[{"constant":false,"id":7920,"mutability":"mutable","name":"_self","nameLocation":"2645:5:34","nodeType":"VariableDeclaration","scope":7946,"src":"2637:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":7919,"name":"address","nodeType":"ElementaryTypeName","src":"2637:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":7922,"initialValue":{"id":7921,"name":"self","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7850,"src":"2653:4:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2637:20:34"},{"AST":{"nodeType":"YulBlock","src":"2676:539:34","statements":[{"nodeType":"YulVariableDeclaration","src":"2722:22:34","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2739:4:34","type":"","value":"0x40"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2733:5:34"},"nodeType":"YulFunctionCall","src":"2733:11:34"},"variables":[{"name":"ptr","nodeType":"YulTypedName","src":"2726:3:34","type":""}]},{"expression":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"2764:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"2769:66:34","type":"","value":"0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2757:6:34"},"nodeType":"YulFunctionCall","src":"2757:79:34"},"nodeType":"YulExpressionStatement","src":"2757:79:34"},{"expression":{"arguments":[{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"2926:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"2931:4:34","type":"","value":"0x14"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2922:3:34"},"nodeType":"YulFunctionCall","src":"2922:14:34"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2942:4:34","type":"","value":"0x60"},{"name":"_self","nodeType":"YulIdentifier","src":"2948:5:34"}],"functionName":{"name":"shl","nodeType":"YulIdentifier","src":"2938:3:34"},"nodeType":"YulFunctionCall","src":"2938:16:34"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2915:6:34"},"nodeType":"YulFunctionCall","src":"2915:40:34"},"nodeType":"YulExpressionStatement","src":"2915:40:34"},{"expression":{"arguments":[{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"3035:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"3040:4:34","type":"","value":"0x28"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3031:3:34"},"nodeType":"YulFunctionCall","src":"3031:14:34"},{"kind":"number","nodeType":"YulLiteral","src":"3047:66:34","type":"","value":"0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3024:6:34"},"nodeType":"YulFunctionCall","src":"3024:90:34"},"nodeType":"YulExpressionStatement","src":"3024:90:34"},{"nodeType":"YulAssignment","src":"3164:41:34","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3185:1:34","type":"","value":"0"},{"name":"ptr","nodeType":"YulIdentifier","src":"3188:3:34"},{"kind":"number","nodeType":"YulLiteral","src":"3193:4:34","type":"","value":"0x37"},{"name":"_salt","nodeType":"YulIdentifier","src":"3199:5:34"}],"functionName":{"name":"create2","nodeType":"YulIdentifier","src":"3177:7:34"},"nodeType":"YulFunctionCall","src":"3177:28:34"},"variableNames":[{"name":"_instance","nodeType":"YulIdentifier","src":"3164:9:34"}]}]},"evmVersion":"london","externalReferences":[{"declaration":7917,"isOffset":false,"isSlot":false,"src":"3164:9:34","valueSize":1},{"declaration":7913,"isOffset":false,"isSlot":false,"src":"3199:5:34","valueSize":1},{"declaration":7920,"isOffset":false,"isSlot":false,"src":"2948:5:34","valueSize":1}],"id":7923,"nodeType":"InlineAssembly","src":"2667:548:34"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":7933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":7927,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7917,"src":"3240:9:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":7926,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3232:7:34","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7925,"name":"address","nodeType":"ElementaryTypeName","src":"3232:7:34","typeDescriptions":{}}},"id":7928,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3232:18:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":7931,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3262:1:34","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":7930,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3254:7:34","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":7929,"name":"address","nodeType":"ElementaryTypeName","src":"3254:7:34","typeDescriptions":{}}},"id":7932,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3254:10:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3232:32:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"436c6f6e61626c653a2043524541544532206661696c6564","id":7934,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3266:26:34","typeDescriptions":{"typeIdentifier":"t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","typeString":"literal_string \"Clonable: CREATE2 failed\""},"value":"Clonable: CREATE2 failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","typeString":"literal_string \"Clonable: CREATE2 failed\""}],"id":7924,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3224:7:34","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":7935,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3224:69:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7936,"nodeType":"ExpressionStatement","src":"3224:69:34"},{"eventCall":{"arguments":[{"expression":{"id":7938,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3315:3:34","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7939,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"3315:10:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":7941,"name":"self","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7850,"src":"3336:4:34","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":7940,"name":"Clonable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7948,"src":"3327:8:34","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clonable_$7948_$","typeString":"type(contract Clonable)"}},"id":7942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3327:14:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},{"id":7943,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7917,"src":"3343:9:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":7937,"name":"Cloned","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7860,"src":"3308:6:34","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_contract$_Clonable_$7948_$_t_contract$_Clonable_$7948_$returns$__$","typeString":"function (address,contract Clonable,contract Clonable)"}},"id":7944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3308:45:34","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":7945,"nodeType":"EmitStatement","src":"3303:50:34"}]},"documentation":{"id":7911,"nodeType":"StructuredDocumentation","src":"1978:537:34","text":"Deploys and returns the address of a minimal proxy clone that replicates contract \n behaviour while using its own EVM storage.\n @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\n @dev the clone. Using the same `_salt` multiple times will revert, since\n @dev no contract can be deployed more than once at the same address.\n @dev See https://eips.ethereum.org/EIPS/eip-1167.\n @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/."},"functionSelector":"daaa360c","id":7947,"implemented":true,"kind":"function","modifiers":[],"name":"cloneDeterministic","nameLocation":"2529:18:34","nodeType":"FunctionDefinition","parameters":{"id":7914,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7913,"mutability":"mutable","name":"_salt","nameLocation":"2556:5:34","nodeType":"VariableDeclaration","scope":7947,"src":"2548:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":7912,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2548:7:34","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2547:15:34"},"returnParameters":{"id":7918,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7917,"mutability":"mutable","name":"_instance","nameLocation":"2612:9:34","nodeType":"VariableDeclaration","scope":7947,"src":"2603:18:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":7916,"nodeType":"UserDefinedTypeName","pathNode":{"id":7915,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"2603:8:34"},"referencedDeclaration":7948,"src":"2603:8:34","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"2602:20:34"},"scope":7948,"src":"2520:840:34","stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"scope":7949,"src":"97:3265:34","usedErrors":[]}],"src":"33:3330:34"},"id":34},"witnet-solidity-bridge/contracts/patterns/Context.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Context.sol","exportedSymbols":{"Context":[7979]},"id":7980,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":7950,"literals":["solidity","^","0.8",".0"],"nodeType":"PragmaDirective","src":"33:23:35"},{"abstract":true,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":{"id":7951,"nodeType":"StructuredDocumentation","src":"58:416:35","text":"@dev Provides information about the current execution context, including the\n sender of the transaction and its data. While these are generally available\n via msg.sender and msg.data, they should not be accessed in such a direct\n manner, since when dealing with meta-transactions the account sending and\n paying for execution may not be the actual sender (as far as an application\n is concerned)."},"fullyImplemented":true,"id":7979,"linearizedBaseContracts":[7979],"name":"Context","nameLocation":"492:7:35","nodeType":"ContractDefinition","nodes":[{"body":{"id":7959,"nodeType":"Block","src":"568:34:35","statements":[{"expression":{"expression":{"id":7956,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"585:3:35","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"585:10:35","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":7955,"id":7958,"nodeType":"Return","src":"578:17:35"}]},"id":7960,"implemented":true,"kind":"function","modifiers":[],"name":"_msgSender","nameLocation":"515:10:35","nodeType":"FunctionDefinition","parameters":{"id":7952,"nodeType":"ParameterList","parameters":[],"src":"525:2:35"},"returnParameters":{"id":7955,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7954,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7960,"src":"559:7:35","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":7953,"name":"address","nodeType":"ElementaryTypeName","src":"559:7:35","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"558:9:35"},"scope":7979,"src":"506:96:35","stateMutability":"view","virtual":true,"visibility":"internal"},{"body":{"id":7968,"nodeType":"Block","src":"675:32:35","statements":[{"expression":{"expression":{"id":7965,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"692:3:35","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7966,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"data","nodeType":"MemberAccess","src":"692:8:35","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},"functionReturnParameters":7964,"id":7967,"nodeType":"Return","src":"685:15:35"}]},"id":7969,"implemented":true,"kind":"function","modifiers":[],"name":"_msgData","nameLocation":"617:8:35","nodeType":"FunctionDefinition","parameters":{"id":7961,"nodeType":"ParameterList","parameters":[],"src":"625:2:35"},"returnParameters":{"id":7964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7969,"src":"659:14:35","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":7962,"name":"bytes","nodeType":"ElementaryTypeName","src":"659:5:35","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"658:16:35"},"scope":7979,"src":"608:99:35","stateMutability":"view","virtual":true,"visibility":"internal"},{"body":{"id":7977,"nodeType":"Block","src":"774:33:35","statements":[{"expression":{"expression":{"id":7974,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"791:3:35","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":7975,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"value","nodeType":"MemberAccess","src":"791:9:35","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":7973,"id":7976,"nodeType":"Return","src":"784:16:35"}]},"id":7978,"implemented":true,"kind":"function","modifiers":[],"name":"_msgValue","nameLocation":"722:9:35","nodeType":"FunctionDefinition","parameters":{"id":7970,"nodeType":"ParameterList","parameters":[],"src":"731:2:35"},"returnParameters":{"id":7973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7972,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7978,"src":"765:7:35","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":7971,"name":"uint256","nodeType":"ElementaryTypeName","src":"765:7:35","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"764:9:35"},"scope":7979,"src":"713:94:35","stateMutability":"view","virtual":true,"visibility":"internal"}],"scope":7980,"src":"474:335:35","usedErrors":[]}],"src":"33:777:35"},"id":35},"witnet-solidity-bridge/contracts/patterns/Destructible.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Destructible.sol","exportedSymbols":{"Destructible":[7986]},"id":7987,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":7981,"literals":["solidity",">=","0.6",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:36"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"id":7986,"linearizedBaseContracts":[7986],"name":"Destructible","nameLocation":"76:12:36","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":7982,"nodeType":"StructuredDocumentation","src":"95:42:36","text":"@dev Self-destruct the whole contract."},"functionSelector":"2b68b9c6","id":7985,"implemented":false,"kind":"function","modifiers":[],"name":"destruct","nameLocation":"151:8:36","nodeType":"FunctionDefinition","parameters":{"id":7983,"nodeType":"ParameterList","parameters":[],"src":"159:2:36"},"returnParameters":{"id":7984,"nodeType":"ParameterList","parameters":[],"src":"170:0:36"},"scope":7986,"src":"142:29:36","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":7987,"src":"66:107:36","usedErrors":[]}],"src":"33:141:36"},"id":36},"witnet-solidity-bridge/contracts/patterns/Initializable.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Initializable.sol","exportedSymbols":{"Initializable":[7995]},"id":7996,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":7988,"literals":["solidity",">=","0.6",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:37"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"id":7995,"linearizedBaseContracts":[7995],"name":"Initializable","nameLocation":"76:13:37","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":7989,"nodeType":"StructuredDocumentation","src":"96:47:37","text":"@dev Initialize contract's storage context."},"functionSelector":"439fab91","id":7994,"implemented":false,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"157:10:37","nodeType":"FunctionDefinition","parameters":{"id":7992,"nodeType":"ParameterList","parameters":[{"constant":false,"id":7991,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":7994,"src":"168:14:37","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":7990,"name":"bytes","nodeType":"ElementaryTypeName","src":"168:5:37","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"167:16:37"},"returnParameters":{"id":7993,"nodeType":"ParameterList","parameters":[],"src":"192:0:37"},"scope":7995,"src":"148:45:37","stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"scope":7996,"src":"66:129:37","usedErrors":[]}],"src":"33:163:37"},"id":37},"witnet-solidity-bridge/contracts/patterns/Ownable.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Ownable.sol","exportedSymbols":{"Context":[7979],"Ownable":[8100]},"id":8101,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":7997,"literals":["solidity","^","0.8",".0"],"nodeType":"PragmaDirective","src":"87:23:38"},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Context.sol","file":"./Context.sol","id":7998,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8101,"sourceUnit":7980,"src":"112:23:38","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":8000,"name":"Context","nodeType":"IdentifierPath","referencedDeclaration":7979,"src":"664:7:38"},"id":8001,"nodeType":"InheritanceSpecifier","src":"664:7:38"}],"contractDependencies":[],"contractKind":"contract","documentation":{"id":7999,"nodeType":"StructuredDocumentation","src":"137:497:38","text":"@dev Contract module which provides a basic access control mechanism, where\n there is an account (an owner) that can be granted exclusive access to\n specific functions.\n By default, the owner account will be the one that deploys the contract. This\n can later be changed with {transferOwnership}.\n This module is used through inheritance. It will make available the modifier\n `onlyOwner`, which can be applied to your functions to restrict their use to\n the owner."},"fullyImplemented":true,"id":8100,"linearizedBaseContracts":[8100,7979],"name":"Ownable","nameLocation":"653:7:38","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":8003,"mutability":"mutable","name":"_owner","nameLocation":"694:6:38","nodeType":"VariableDeclaration","scope":8100,"src":"678:22:38","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8002,"name":"address","nodeType":"ElementaryTypeName","src":"678:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"private"},{"anonymous":false,"id":8009,"name":"OwnershipTransferred","nameLocation":"713:20:38","nodeType":"EventDefinition","parameters":{"id":8008,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8005,"indexed":true,"mutability":"mutable","name":"previousOwner","nameLocation":"750:13:38","nodeType":"VariableDeclaration","scope":8009,"src":"734:29:38","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8004,"name":"address","nodeType":"ElementaryTypeName","src":"734:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8007,"indexed":true,"mutability":"mutable","name":"newOwner","nameLocation":"781:8:38","nodeType":"VariableDeclaration","scope":8009,"src":"765:24:38","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8006,"name":"address","nodeType":"ElementaryTypeName","src":"765:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"733:57:38"},"src":"707:84:38"},{"body":{"id":8018,"nodeType":"Block","src":"892:49:38","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":8014,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7960,"src":"921:10:38","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":8015,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"921:12:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8013,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8099,"src":"902:18:38","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":8016,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"902:32:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8017,"nodeType":"ExpressionStatement","src":"902:32:38"}]},"documentation":{"id":8010,"nodeType":"StructuredDocumentation","src":"797:76:38","text":"@dev Initializes the contract setting the deployer as the initial owner."},"id":8019,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":8011,"nodeType":"ParameterList","parameters":[],"src":"889:2:38"},"returnParameters":{"id":8012,"nodeType":"ParameterList","parameters":[],"src":"892:0:38"},"scope":8100,"src":"878:63:38","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":8027,"nodeType":"Block","src":"1057:30:38","statements":[{"expression":{"id":8025,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8003,"src":"1074:6:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":8024,"id":8026,"nodeType":"Return","src":"1067:13:38"}]},"documentation":{"id":8020,"nodeType":"StructuredDocumentation","src":"947:50:38","text":"@dev Returns the address of the current owner."},"functionSelector":"8da5cb5b","id":8028,"implemented":true,"kind":"function","modifiers":[],"name":"owner","nameLocation":"1011:5:38","nodeType":"FunctionDefinition","parameters":{"id":8021,"nodeType":"ParameterList","parameters":[],"src":"1016:2:38"},"returnParameters":{"id":8024,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8023,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8028,"src":"1048:7:38","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8022,"name":"address","nodeType":"ElementaryTypeName","src":"1048:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1047:9:38"},"scope":8100,"src":"1002:85:38","stateMutability":"view","virtual":true,"visibility":"public"},{"body":{"id":8041,"nodeType":"Block","src":"1181:96:38","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":8036,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":8032,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8028,"src":"1199:5:38","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":8033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1199:7:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":8034,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7960,"src":"1210:10:38","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":8035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1210:12:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1199:23:38","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572","id":8037,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1224:34:38","typeDescriptions":{"typeIdentifier":"t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe","typeString":"literal_string \"Ownable: caller is not the owner\""},"value":"Ownable: caller is not the owner"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe","typeString":"literal_string \"Ownable: caller is not the owner\""}],"id":8031,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1191:7:38","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8038,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1191:68:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8039,"nodeType":"ExpressionStatement","src":"1191:68:38"},{"id":8040,"nodeType":"PlaceholderStatement","src":"1269:1:38"}]},"documentation":{"id":8029,"nodeType":"StructuredDocumentation","src":"1093:62:38","text":"@dev Throws if called by any account other than the owner."},"id":8042,"name":"onlyOwner","nameLocation":"1169:9:38","nodeType":"ModifierDefinition","parameters":{"id":8030,"nodeType":"ParameterList","parameters":[],"src":"1178:2:38"},"src":"1160:117:38","virtual":false,"visibility":"internal"},{"body":{"id":8055,"nodeType":"Block","src":"1654:47:38","statements":[{"expression":{"arguments":[{"arguments":[{"hexValue":"30","id":8051,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1691:1:38","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":8050,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1683:7:38","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":8049,"name":"address","nodeType":"ElementaryTypeName","src":"1683:7:38","typeDescriptions":{}}},"id":8052,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1683:10:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8048,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8099,"src":"1664:18:38","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":8053,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1664:30:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8054,"nodeType":"ExpressionStatement","src":"1664:30:38"}]},"documentation":{"id":8043,"nodeType":"StructuredDocumentation","src":"1283:312:38","text":"@dev Leaves the contract without owner. It will not be possible to call\n `onlyOwner` functions anymore. Can only be called by the current owner.\n NOTE: Renouncing ownership will leave the contract without an owner,\n thereby removing any functionality that is only available to the owner."},"functionSelector":"715018a6","id":8056,"implemented":true,"kind":"function","modifiers":[{"id":8046,"kind":"modifierInvocation","modifierName":{"id":8045,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":8042,"src":"1644:9:38"},"nodeType":"ModifierInvocation","src":"1644:9:38"}],"name":"renounceOwnership","nameLocation":"1609:17:38","nodeType":"FunctionDefinition","parameters":{"id":8044,"nodeType":"ParameterList","parameters":[],"src":"1626:2:38"},"returnParameters":{"id":8047,"nodeType":"ParameterList","parameters":[],"src":"1654:0:38"},"scope":8100,"src":"1600:101:38","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":8078,"nodeType":"Block","src":"1906:128:38","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":8070,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8065,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8059,"src":"1924:8:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":8068,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1944:1:38","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":8067,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1936:7:38","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":8066,"name":"address","nodeType":"ElementaryTypeName","src":"1936:7:38","typeDescriptions":{}}},"id":8069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1936:10:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1924:22:38","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373","id":8071,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1948:40:38","typeDescriptions":{"typeIdentifier":"t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe","typeString":"literal_string \"Ownable: new owner is the zero address\""},"value":"Ownable: new owner is the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe","typeString":"literal_string \"Ownable: new owner is the zero address\""}],"id":8064,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"1916:7:38","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1916:73:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8073,"nodeType":"ExpressionStatement","src":"1916:73:38"},{"expression":{"arguments":[{"id":8075,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8059,"src":"2018:8:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8074,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8099,"src":"1999:18:38","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":8076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1999:28:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8077,"nodeType":"ExpressionStatement","src":"1999:28:38"}]},"documentation":{"id":8057,"nodeType":"StructuredDocumentation","src":"1707:124:38","text":"@dev Transfers ownership of the contract to a new account (`newOwner`).\n Can only be called by the current owner."},"functionSelector":"f2fde38b","id":8079,"implemented":true,"kind":"function","modifiers":[{"id":8062,"kind":"modifierInvocation","modifierName":{"id":8061,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":8042,"src":"1896:9:38"},"nodeType":"ModifierInvocation","src":"1896:9:38"}],"name":"transferOwnership","nameLocation":"1845:17:38","nodeType":"FunctionDefinition","parameters":{"id":8060,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8059,"mutability":"mutable","name":"newOwner","nameLocation":"1871:8:38","nodeType":"VariableDeclaration","scope":8079,"src":"1863:16:38","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8058,"name":"address","nodeType":"ElementaryTypeName","src":"1863:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1862:18:38"},"returnParameters":{"id":8063,"nodeType":"ParameterList","parameters":[],"src":"1906:0:38"},"scope":8100,"src":"1836:198:38","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":8098,"nodeType":"Block","src":"2237:124:38","statements":[{"assignments":[8086],"declarations":[{"constant":false,"id":8086,"mutability":"mutable","name":"oldOwner","nameLocation":"2255:8:38","nodeType":"VariableDeclaration","scope":8098,"src":"2247:16:38","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8085,"name":"address","nodeType":"ElementaryTypeName","src":"2247:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":8088,"initialValue":{"id":8087,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8003,"src":"2266:6:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"2247:25:38"},{"expression":{"id":8091,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8089,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8003,"src":"2282:6:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8090,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8082,"src":"2291:8:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2282:17:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":8092,"nodeType":"ExpressionStatement","src":"2282:17:38"},{"eventCall":{"arguments":[{"id":8094,"name":"oldOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8086,"src":"2335:8:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":8095,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8082,"src":"2345:8:38","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":8093,"name":"OwnershipTransferred","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8009,"src":"2314:20:38","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":8096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2314:40:38","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8097,"nodeType":"EmitStatement","src":"2309:45:38"}]},"documentation":{"id":8080,"nodeType":"StructuredDocumentation","src":"2040:129:38","text":"@dev Transfers ownership of the contract to a new account (`newOwner`).\n Internal function without access restriction."},"id":8099,"implemented":true,"kind":"function","modifiers":[],"name":"_transferOwnership","nameLocation":"2183:18:38","nodeType":"FunctionDefinition","parameters":{"id":8083,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8082,"mutability":"mutable","name":"newOwner","nameLocation":"2210:8:38","nodeType":"VariableDeclaration","scope":8099,"src":"2202:16:38","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8081,"name":"address","nodeType":"ElementaryTypeName","src":"2202:7:38","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2201:18:38"},"returnParameters":{"id":8084,"nodeType":"ParameterList","parameters":[],"src":"2237:0:38"},"scope":8100,"src":"2174:187:38","stateMutability":"nonpayable","virtual":true,"visibility":"internal"}],"scope":8101,"src":"635:1728:38","usedErrors":[]}],"src":"87:2276:38"},"id":38},"witnet-solidity-bridge/contracts/patterns/Payable.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Payable.sol","exportedSymbols":{"IERC20":[3611],"Payable":[8151]},"id":8152,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":8102,"literals":["solidity",">=","0.6",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:39"},{"absolutePath":"witnet-solidity-bridge/contracts/interfaces/IERC20.sol","file":"../interfaces/IERC20.sol","id":8103,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8152,"sourceUnit":3612,"src":"66:34:39","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[],"contractDependencies":[],"contractKind":"contract","fullyImplemented":false,"id":8151,"linearizedBaseContracts":[8151],"name":"Payable","nameLocation":"120:7:39","nodeType":"ContractDefinition","nodes":[{"constant":false,"functionSelector":"e5a6b10f","id":8106,"mutability":"immutable","name":"currency","nameLocation":"158:8:39","nodeType":"VariableDeclaration","scope":8151,"src":"134:32:39","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$3611","typeString":"contract IERC20"},"typeName":{"id":8105,"nodeType":"UserDefinedTypeName","pathNode":{"id":8104,"name":"IERC20","nodeType":"IdentifierPath","referencedDeclaration":3611,"src":"134:6:39"},"referencedDeclaration":3611,"src":"134:6:39","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$3611","typeString":"contract IERC20"}},"visibility":"public"},{"anonymous":false,"id":8112,"name":"Received","nameLocation":"179:8:39","nodeType":"EventDefinition","parameters":{"id":8111,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8108,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"196:4:39","nodeType":"VariableDeclaration","scope":8112,"src":"188:12:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8107,"name":"address","nodeType":"ElementaryTypeName","src":"188:7:39","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8110,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"210:6:39","nodeType":"VariableDeclaration","scope":8112,"src":"202:14:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":8109,"name":"uint256","nodeType":"ElementaryTypeName","src":"202:7:39","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"187:30:39"},"src":"173:45:39"},{"anonymous":false,"id":8118,"name":"Transfer","nameLocation":"229:8:39","nodeType":"EventDefinition","parameters":{"id":8117,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8114,"indexed":false,"mutability":"mutable","name":"to","nameLocation":"246:2:39","nodeType":"VariableDeclaration","scope":8118,"src":"238:10:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8113,"name":"address","nodeType":"ElementaryTypeName","src":"238:7:39","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8116,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"258:6:39","nodeType":"VariableDeclaration","scope":8118,"src":"250:14:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":8115,"name":"uint256","nodeType":"ElementaryTypeName","src":"250:7:39","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"237:28:39"},"src":"223:43:39"},{"body":{"id":8129,"nodeType":"Block","src":"303:45:39","statements":[{"expression":{"id":8127,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8123,"name":"currency","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8106,"src":"313:8:39","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$3611","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":8125,"name":"_currency","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8120,"src":"331:9:39","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8124,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3611,"src":"324:6:39","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IERC20_$3611_$","typeString":"type(contract IERC20)"}},"id":8126,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"324:17:39","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$3611","typeString":"contract IERC20"}},"src":"313:28:39","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$3611","typeString":"contract IERC20"}},"id":8128,"nodeType":"ExpressionStatement","src":"313:28:39"}]},"id":8130,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":8121,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8120,"mutability":"mutable","name":"_currency","nameLocation":"292:9:39","nodeType":"VariableDeclaration","scope":8130,"src":"284:17:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8119,"name":"address","nodeType":"ElementaryTypeName","src":"284:7:39","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"283:19:39"},"returnParameters":{"id":8122,"nodeType":"ParameterList","parameters":[],"src":"303:0:39"},"scope":8151,"src":"272:76:39","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"documentation":{"id":8131,"nodeType":"StructuredDocumentation","src":"354:35:39","text":"Gets current transaction price."},"id":8136,"implemented":false,"kind":"function","modifiers":[],"name":"_getGasPrice","nameLocation":"403:12:39","nodeType":"FunctionDefinition","parameters":{"id":8132,"nodeType":"ParameterList","parameters":[],"src":"415:2:39"},"returnParameters":{"id":8135,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8134,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8136,"src":"449:7:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":8133,"name":"uint256","nodeType":"ElementaryTypeName","src":"449:7:39","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"448:9:39"},"scope":8151,"src":"394:64:39","stateMutability":"view","virtual":true,"visibility":"internal"},{"documentation":{"id":8137,"nodeType":"StructuredDocumentation","src":"464:31:39","text":"Gets current payment value."},"id":8142,"implemented":false,"kind":"function","modifiers":[],"name":"_getMsgValue","nameLocation":"509:12:39","nodeType":"FunctionDefinition","parameters":{"id":8138,"nodeType":"ParameterList","parameters":[],"src":"521:2:39"},"returnParameters":{"id":8141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8140,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8142,"src":"555:7:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":8139,"name":"uint256","nodeType":"ElementaryTypeName","src":"555:7:39","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"554:9:39"},"scope":8151,"src":"500:64:39","stateMutability":"view","virtual":true,"visibility":"internal"},{"documentation":{"id":8143,"nodeType":"StructuredDocumentation","src":"570:71:39","text":"Perform safe transfer or whatever token is used for paying rewards."},"id":8150,"implemented":false,"kind":"function","modifiers":[],"name":"_safeTransferTo","nameLocation":"655:15:39","nodeType":"FunctionDefinition","parameters":{"id":8148,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8145,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8150,"src":"671:15:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":8144,"name":"address","nodeType":"ElementaryTypeName","src":"671:15:39","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":8147,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8150,"src":"688:7:39","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":8146,"name":"uint256","nodeType":"ElementaryTypeName","src":"688:7:39","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"670:26:39"},"returnParameters":{"id":8149,"nodeType":"ParameterList","parameters":[],"src":"713:0:39"},"scope":8151,"src":"646:68:39","stateMutability":"nonpayable","virtual":true,"visibility":"internal"}],"scope":8152,"src":"102:614:39","usedErrors":[]}],"src":"33:684:39"},"id":39},"witnet-solidity-bridge/contracts/patterns/Proxiable.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Proxiable.sol","exportedSymbols":{"Proxiable":[8160]},"id":8161,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":8153,"literals":["solidity",">=","0.6",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:40"},{"abstract":false,"baseContracts":[],"contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"id":8160,"linearizedBaseContracts":[8160],"name":"Proxiable","nameLocation":"76:9:40","nodeType":"ContractDefinition","nodes":[{"documentation":{"id":8154,"nodeType":"StructuredDocumentation","src":"92:134:40","text":"@dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\n @dev See https://eips.ethereum.org/EIPS/eip-1822."},"functionSelector":"52d1902d","id":8159,"implemented":false,"kind":"function","modifiers":[],"name":"proxiableUUID","nameLocation":"240:13:40","nodeType":"FunctionDefinition","parameters":{"id":8155,"nodeType":"ParameterList","parameters":[],"src":"253:2:40"},"returnParameters":{"id":8158,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8157,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8159,"src":"279:7:40","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8156,"name":"bytes32","nodeType":"ElementaryTypeName","src":"279:7:40","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"278:9:40"},"scope":8160,"src":"231:57:40","stateMutability":"pure","virtual":false,"visibility":"external"}],"scope":8161,"src":"66:224:40","usedErrors":[]}],"src":"33:258:40"},"id":40},"witnet-solidity-bridge/contracts/patterns/Upgradable.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Upgradable.sol","exportedSymbols":{"Initializable":[7995],"Proxiable":[8160],"Upgradable":[8256]},"id":8257,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":8162,"literals":["solidity",">=","0.6",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"75:31:41"},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Initializable.sol","file":"./Initializable.sol","id":8163,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8257,"sourceUnit":7996,"src":"108:29:41","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Proxiable.sol","file":"./Proxiable.sol","id":8164,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8257,"sourceUnit":8161,"src":"138:25:41","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":8165,"name":"Initializable","nodeType":"IdentifierPath","referencedDeclaration":7995,"src":"197:13:41"},"id":8166,"nodeType":"InheritanceSpecifier","src":"197:13:41"},{"baseName":{"id":8167,"name":"Proxiable","nodeType":"IdentifierPath","referencedDeclaration":8160,"src":"212:9:41"},"id":8168,"nodeType":"InheritanceSpecifier","src":"212:9:41"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":false,"id":8256,"linearizedBaseContracts":[8256,8160,7995],"name":"Upgradable","nameLocation":"183:10:41","nodeType":"ContractDefinition","nodes":[{"constant":false,"id":8170,"mutability":"immutable","name":"_BASE","nameLocation":"256:5:41","nodeType":"VariableDeclaration","scope":8256,"src":"229:32:41","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8169,"name":"address","nodeType":"ElementaryTypeName","src":"229:7:41","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8172,"mutability":"immutable","name":"_CODEHASH","nameLocation":"294:9:41","nodeType":"VariableDeclaration","scope":8256,"src":"267:36:41","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8171,"name":"bytes32","nodeType":"ElementaryTypeName","src":"267:7:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":8174,"mutability":"immutable","name":"_UPGRADABLE","nameLocation":"333:11:41","nodeType":"VariableDeclaration","scope":8256,"src":"309:35:41","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":8173,"name":"bool","nodeType":"ElementaryTypeName","src":"309:4:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"anonymous":false,"documentation":{"id":8175,"nodeType":"StructuredDocumentation","src":"351:433:41","text":"Emitted every time the contract gets upgraded.\n @param from The address who ordered the upgrading. Namely, the WRB operator in \"trustable\" implementations.\n @param baseAddr The address of the new implementation contract.\n @param baseCodehash The EVM-codehash of the new implementation contract.\n @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it."},"id":8185,"name":"Upgraded","nameLocation":"795:8:41","nodeType":"EventDefinition","parameters":{"id":8184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8177,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"829:4:41","nodeType":"VariableDeclaration","scope":8185,"src":"813:20:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8176,"name":"address","nodeType":"ElementaryTypeName","src":"813:7:41","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8179,"indexed":true,"mutability":"mutable","name":"baseAddr","nameLocation":"859:8:41","nodeType":"VariableDeclaration","scope":8185,"src":"843:24:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8178,"name":"address","nodeType":"ElementaryTypeName","src":"843:7:41","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8181,"indexed":true,"mutability":"mutable","name":"baseCodehash","nameLocation":"893:12:41","nodeType":"VariableDeclaration","scope":8185,"src":"877:28:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8180,"name":"bytes32","nodeType":"ElementaryTypeName","src":"877:7:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":8183,"indexed":false,"mutability":"mutable","name":"versionTag","nameLocation":"923:10:41","nodeType":"VariableDeclaration","scope":8185,"src":"915:18:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8182,"name":"bytes32","nodeType":"ElementaryTypeName","src":"915:7:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"803:136:41"},"src":"789:151:41"},{"body":{"id":8213,"nodeType":"Block","src":"979:253:41","statements":[{"assignments":[8191],"declarations":[{"constant":false,"id":8191,"mutability":"mutable","name":"_base","nameLocation":"997:5:41","nodeType":"VariableDeclaration","scope":8213,"src":"989:13:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8190,"name":"address","nodeType":"ElementaryTypeName","src":"989:7:41","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":8196,"initialValue":{"arguments":[{"id":8194,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"1013:4:41","typeDescriptions":{"typeIdentifier":"t_contract$_Upgradable_$8256","typeString":"contract Upgradable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Upgradable_$8256","typeString":"contract Upgradable"}],"id":8193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1005:7:41","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":8192,"name":"address","nodeType":"ElementaryTypeName","src":"1005:7:41","typeDescriptions":{}}},"id":8195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1005:13:41","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"989:29:41"},{"assignments":[8198],"declarations":[{"constant":false,"id":8198,"mutability":"mutable","name":"_codehash","nameLocation":"1036:9:41","nodeType":"VariableDeclaration","scope":8213,"src":"1028:17:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8197,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1028:7:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":8199,"nodeType":"VariableDeclarationStatement","src":"1028:17:41"},{"AST":{"nodeType":"YulBlock","src":"1072:55:41","statements":[{"nodeType":"YulAssignment","src":"1086:31:41","value":{"arguments":[{"name":"_base","nodeType":"YulIdentifier","src":"1111:5:41"}],"functionName":{"name":"extcodehash","nodeType":"YulIdentifier","src":"1099:11:41"},"nodeType":"YulFunctionCall","src":"1099:18:41"},"variableNames":[{"name":"_codehash","nodeType":"YulIdentifier","src":"1086:9:41"}]}]},"evmVersion":"london","externalReferences":[{"declaration":8191,"isOffset":false,"isSlot":false,"src":"1111:5:41","valueSize":1},{"declaration":8198,"isOffset":false,"isSlot":false,"src":"1086:9:41","valueSize":1}],"id":8200,"nodeType":"InlineAssembly","src":"1063:64:41"},{"expression":{"id":8203,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8201,"name":"_BASE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8170,"src":"1136:5:41","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8202,"name":"_base","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8191,"src":"1144:5:41","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1136:13:41","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":8204,"nodeType":"ExpressionStatement","src":"1136:13:41"},{"expression":{"id":8207,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8205,"name":"_CODEHASH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8172,"src":"1159:9:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8206,"name":"_codehash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8198,"src":"1171:9:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1159:21:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":8208,"nodeType":"ExpressionStatement","src":"1159:21:41"},{"expression":{"id":8211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8209,"name":"_UPGRADABLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8174,"src":"1198:11:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8210,"name":"_isUpgradable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8187,"src":"1212:13:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1198:27:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":8212,"nodeType":"ExpressionStatement","src":"1198:27:41"}]},"id":8214,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":8188,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8187,"mutability":"mutable","name":"_isUpgradable","nameLocation":"964:13:41","nodeType":"VariableDeclaration","scope":8214,"src":"959:18:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":8186,"name":"bool","nodeType":"ElementaryTypeName","src":"959:4:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"958:20:41"},"returnParameters":{"id":8189,"nodeType":"ParameterList","parameters":[],"src":"979:0:41"},"scope":8256,"src":"946:286:41","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"documentation":{"id":8215,"nodeType":"StructuredDocumentation","src":"1238:78:41","text":"@dev Tells whether provided address could eventually upgrade the contract."},"functionSelector":"6b58960a","id":8222,"implemented":false,"kind":"function","modifiers":[],"name":"isUpgradableFrom","nameLocation":"1330:16:41","nodeType":"FunctionDefinition","parameters":{"id":8218,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8217,"mutability":"mutable","name":"from","nameLocation":"1355:4:41","nodeType":"VariableDeclaration","scope":8222,"src":"1347:12:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8216,"name":"address","nodeType":"ElementaryTypeName","src":"1347:7:41","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1346:14:41"},"returnParameters":{"id":8221,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8220,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8222,"src":"1392:4:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":8219,"name":"bool","nodeType":"ElementaryTypeName","src":"1392:4:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1391:6:41"},"scope":8256,"src":"1321:77:41","stateMutability":"view","virtual":true,"visibility":"external"},{"body":{"id":8230,"nodeType":"Block","src":"1749:29:41","statements":[{"expression":{"id":8228,"name":"_BASE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8170,"src":"1766:5:41","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":8227,"id":8229,"nodeType":"Return","src":"1759:12:41"}]},"documentation":{"id":8223,"nodeType":"StructuredDocumentation","src":"1605:93:41","text":"@dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern."},"functionSelector":"5001f3b5","id":8231,"implemented":true,"kind":"function","modifiers":[],"name":"base","nameLocation":"1712:4:41","nodeType":"FunctionDefinition","parameters":{"id":8224,"nodeType":"ParameterList","parameters":[],"src":"1716:2:41"},"returnParameters":{"id":8227,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8226,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8231,"src":"1740:7:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8225,"name":"address","nodeType":"ElementaryTypeName","src":"1740:7:41","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1739:9:41"},"scope":8256,"src":"1703:75:41","stateMutability":"view","virtual":false,"visibility":"public"},{"body":{"id":8239,"nodeType":"Block","src":"2002:33:41","statements":[{"expression":{"id":8237,"name":"_CODEHASH","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8172,"src":"2019:9:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":8236,"id":8238,"nodeType":"Return","src":"2012:16:41"}]},"documentation":{"id":8232,"nodeType":"StructuredDocumentation","src":"1784:153:41","text":"@dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\n @return _codehash This contracts immutable codehash."},"functionSelector":"a9e954b9","id":8240,"implemented":true,"kind":"function","modifiers":[],"name":"codehash","nameLocation":"1951:8:41","nodeType":"FunctionDefinition","parameters":{"id":8233,"nodeType":"ParameterList","parameters":[],"src":"1959:2:41"},"returnParameters":{"id":8236,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8235,"mutability":"mutable","name":"_codehash","nameLocation":"1991:9:41","nodeType":"VariableDeclaration","scope":8240,"src":"1983:17:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8234,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1983:7:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1982:19:41"},"scope":8256,"src":"1942:93:41","stateMutability":"view","virtual":false,"visibility":"public"},{"body":{"id":8248,"nodeType":"Block","src":"2241:43:41","statements":[{"expression":{"id":8246,"name":"_UPGRADABLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8174,"src":"2266:11:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":8245,"id":8247,"nodeType":"Return","src":"2259:18:41"}]},"documentation":{"id":8241,"nodeType":"StructuredDocumentation","src":"2045:140:41","text":"@dev Determines whether current instance allows being upgraded.\n @dev Returned value should be invariant from whoever is calling."},"functionSelector":"5479d940","id":8249,"implemented":true,"kind":"function","modifiers":[],"name":"isUpgradable","nameLocation":"2199:12:41","nodeType":"FunctionDefinition","parameters":{"id":8242,"nodeType":"ParameterList","parameters":[],"src":"2211:2:41"},"returnParameters":{"id":8245,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8244,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8249,"src":"2235:4:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":8243,"name":"bool","nodeType":"ElementaryTypeName","src":"2235:4:41","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2234:6:41"},"scope":8256,"src":"2190:94:41","stateMutability":"view","virtual":false,"visibility":"public"},{"documentation":{"id":8250,"nodeType":"StructuredDocumentation","src":"2290:73:41","text":"@dev Retrieves human-redable named version of current implementation."},"functionSelector":"54fd4d50","id":8255,"implemented":false,"kind":"function","modifiers":[],"name":"version","nameLocation":"2377:7:41","nodeType":"FunctionDefinition","parameters":{"id":8251,"nodeType":"ParameterList","parameters":[],"src":"2384:2:41"},"returnParameters":{"id":8254,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8253,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8255,"src":"2416:7:41","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8252,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2416:7:41","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2415:9:41"},"scope":8256,"src":"2368:57:41","stateMutability":"view","virtual":true,"visibility":"public"}],"scope":8257,"src":"165:2263:41","usedErrors":[]}],"src":"75:2353:41"},"id":41},"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol","exportedSymbols":{"IWitnetRequest":[3829],"Witnet":[4619],"WitnetRequestBase":[8270]},"id":8271,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":8258,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:42"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":8259,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8271,"sourceUnit":4620,"src":"66:28:42","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":8260,"name":"IWitnetRequest","nodeType":"IdentifierPath","referencedDeclaration":3829,"src":"147:14:42"},"id":8261,"nodeType":"InheritanceSpecifier","src":"147:14:42"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":8270,"linearizedBaseContracts":[8270,3829],"name":"WitnetRequestBase","nameLocation":"114:17:42","nodeType":"ContractDefinition","nodes":[{"baseFunctions":[3822],"constant":false,"documentation":{"id":8262,"nodeType":"StructuredDocumentation","src":"168:79:42","text":"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers."},"functionSelector":"f0940002","id":8265,"mutability":"mutable","name":"bytecode","nameLocation":"274:8:42","nodeType":"VariableDeclaration","overrides":{"id":8264,"nodeType":"OverrideSpecifier","overrides":[],"src":"265:8:42"},"scope":8270,"src":"252:30:42","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes"},"typeName":{"id":8263,"name":"bytes","nodeType":"ElementaryTypeName","src":"252:5:42","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"public"},{"baseFunctions":[3828],"constant":false,"documentation":{"id":8266,"nodeType":"StructuredDocumentation","src":"289:69:42","text":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."},"functionSelector":"09bd5a60","id":8269,"mutability":"mutable","name":"hash","nameLocation":"387:4:42","nodeType":"VariableDeclaration","overrides":{"id":8268,"nodeType":"OverrideSpecifier","overrides":[],"src":"378:8:42"},"scope":8270,"src":"363:28:42","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8267,"name":"bytes32","nodeType":"ElementaryTypeName","src":"363:7:42","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"}],"scope":8271,"src":"96:298:42","usedErrors":[]}],"src":"33:362:42"},"id":42},"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol","exportedSymbols":{"IWitnetRequest":[3829],"Initializable":[7995],"Witnet":[4619],"WitnetRequestBase":[8270],"WitnetRequestInitializableBase":[8307]},"id":8308,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":8272,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:43"},{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol","file":"./WitnetRequestBase.sol","id":8273,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8308,"sourceUnit":8271,"src":"66:33:43","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Initializable.sol","file":"../patterns/Initializable.sol","id":8274,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":8308,"sourceUnit":7996,"src":"100:39:43","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":8275,"name":"Initializable","nodeType":"IdentifierPath","referencedDeclaration":7995,"src":"205:13:43"},"id":8276,"nodeType":"InheritanceSpecifier","src":"205:13:43"},{"baseName":{"id":8277,"name":"WitnetRequestBase","nodeType":"IdentifierPath","referencedDeclaration":8270,"src":"228:17:43"},"id":8278,"nodeType":"InheritanceSpecifier","src":"228:17:43"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":8307,"linearizedBaseContracts":[8307,8270,3829,7995],"name":"WitnetRequestInitializableBase","nameLocation":"159:30:43","nodeType":"ContractDefinition","nodes":[{"id":8281,"libraryName":{"id":8279,"name":"Witnet","nodeType":"IdentifierPath","referencedDeclaration":4619,"src":"258:6:43"},"nodeType":"UsingForDirective","src":"252:23:43","typeName":{"id":8280,"name":"bytes","nodeType":"ElementaryTypeName","src":"269:5:43","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},{"baseFunctions":[7994],"body":{"id":8305,"nodeType":"Block","src":"368:201:43","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":8291,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":8288,"name":"bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8265,"src":"399:8:43","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":8289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"399:15:43","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":8290,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"418:1:43","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"399:20:43","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e657452657175657374496e697469616c697a61626c65426173653a2063616e6e6f74206368616e67652062797465636f6465","id":8292,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"433:56:43","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5","typeString":"literal_string \"WitnetRequestInitializableBase: cannot change bytecode\""},"value":"WitnetRequestInitializableBase: cannot change bytecode"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5","typeString":"literal_string \"WitnetRequestInitializableBase: cannot change bytecode\""}],"id":8287,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"378:7:43","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8293,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"378:121:43","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8294,"nodeType":"ExpressionStatement","src":"378:121:43"},{"expression":{"id":8297,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8295,"name":"bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8265,"src":"509:8:43","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8296,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8283,"src":"520:9:43","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"509:20:43","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":8298,"nodeType":"ExpressionStatement","src":"509:20:43"},{"expression":{"id":8303,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8299,"name":"hash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8269,"src":"539:4:43","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":8300,"name":"_bytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8283,"src":"546:9:43","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":8301,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":4301,"src":"546:14:43","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$bound_to$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":8302,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"546:16:43","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"539:23:43","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":8304,"nodeType":"ExpressionStatement","src":"539:23:43"}]},"functionSelector":"439fab91","id":8306,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"289:10:43","nodeType":"FunctionDefinition","overrides":{"id":8285,"nodeType":"OverrideSpecifier","overrides":[],"src":"355:8:43"},"parameters":{"id":8284,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8283,"mutability":"mutable","name":"_bytecode","nameLocation":"313:9:43","nodeType":"VariableDeclaration","scope":8306,"src":"300:22:43","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8282,"name":"bytes","nodeType":"ElementaryTypeName","src":"300:5:43","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"299:24:43"},"returnParameters":{"id":8286,"nodeType":"ParameterList","parameters":[],"src":"368:0:43"},"scope":8307,"src":"280:289:43","stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"scope":8308,"src":"141:430:43","usedErrors":[]}],"src":"33:539:43"},"id":43},"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol","exportedSymbols":{"Clonable":[7948],"Context":[7979],"IWitnetRequest":[3829],"Initializable":[7995],"Ownable":[8100],"Proxiable":[8160],"Witnet":[4619],"WitnetRequestMalleableBase":[9039]},"id":9040,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":8309,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:44"},{"absolutePath":"witnet-solidity-bridge/contracts/libs/Witnet.sol","file":"../libs/Witnet.sol","id":8310,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":9040,"sourceUnit":4620,"src":"66:28:44","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Clonable.sol","file":"../patterns/Clonable.sol","id":8311,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":9040,"sourceUnit":7949,"src":"95:34:44","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Ownable.sol","file":"../patterns/Ownable.sol","id":8312,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":9040,"sourceUnit":8101,"src":"130:33:44","symbolAliases":[],"unitAlias":""},{"absolutePath":"witnet-solidity-bridge/contracts/patterns/Proxiable.sol","file":"../patterns/Proxiable.sol","id":8313,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":9040,"sourceUnit":8161,"src":"164:35:44","symbolAliases":[],"unitAlias":""},{"abstract":true,"baseContracts":[{"baseName":{"id":8314,"name":"IWitnetRequest","nodeType":"IdentifierPath","referencedDeclaration":3829,"src":"261:14:44"},"id":8315,"nodeType":"InheritanceSpecifier","src":"261:14:44"},{"baseName":{"id":8316,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"285:8:44"},"id":8317,"nodeType":"InheritanceSpecifier","src":"285:8:44"},{"baseName":{"id":8318,"name":"Ownable","nodeType":"IdentifierPath","referencedDeclaration":8100,"src":"303:7:44"},"id":8319,"nodeType":"InheritanceSpecifier","src":"303:7:44"},{"baseName":{"id":8320,"name":"Proxiable","nodeType":"IdentifierPath","referencedDeclaration":8160,"src":"320:9:44"},"id":8321,"nodeType":"InheritanceSpecifier","src":"320:9:44"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":9039,"linearizedBaseContracts":[9039,8160,8100,7979,7948,7995,3829],"name":"WitnetRequestMalleableBase","nameLocation":"219:26:44","nodeType":"ContractDefinition","nodes":[{"id":8323,"libraryName":{"id":8322,"name":"Witnet","nodeType":"IdentifierPath","referencedDeclaration":4619,"src":"345:6:44"},"nodeType":"UsingForDirective","src":"339:19:44"},{"anonymous":false,"id":8337,"name":"WitnessingParamsChanged","nameLocation":"370:23:44","nodeType":"EventDefinition","parameters":{"id":8336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8325,"indexed":true,"mutability":"mutable","name":"by","nameLocation":"419:2:44","nodeType":"VariableDeclaration","scope":8337,"src":"403:18:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8324,"name":"address","nodeType":"ElementaryTypeName","src":"403:7:44","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8327,"indexed":false,"mutability":"mutable","name":"numWitnesses","nameLocation":"437:12:44","nodeType":"VariableDeclaration","scope":8337,"src":"431:18:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8326,"name":"uint8","nodeType":"ElementaryTypeName","src":"431:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8329,"indexed":false,"mutability":"mutable","name":"minWitnessingConsensus","nameLocation":"465:22:44","nodeType":"VariableDeclaration","scope":8337,"src":"459:28:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8328,"name":"uint8","nodeType":"ElementaryTypeName","src":"459:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8331,"indexed":false,"mutability":"mutable","name":"witnssingCollateral","nameLocation":"504:19:44","nodeType":"VariableDeclaration","scope":8337,"src":"497:26:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8330,"name":"uint64","nodeType":"ElementaryTypeName","src":"497:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8333,"indexed":false,"mutability":"mutable","name":"witnessingReward","nameLocation":"540:16:44","nodeType":"VariableDeclaration","scope":8337,"src":"533:23:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8332,"name":"uint64","nodeType":"ElementaryTypeName","src":"533:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8335,"indexed":false,"mutability":"mutable","name":"witnessingUnitaryFee","nameLocation":"573:20:44","nodeType":"VariableDeclaration","scope":8337,"src":"566:27:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8334,"name":"uint64","nodeType":"ElementaryTypeName","src":"566:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"393:206:44"},"src":"364:236:44"},{"canonicalName":"WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext","id":8354,"members":[{"constant":false,"id":8340,"mutability":"mutable","name":"owner","nameLocation":"701:5:44","nodeType":"VariableDeclaration","scope":8354,"src":"693:13:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8339,"name":"address","nodeType":"ElementaryTypeName","src":"693:7:44","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":8343,"mutability":"mutable","name":"template","nameLocation":"763:8:44","nodeType":"VariableDeclaration","scope":8354,"src":"757:14:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":8342,"name":"bytes","nodeType":"ElementaryTypeName","src":"757:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":8346,"mutability":"mutable","name":"bytecode","nameLocation":"825:8:44","nodeType":"VariableDeclaration","scope":8354,"src":"819:14:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":8345,"name":"bytes","nodeType":"ElementaryTypeName","src":"819:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":8349,"mutability":"mutable","name":"hash","nameLocation":"885:4:44","nodeType":"VariableDeclaration","scope":8354,"src":"877:12:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8348,"name":"bytes32","nodeType":"ElementaryTypeName","src":"877:7:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":8353,"mutability":"mutable","name":"params","nameLocation":"976:6:44","nodeType":"VariableDeclaration","scope":8354,"src":"946:36:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8352,"nodeType":"UserDefinedTypeName","pathNode":{"id":8351,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"946:29:44"},"referencedDeclaration":8370,"src":"946:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"name":"WitnetRequestMalleableBaseContext","nameLocation":"613:33:44","nodeType":"StructDefinition","scope":9039,"src":"606:383:44","visibility":"public"},{"canonicalName":"WitnetRequestMalleableBase.WitnetRequestWitnessingParams","id":8370,"members":[{"constant":false,"id":8357,"mutability":"mutable","name":"numWitnesses","nameLocation":"1142:12:44","nodeType":"VariableDeclaration","scope":8370,"src":"1136:18:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8356,"name":"uint8","nodeType":"ElementaryTypeName","src":"1136:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8360,"mutability":"mutable","name":"minWitnessingConsensus","nameLocation":"1302:22:44","nodeType":"VariableDeclaration","scope":8370,"src":"1296:28:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8359,"name":"uint8","nodeType":"ElementaryTypeName","src":"1296:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8363,"mutability":"mutable","name":"witnessingCollateral","nameLocation":"1473:20:44","nodeType":"VariableDeclaration","scope":8370,"src":"1466:27:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8362,"name":"uint64","nodeType":"ElementaryTypeName","src":"1466:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8366,"mutability":"mutable","name":"witnessingReward","nameLocation":"1600:16:44","nodeType":"VariableDeclaration","scope":8370,"src":"1593:23:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8365,"name":"uint64","nodeType":"ElementaryTypeName","src":"1593:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8369,"mutability":"mutable","name":"witnessingUnitaryFee","nameLocation":"1773:20:44","nodeType":"VariableDeclaration","scope":8370,"src":"1766:27:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8368,"name":"uint64","nodeType":"ElementaryTypeName","src":"1766:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"name":"WitnetRequestWitnessingParams","nameLocation":"1002:29:44","nodeType":"StructDefinition","scope":9039,"src":"995:805:44","visibility":"public"},{"baseFunctions":[3822],"body":{"id":8381,"nodeType":"Block","src":"1958:43:44","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8377,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"1975:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8378,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1975:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8379,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"bytecode","nodeType":"MemberAccess","referencedDeclaration":8346,"src":"1975:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"functionReturnParameters":8376,"id":8380,"nodeType":"Return","src":"1968:26:44"}]},"documentation":{"id":8371,"nodeType":"StructuredDocumentation","src":"1806:81:44","text":"Returns current Witnet Data Request bytecode, encoded using Protocol Buffers."},"functionSelector":"f0940002","id":8382,"implemented":true,"kind":"function","modifiers":[],"name":"bytecode","nameLocation":"1901:8:44","nodeType":"FunctionDefinition","overrides":{"id":8373,"nodeType":"OverrideSpecifier","overrides":[],"src":"1926:8:44"},"parameters":{"id":8372,"nodeType":"ParameterList","parameters":[],"src":"1909:2:44"},"returnParameters":{"id":8376,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8375,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8382,"src":"1944:12:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8374,"name":"bytes","nodeType":"ElementaryTypeName","src":"1944:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1943:14:44"},"scope":9039,"src":"1892:109:44","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[3828],"body":{"id":8393,"nodeType":"Block","src":"2133:39:44","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8389,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"2150:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8390,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2150:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8391,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":8349,"src":"2150:15:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":8388,"id":8392,"nodeType":"Return","src":"2143:22:44"}]},"documentation":{"id":8383,"nodeType":"StructuredDocumentation","src":"2007:64:44","text":"Returns SHA256 hash of current Witnet Data Request bytecode."},"functionSelector":"09bd5a60","id":8394,"implemented":true,"kind":"function","modifiers":[],"name":"hash","nameLocation":"2085:4:44","nodeType":"FunctionDefinition","overrides":{"id":8385,"nodeType":"OverrideSpecifier","overrides":[],"src":"2106:8:44"},"parameters":{"id":8384,"nodeType":"ParameterList","parameters":[],"src":"2089:2:44"},"returnParameters":{"id":8388,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8387,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8394,"src":"2124:7:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8386,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2124:7:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2123:9:44"},"scope":9039,"src":"2076:96:44","stateMutability":"view","virtual":false,"visibility":"external"},{"body":{"id":8427,"nodeType":"Block","src":"2426:374:44","statements":[{"assignments":[8404],"declarations":[{"constant":false,"id":8404,"mutability":"mutable","name":"_params","nameLocation":"2474:7:44","nodeType":"VariableDeclaration","scope":8427,"src":"2436:45:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8403,"nodeType":"UserDefinedTypeName","pathNode":{"id":8402,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"2436:29:44"},"referencedDeclaration":8370,"src":"2436:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"id":8408,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8405,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"2484:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8406,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2484:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8407,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"2484:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"nodeType":"VariableDeclarationStatement","src":"2436:65:44"},{"expression":{"id":8413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8409,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8404,"src":"2511:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8411,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnessingCollateral","nodeType":"MemberAccess","referencedDeclaration":8363,"src":"2511:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8412,"name":"_witnessingCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8397,"src":"2542:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"2511:52:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8414,"nodeType":"ExpressionStatement","src":"2511:52:44"},{"expression":{"arguments":[{"expression":{"id":8416,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8404,"src":"2604:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8417,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"2604:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"expression":{"id":8418,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8404,"src":"2638:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8419,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"minWitnessingConsensus","nodeType":"MemberAccess","referencedDeclaration":8360,"src":"2638:30:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":8420,"name":"_witnessingCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8397,"src":"2682:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"expression":{"id":8421,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8404,"src":"2717:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8422,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingReward","nodeType":"MemberAccess","referencedDeclaration":8366,"src":"2717:24:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"expression":{"id":8423,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8404,"src":"2755:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8424,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingUnitaryFee","nodeType":"MemberAccess","referencedDeclaration":8369,"src":"2755:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8415,"name":"_malleateBytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8915,"src":"2573:17:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint8_$_t_uint8_$_t_uint64_$_t_uint64_$_t_uint64_$returns$__$","typeString":"function (uint8,uint8,uint64,uint64,uint64)"}},"id":8425,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2573:220:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8426,"nodeType":"ExpressionStatement","src":"2573:220:44"}]},"documentation":{"id":8395,"nodeType":"StructuredDocumentation","src":"2178:127:44","text":"Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction."},"functionSelector":"d9b9a961","id":8428,"implemented":true,"kind":"function","modifiers":[{"id":8400,"kind":"modifierInvocation","modifierName":{"id":8399,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":8042,"src":"2412:9:44"},"nodeType":"ModifierInvocation","src":"2412:9:44"}],"name":"setWitnessingCollateral","nameLocation":"2319:23:44","nodeType":"FunctionDefinition","parameters":{"id":8398,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8397,"mutability":"mutable","name":"_witnessingCollateral","nameLocation":"2350:21:44","nodeType":"VariableDeclaration","scope":8428,"src":"2343:28:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8396,"name":"uint64","nodeType":"ElementaryTypeName","src":"2343:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"2342:30:44"},"returnParameters":{"id":8401,"nodeType":"ParameterList","parameters":[],"src":"2426:0:44"},"scope":9039,"src":"2310:490:44","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":8468,"nodeType":"Block","src":"3308:421:44","statements":[{"assignments":[8440],"declarations":[{"constant":false,"id":8440,"mutability":"mutable","name":"_params","nameLocation":"3356:7:44","nodeType":"VariableDeclaration","scope":8468,"src":"3318:45:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8439,"nodeType":"UserDefinedTypeName","pathNode":{"id":8438,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"3318:29:44"},"referencedDeclaration":8370,"src":"3318:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"id":8444,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8441,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"3366:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8442,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3366:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8443,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"3366:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"nodeType":"VariableDeclarationStatement","src":"3318:65:44"},{"expression":{"id":8449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8445,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8440,"src":"3393:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8447,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnessingReward","nodeType":"MemberAccess","referencedDeclaration":8366,"src":"3393:24:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8448,"name":"_witnessingReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8431,"src":"3420:17:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"3393:44:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8450,"nodeType":"ExpressionStatement","src":"3393:44:44"},{"expression":{"id":8455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8451,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8440,"src":"3447:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8453,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnessingUnitaryFee","nodeType":"MemberAccess","referencedDeclaration":8369,"src":"3447:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8454,"name":"_witnessingUnitaryFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8433,"src":"3478:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"3447:52:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8456,"nodeType":"ExpressionStatement","src":"3447:52:44"},{"expression":{"arguments":[{"expression":{"id":8458,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8440,"src":"3540:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8459,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"3540:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"expression":{"id":8460,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8440,"src":"3574:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8461,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"minWitnessingConsensus","nodeType":"MemberAccess","referencedDeclaration":8360,"src":"3574:30:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"expression":{"id":8462,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8440,"src":"3618:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingCollateral","nodeType":"MemberAccess","referencedDeclaration":8363,"src":"3618:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"id":8464,"name":"_witnessingReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8431,"src":"3660:17:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"id":8465,"name":"_witnessingUnitaryFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8433,"src":"3691:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8457,"name":"_malleateBytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8915,"src":"3509:17:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint8_$_t_uint8_$_t_uint64_$_t_uint64_$_t_uint64_$returns$__$","typeString":"function (uint8,uint8,uint64,uint64,uint64)"}},"id":8466,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3509:213:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8467,"nodeType":"ExpressionStatement","src":"3509:213:44"}]},"documentation":{"id":8429,"nodeType":"StructuredDocumentation","src":"2806:361:44","text":"Specifies how much you want to pay for rewarding each of the Witnet nodes.\n @param _witnessingReward Amount of nanowits that every request-solving witness will be rewarded with.\n @param _witnessingUnitaryFee Amount of nanowits that will be earned by Witnet miners for each each valid \n commit/reveal transaction they include in a block."},"functionSelector":"ff21c3ba","id":8469,"implemented":true,"kind":"function","modifiers":[{"id":8436,"kind":"modifierInvocation","modifierName":{"id":8435,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":8042,"src":"3294:9:44"},"nodeType":"ModifierInvocation","src":"3294:9:44"}],"name":"setWitnessingFees","nameLocation":"3181:17:44","nodeType":"FunctionDefinition","parameters":{"id":8434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8431,"mutability":"mutable","name":"_witnessingReward","nameLocation":"3206:17:44","nodeType":"VariableDeclaration","scope":8469,"src":"3199:24:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8430,"name":"uint64","nodeType":"ElementaryTypeName","src":"3199:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8433,"mutability":"mutable","name":"_witnessingUnitaryFee","nameLocation":"3232:21:44","nodeType":"VariableDeclaration","scope":8469,"src":"3225:28:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8432,"name":"uint64","nodeType":"ElementaryTypeName","src":"3225:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"3198:56:44"},"returnParameters":{"id":8437,"nodeType":"ParameterList","parameters":[],"src":"3308:0:44"},"scope":9039,"src":"3172:557:44","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":8509,"nodeType":"Block","src":"4225:417:44","statements":[{"assignments":[8481],"declarations":[{"constant":false,"id":8481,"mutability":"mutable","name":"_params","nameLocation":"4273:7:44","nodeType":"VariableDeclaration","scope":8509,"src":"4235:45:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8480,"nodeType":"UserDefinedTypeName","pathNode":{"id":8479,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"4235:29:44"},"referencedDeclaration":8370,"src":"4235:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"id":8485,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8482,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"4283:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8483,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4283:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8484,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"4283:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"nodeType":"VariableDeclarationStatement","src":"4235:65:44"},{"expression":{"id":8490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8486,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8481,"src":"4310:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8488,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"4310:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8489,"name":"_numWitnesses","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8472,"src":"4333:13:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"4310:36:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":8491,"nodeType":"ExpressionStatement","src":"4310:36:44"},{"expression":{"id":8496,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8492,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8481,"src":"4356:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8494,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"minWitnessingConsensus","nodeType":"MemberAccess","referencedDeclaration":8360,"src":"4356:30:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8495,"name":"_minWitnessingConsensus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8474,"src":"4389:23:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"4356:56:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":8497,"nodeType":"ExpressionStatement","src":"4356:56:44"},{"expression":{"arguments":[{"id":8499,"name":"_numWitnesses","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8472,"src":"4453:13:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":8500,"name":"_minWitnessingConsensus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8474,"src":"4480:23:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"expression":{"id":8501,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8481,"src":"4517:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8502,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingCollateral","nodeType":"MemberAccess","referencedDeclaration":8363,"src":"4517:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"expression":{"id":8503,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8481,"src":"4559:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8504,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingReward","nodeType":"MemberAccess","referencedDeclaration":8366,"src":"4559:24:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"expression":{"id":8505,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8481,"src":"4597:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8506,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingUnitaryFee","nodeType":"MemberAccess","referencedDeclaration":8369,"src":"4597:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8498,"name":"_malleateBytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8915,"src":"4422:17:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint8_$_t_uint8_$_t_uint64_$_t_uint64_$_t_uint64_$returns$__$","typeString":"function (uint8,uint8,uint64,uint64,uint64)"}},"id":8507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4422:213:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8508,"nodeType":"ExpressionStatement","src":"4422:213:44"}]},"documentation":{"id":8470,"nodeType":"StructuredDocumentation","src":"3735:351:44","text":"Sets how many Witnet nodes will be \"hired\" for resolving the request.\n @param _numWitnesses Number of witnesses required to be involved for solving this Witnet Data Request.\n @param _minWitnessingConsensus Threshold percentage for aborting resolution of a request if the witnessing \n nodes did not arrive to a broad consensus."},"functionSelector":"d196c2e3","id":8510,"implemented":true,"kind":"function","modifiers":[{"id":8477,"kind":"modifierInvocation","modifierName":{"id":8476,"name":"onlyOwner","nodeType":"IdentifierPath","referencedDeclaration":8042,"src":"4211:9:44"},"nodeType":"ModifierInvocation","src":"4211:9:44"}],"name":"setWitnessingQuorum","nameLocation":"4100:19:44","nodeType":"FunctionDefinition","parameters":{"id":8475,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8472,"mutability":"mutable","name":"_numWitnesses","nameLocation":"4126:13:44","nodeType":"VariableDeclaration","scope":8510,"src":"4120:19:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8471,"name":"uint8","nodeType":"ElementaryTypeName","src":"4120:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8474,"mutability":"mutable","name":"_minWitnessingConsensus","nameLocation":"4147:23:44","nodeType":"VariableDeclaration","scope":8510,"src":"4141:29:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8473,"name":"uint8","nodeType":"ElementaryTypeName","src":"4141:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"4119:52:44"},"returnParameters":{"id":8478,"nodeType":"ParameterList","parameters":[],"src":"4225:0:44"},"scope":9039,"src":"4091:551:44","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"body":{"id":8520,"nodeType":"Block","src":"4884:43:44","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8516,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"4901:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8517,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"4901:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8518,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"template","nodeType":"MemberAccess","referencedDeclaration":8343,"src":"4901:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"functionReturnParameters":8515,"id":8519,"nodeType":"Return","src":"4894:26:44"}]},"documentation":{"id":8511,"nodeType":"StructuredDocumentation","src":"4648:154:44","text":"Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol\n level, including no witnessing parameters at all."},"functionSelector":"6f2ddd93","id":8521,"implemented":true,"kind":"function","modifiers":[],"name":"template","nameLocation":"4816:8:44","nodeType":"FunctionDefinition","parameters":{"id":8512,"nodeType":"ParameterList","parameters":[],"src":"4824:2:44"},"returnParameters":{"id":8515,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8514,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8521,"src":"4866:12:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8513,"name":"bytes","nodeType":"ElementaryTypeName","src":"4866:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"4865:14:44"},"scope":9039,"src":"4807:120:44","stateMutability":"view","virtual":false,"visibility":"external"},{"body":{"id":8540,"nodeType":"Block","src":"5126:150:44","statements":[{"assignments":[8529],"declarations":[{"constant":false,"id":8529,"mutability":"mutable","name":"_params","nameLocation":"5174:7:44","nodeType":"VariableDeclaration","scope":8540,"src":"5136:45:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8528,"nodeType":"UserDefinedTypeName","pathNode":{"id":8527,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"5136:29:44"},"referencedDeclaration":8370,"src":"5136:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"id":8533,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8530,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"5184:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5184:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8532,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"5184:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5136:65:44"},{"expression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":8534,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8529,"src":"5218:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8535,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"5218:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"expression":{"id":8536,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8529,"src":"5241:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8537,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingCollateral","nodeType":"MemberAccess","referencedDeclaration":8363,"src":"5241:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"5218:51:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":8526,"id":8539,"nodeType":"Return","src":"5211:58:44"}]},"documentation":{"id":8522,"nodeType":"StructuredDocumentation","src":"4933:99:44","text":"Returns total amount of nanowits that witnessing nodes will need to collateralize all together."},"functionSelector":"ef53d97a","id":8541,"implemented":true,"kind":"function","modifiers":[],"name":"totalWitnessingCollateral","nameLocation":"5046:25:44","nodeType":"FunctionDefinition","parameters":{"id":8523,"nodeType":"ParameterList","parameters":[],"src":"5071:2:44"},"returnParameters":{"id":8526,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8525,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8541,"src":"5113:7:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":8524,"name":"uint128","nodeType":"ElementaryTypeName","src":"5113:7:44","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"}],"src":"5112:9:44"},"scope":9039,"src":"5037:239:44","stateMutability":"view","virtual":false,"visibility":"external"},{"body":{"id":8566,"nodeType":"Block","src":"5471:183:44","statements":[{"assignments":[8549],"declarations":[{"constant":false,"id":8549,"mutability":"mutable","name":"_params","nameLocation":"5519:7:44","nodeType":"VariableDeclaration","scope":8566,"src":"5481:45:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8548,"nodeType":"UserDefinedTypeName","pathNode":{"id":8547,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"5481:29:44"},"referencedDeclaration":8370,"src":"5481:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"id":8553,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8550,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"5529:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8551,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5529:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8552,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"5529:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5481:65:44"},{"expression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8564,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":8554,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8549,"src":"5563:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8555,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"5563:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8559,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":8556,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5587:1:44","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"expression":{"id":8557,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8549,"src":"5591:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8558,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingUnitaryFee","nodeType":"MemberAccess","referencedDeclaration":8369,"src":"5591:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"5587:32:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":8560,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8549,"src":"5622:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8561,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingReward","nodeType":"MemberAccess","referencedDeclaration":8366,"src":"5622:24:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"5587:59:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"id":8563,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5586:61:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"5563:84:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"functionReturnParameters":8546,"id":8565,"nodeType":"Return","src":"5556:91:44"}]},"documentation":{"id":8542,"nodeType":"StructuredDocumentation","src":"5282:102:44","text":"Returns total amount of nanowits that will have to be paid in total for this request to be solved."},"functionSelector":"8a481dad","id":8567,"implemented":true,"kind":"function","modifiers":[],"name":"totalWitnessingFee","nameLocation":"5398:18:44","nodeType":"FunctionDefinition","parameters":{"id":8543,"nodeType":"ParameterList","parameters":[],"src":"5416:2:44"},"returnParameters":{"id":8546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8545,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8567,"src":"5458:7:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"},"typeName":{"id":8544,"name":"uint128","nodeType":"ElementaryTypeName","src":"5458:7:44","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"visibility":"internal"}],"src":"5457:9:44"},"scope":9039,"src":"5389:265:44","stateMutability":"view","virtual":false,"visibility":"external"},{"body":{"id":8578,"nodeType":"Block","src":"5839:41:44","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8574,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"5856:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8575,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"5856:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"5856:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"functionReturnParameters":8573,"id":8577,"nodeType":"Return","src":"5849:24:44"}]},"documentation":{"id":8568,"nodeType":"StructuredDocumentation","src":"5660:65:44","text":"Returns witnessing parameters of current Witnet Data Request."},"functionSelector":"48f9b831","id":8579,"implemented":true,"kind":"function","modifiers":[],"name":"witnessingParams","nameLocation":"5739:16:44","nodeType":"FunctionDefinition","parameters":{"id":8569,"nodeType":"ParameterList","parameters":[],"src":"5755:2:44"},"returnParameters":{"id":8573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8572,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8579,"src":"5797:36:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8571,"nodeType":"UserDefinedTypeName","pathNode":{"id":8570,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"5797:29:44"},"referencedDeclaration":8370,"src":"5797:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"src":"5796:38:44"},"scope":9039,"src":"5730:150:44","stateMutability":"view","virtual":false,"visibility":"external"},{"baseFunctions":[7910],"body":{"id":8612,"nodeType":"Block","src":"6517:160:44","statements":[{"expression":{"id":8591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8587,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8585,"src":"6527:9:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":8588,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"6539:5:44","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_WitnetRequestMalleableBase_$9039_$","typeString":"type(contract super WitnetRequestMalleableBase)"}},"id":8589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"clone","nodeType":"MemberAccess","referencedDeclaration":7910,"src":"6539:11:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_contract$_Clonable_$7948_$","typeString":"function () returns (contract Clonable)"}},"id":8590,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6539:13:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"src":"6527:25:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":8592,"nodeType":"ExpressionStatement","src":"6527:25:44"},{"expression":{"arguments":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8596,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"6583:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6583:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8598,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"template","nodeType":"MemberAccess","referencedDeclaration":8343,"src":"6583:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}],"expression":{"id":8593,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8585,"src":"6562:9:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":8595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":7994,"src":"6562:20:44","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory) external"}},"id":8599,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6562:41:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8600,"nodeType":"ExpressionStatement","src":"6562:41:44"},{"expression":{"arguments":[{"expression":{"id":8608,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"6659:3:44","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":8609,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"6659:10:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"arguments":[{"id":8604,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8585,"src":"6629:9:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":8603,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6621:7:44","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":8602,"name":"address","nodeType":"ElementaryTypeName","src":"6621:7:44","typeDescriptions":{}}},"id":8605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6621:18:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8601,"name":"Ownable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8100,"src":"6613:7:44","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Ownable_$8100_$","typeString":"type(contract Ownable)"}},"id":8606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6613:27:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Ownable_$8100","typeString":"contract Ownable"}},"id":8607,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transferOwnership","nodeType":"MemberAccess","referencedDeclaration":8079,"src":"6613:45:44","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":8610,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"6613:57:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8611,"nodeType":"ExpressionStatement","src":"6613:57:44"}]},"documentation":{"id":8580,"nodeType":"StructuredDocumentation","src":"6128:286:44","text":"Deploys and returns the address of a minimal proxy clone that replicates contract\n behaviour while using its own EVM storage.\n @dev This function should always provide a new address, no matter how many times \n @dev is actually called from the same `msg.sender`."},"functionSelector":"09ed4607","id":8613,"implemented":true,"kind":"function","modifiers":[],"name":"clone","nameLocation":"6428:5:44","nodeType":"FunctionDefinition","overrides":{"id":8582,"nodeType":"OverrideSpecifier","overrides":[],"src":"6467:8:44"},"parameters":{"id":8581,"nodeType":"ParameterList","parameters":[],"src":"6433:2:44"},"returnParameters":{"id":8586,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8585,"mutability":"mutable","name":"_instance","nameLocation":"6502:9:44","nodeType":"VariableDeclaration","scope":8613,"src":"6493:18:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":8584,"nodeType":"UserDefinedTypeName","pathNode":{"id":8583,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"6493:8:44"},"referencedDeclaration":7948,"src":"6493:8:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"6492:20:44"},"scope":9039,"src":"6419:258:44","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"baseFunctions":[7947],"body":{"id":8649,"nodeType":"Block","src":"7199:178:44","statements":[{"expression":{"id":8628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8623,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8621,"src":"7209:9:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":8626,"name":"_salt","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8616,"src":"7246:5:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":8624,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"7221:5:44","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_WitnetRequestMalleableBase_$9039_$","typeString":"type(contract super WitnetRequestMalleableBase)"}},"id":8625,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"cloneDeterministic","nodeType":"MemberAccess","referencedDeclaration":7947,"src":"7221:24:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$returns$_t_contract$_Clonable_$7948_$","typeString":"function (bytes32) returns (contract Clonable)"}},"id":8627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7221:31:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"src":"7209:43:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":8629,"nodeType":"ExpressionStatement","src":"7209:43:44"},{"expression":{"arguments":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8633,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"7283:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7283:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8635,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"template","nodeType":"MemberAccess","referencedDeclaration":8343,"src":"7283:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}],"expression":{"id":8630,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8621,"src":"7262:9:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"id":8632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":7994,"src":"7262:20:44","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory) external"}},"id":8636,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7262:41:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8637,"nodeType":"ExpressionStatement","src":"7262:41:44"},{"expression":{"arguments":[{"expression":{"id":8645,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"7359:3:44","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":8646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"7359:10:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"arguments":[{"id":8641,"name":"_instance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8621,"src":"7329:9:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}],"id":8640,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7321:7:44","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":8639,"name":"address","nodeType":"ElementaryTypeName","src":"7321:7:44","typeDescriptions":{}}},"id":8642,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7321:18:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8638,"name":"Ownable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8100,"src":"7313:7:44","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Ownable_$8100_$","typeString":"type(contract Ownable)"}},"id":8643,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7313:27:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_Ownable_$8100","typeString":"contract Ownable"}},"id":8644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"transferOwnership","nodeType":"MemberAccess","referencedDeclaration":8079,"src":"7313:45:44","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":8647,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7313:57:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8648,"nodeType":"ExpressionStatement","src":"7313:57:44"}]},"documentation":{"id":8614,"nodeType":"StructuredDocumentation","src":"6683:387:44","text":"Deploys and returns the address of a minimal proxy clone that replicates contract \n behaviour while using its own EVM storage.\n @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\n @dev the clone. Using the same `_salt` multiple time will revert, since\n @dev no contract can be deployed more than once at the same address."},"functionSelector":"daaa360c","id":8650,"implemented":true,"kind":"function","modifiers":[],"name":"cloneDeterministic","nameLocation":"7084:18:44","nodeType":"FunctionDefinition","overrides":{"id":8618,"nodeType":"OverrideSpecifier","overrides":[],"src":"7149:8:44"},"parameters":{"id":8617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8616,"mutability":"mutable","name":"_salt","nameLocation":"7111:5:44","nodeType":"VariableDeclaration","scope":8650,"src":"7103:13:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8615,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7103:7:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"7102:15:44"},"returnParameters":{"id":8622,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8621,"mutability":"mutable","name":"_instance","nameLocation":"7184:9:44","nodeType":"VariableDeclaration","scope":8650,"src":"7175:18:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"},"typeName":{"id":8620,"nodeType":"UserDefinedTypeName","pathNode":{"id":8619,"name":"Clonable","nodeType":"IdentifierPath","referencedDeclaration":7948,"src":"7175:8:44"},"referencedDeclaration":7948,"src":"7175:8:44","typeDescriptions":{"typeIdentifier":"t_contract$_Clonable_$7948","typeString":"contract Clonable"}},"visibility":"internal"}],"src":"7174:20:44"},"scope":9039,"src":"7075:302:44","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"baseFunctions":[7994],"body":{"id":8676,"nodeType":"Block","src":"7766:182:44","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":8663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8658,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"7784:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8659,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7784:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8660,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"template","nodeType":"MemberAccess","referencedDeclaration":8343,"src":"7784:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":8661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"7784:26:44","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":8662,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7814:1:44","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"7784:31:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a20616c726561647920696e697469616c697a6564","id":8664,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7817:49:44","typeDescriptions":{"typeIdentifier":"t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff","typeString":"literal_string \"WitnetRequestMalleableBase: already initialized\""},"value":"WitnetRequestMalleableBase: already initialized"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff","typeString":"literal_string \"WitnetRequestMalleableBase: already initialized\""}],"id":8657,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7776:7:44","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7776:91:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8666,"nodeType":"ExpressionStatement","src":"7776:91:44"},{"expression":{"arguments":[{"id":8668,"name":"_template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8653,"src":"7889:9:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":8667,"name":"_initialize","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8805,"src":"7877:11:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory)"}},"id":8669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7877:22:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8670,"nodeType":"ExpressionStatement","src":"7877:22:44"},{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":8672,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7960,"src":"7928:10:44","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":8673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7928:12:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":8671,"name":"_transferOwnership","nodeType":"Identifier","overloadedDeclarations":[8714],"referencedDeclaration":8714,"src":"7909:18:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":8674,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"7909:32:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8675,"nodeType":"ExpressionStatement","src":"7909:32:44"}]},"documentation":{"id":8651,"nodeType":"StructuredDocumentation","src":"7625:48:44","text":"@dev Initializes contract's storage context."},"functionSelector":"439fab91","id":8677,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"7687:10:44","nodeType":"FunctionDefinition","overrides":{"id":8655,"nodeType":"OverrideSpecifier","overrides":[],"src":"7753:8:44"},"parameters":{"id":8654,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8653,"mutability":"mutable","name":"_template","nameLocation":"7711:9:44","nodeType":"VariableDeclaration","scope":8677,"src":"7698:22:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8652,"name":"bytes","nodeType":"ElementaryTypeName","src":"7698:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"7697:24:44"},"returnParameters":{"id":8656,"nodeType":"ParameterList","parameters":[],"src":"7766:0:44"},"scope":9039,"src":"7678:270:44","stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"baseFunctions":[8028],"body":{"id":8688,"nodeType":"Block","src":"8337:40:44","statements":[{"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8684,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"8354:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8685,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8354:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8686,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":8340,"src":"8354:16:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":8683,"id":8687,"nodeType":"Return","src":"8347:23:44"}]},"documentation":{"id":8678,"nodeType":"StructuredDocumentation","src":"8195:45:44","text":"Returns the address of the current owner."},"functionSelector":"8da5cb5b","id":8689,"implemented":true,"kind":"function","modifiers":[],"name":"owner","nameLocation":"8254:5:44","nodeType":"FunctionDefinition","overrides":{"id":8680,"nodeType":"OverrideSpecifier","overrides":[],"src":"8298:8:44"},"parameters":{"id":8679,"nodeType":"ParameterList","parameters":[],"src":"8259:2:44"},"returnParameters":{"id":8683,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8682,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8689,"src":"8324:7:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8681,"name":"address","nodeType":"ElementaryTypeName","src":"8324:7:44","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8323:9:44"},"scope":9039,"src":"8245:132:44","stateMutability":"view","virtual":true,"visibility":"public"},{"baseFunctions":[8099],"body":{"id":8713,"nodeType":"Block","src":"8555:144:44","statements":[{"assignments":[8697],"declarations":[{"constant":false,"id":8697,"mutability":"mutable","name":"oldOwner","nameLocation":"8573:8:44","nodeType":"VariableDeclaration","scope":8713,"src":"8565:16:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8696,"name":"address","nodeType":"ElementaryTypeName","src":"8565:7:44","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":8701,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8698,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"8584:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8699,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8584:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8700,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":8340,"src":"8584:16:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"8565:35:44"},{"expression":{"id":8706,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8702,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"8610:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8610:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8704,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":8340,"src":"8610:16:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8705,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8692,"src":"8629:8:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"8610:27:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":8707,"nodeType":"ExpressionStatement","src":"8610:27:44"},{"eventCall":{"arguments":[{"id":8709,"name":"oldOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8697,"src":"8673:8:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":8710,"name":"newOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8692,"src":"8683:8:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":8708,"name":"OwnershipTransferred","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8009,"src":"8652:20:44","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":8711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"8652:40:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8712,"nodeType":"EmitStatement","src":"8647:45:44"}]},"documentation":{"id":8690,"nodeType":"StructuredDocumentation","src":"8383:75:44","text":"@dev Transfers ownership of the contract to a new account (`newOwner`)."},"id":8714,"implemented":true,"kind":"function","modifiers":[],"name":"_transferOwnership","nameLocation":"8472:18:44","nodeType":"FunctionDefinition","overrides":{"id":8694,"nodeType":"OverrideSpecifier","overrides":[],"src":"8542:8:44"},"parameters":{"id":8693,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8692,"mutability":"mutable","name":"newOwner","nameLocation":"8499:8:44","nodeType":"VariableDeclaration","scope":8714,"src":"8491:16:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":8691,"name":"address","nodeType":"ElementaryTypeName","src":"8491:7:44","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8490:18:44"},"returnParameters":{"id":8695,"nodeType":"ParameterList","parameters":[],"src":"8555:0:44"},"scope":9039,"src":"8463:236:44","stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"baseFunctions":[8159],"body":{"id":8724,"nodeType":"Block","src":"9187:174:44","statements":[{"expression":{"components":[{"hexValue":"307838353164306139326133616433303239356265663333616663363964363837343737393832366237373839333836623333366532323632313336356564326332","id":8721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9278:66:44","typeDescriptions":{"typeIdentifier":"t_rational_60208920397305833115561796975134710406702197199200286334173186442914422510274_by_1","typeString":"int_const 6020...(69 digits omitted)...0274"},"value":"0x851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c2"}],"id":8722,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"9204:150:44","typeDescriptions":{"typeIdentifier":"t_rational_60208920397305833115561796975134710406702197199200286334173186442914422510274_by_1","typeString":"int_const 6020...(69 digits omitted)...0274"}},"functionReturnParameters":8720,"id":8723,"nodeType":"Return","src":"9197:157:44"}]},"documentation":{"id":8715,"nodeType":"StructuredDocumentation","src":"8946:134:44","text":"@dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\n @dev See https://eips.ethereum.org/EIPS/eip-1822."},"functionSelector":"52d1902d","id":8725,"implemented":true,"kind":"function","modifiers":[],"name":"proxiableUUID","nameLocation":"9094:13:44","nodeType":"FunctionDefinition","overrides":{"id":8717,"nodeType":"OverrideSpecifier","overrides":[],"src":"9148:8:44"},"parameters":{"id":8716,"nodeType":"ParameterList","parameters":[],"src":"9107:2:44"},"returnParameters":{"id":8720,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8719,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":8725,"src":"9174:7:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":8718,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9174:7:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"9173:9:44"},"scope":9039,"src":"9085:276:44","stateMutability":"pure","virtual":true,"visibility":"external"},{"body":{"id":8804,"nodeType":"Block","src":"9745:690:44","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":8735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":8732,"name":"_template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8728,"src":"9762:9:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":8733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"length","nodeType":"MemberAccess","src":"9762:16:44","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":8734,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9781:1:44","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9762:20:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":8731,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"9755:6:44","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":8736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9755:28:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8737,"nodeType":"ExpressionStatement","src":"9755:28:44"},{"expression":{"id":8742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8738,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"9793:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8739,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9793:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8740,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"template","nodeType":"MemberAccess","referencedDeclaration":8343,"src":"9793:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8741,"name":"_template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8728,"src":"9815:9:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"9793:31:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":8743,"nodeType":"ExpressionStatement","src":"9793:31:44"},{"assignments":[8746],"declarations":[{"constant":false,"id":8746,"mutability":"mutable","name":"_params","nameLocation":"9873:7:44","nodeType":"VariableDeclaration","scope":8804,"src":"9835:45:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"},"typeName":{"id":8745,"nodeType":"UserDefinedTypeName","pathNode":{"id":8744,"name":"WitnetRequestWitnessingParams","nodeType":"IdentifierPath","referencedDeclaration":8370,"src":"9835:29:44"},"referencedDeclaration":8370,"src":"9835:29:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams"}},"visibility":"internal"}],"id":8750,"initialValue":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8747,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"9883:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8748,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"9883:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8749,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"params","nodeType":"MemberAccess","referencedDeclaration":8353,"src":"9883:17:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage ref"}},"nodeType":"VariableDeclarationStatement","src":"9835:65:44"},{"expression":{"id":8755,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8751,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"9910:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8753,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"9910:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"32","id":8754,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9933:1:44","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"9910:24:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":8756,"nodeType":"ExpressionStatement","src":"9910:24:44"},{"expression":{"id":8761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8757,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"9944:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8759,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"minWitnessingConsensus","nodeType":"MemberAccess","referencedDeclaration":8360,"src":"9944:30:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"3531","id":8760,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9977:2:44","typeDescriptions":{"typeIdentifier":"t_rational_51_by_1","typeString":"int_const 51"},"value":"51"},"src":"9944:35:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":8762,"nodeType":"ExpressionStatement","src":"9944:35:44"},{"expression":{"id":8769,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8763,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"9989:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8765,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnessingCollateral","nodeType":"MemberAccess","referencedDeclaration":8363,"src":"9989:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_rational_1000000000_by_1","typeString":"int_const 1000000000"},"id":8768,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":8766,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10020:2:44","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"39","id":8767,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10026:1:44","typeDescriptions":{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},"value":"9"},"src":"10020:7:44","typeDescriptions":{"typeIdentifier":"t_rational_1000000000_by_1","typeString":"int_const 1000000000"}},"src":"9989:38:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8770,"nodeType":"ExpressionStatement","src":"9989:38:44"},{"expression":{"id":8779,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8771,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10051:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8773,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnessingReward","nodeType":"MemberAccess","referencedDeclaration":8366,"src":"10051:24:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_rational_500000_by_1","typeString":"int_const 500000"},"id":8778,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"35","id":8774,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10078:1:44","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000_by_1","typeString":"int_const 100000"},"id":8777,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":8775,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10082:2:44","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"35","id":8776,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10088:1:44","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},"src":"10082:7:44","typeDescriptions":{"typeIdentifier":"t_rational_100000_by_1","typeString":"int_const 100000"}},"src":"10078:11:44","typeDescriptions":{"typeIdentifier":"t_rational_500000_by_1","typeString":"int_const 500000"}},"src":"10051:38:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8780,"nodeType":"ExpressionStatement","src":"10051:38:44"},{"expression":{"id":8789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":8781,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10121:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8783,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"witnessingUnitaryFee","nodeType":"MemberAccess","referencedDeclaration":8369,"src":"10121:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_rational_250000_by_1","typeString":"int_const 250000"},"id":8788,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3235","id":8784,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10152:2:44","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":8787,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":8785,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10157:2:44","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":8786,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10163:1:44","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"10157:7:44","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"src":"10152:12:44","typeDescriptions":{"typeIdentifier":"t_rational_250000_by_1","typeString":"int_const 250000"}},"src":"10121:43:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8790,"nodeType":"ExpressionStatement","src":"10121:43:44"},{"expression":{"arguments":[{"expression":{"id":8792,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10232:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8793,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"numWitnesses","nodeType":"MemberAccess","referencedDeclaration":8357,"src":"10232:20:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"expression":{"id":8794,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10266:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8795,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"minWitnessingConsensus","nodeType":"MemberAccess","referencedDeclaration":8360,"src":"10266:30:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"expression":{"id":8796,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10310:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8797,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingCollateral","nodeType":"MemberAccess","referencedDeclaration":8363,"src":"10310:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"expression":{"id":8798,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10352:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8799,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingReward","nodeType":"MemberAccess","referencedDeclaration":8366,"src":"10352:24:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"expression":{"id":8800,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8746,"src":"10390:7:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestWitnessingParams_$8370_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams storage pointer"}},"id":8801,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"witnessingUnitaryFee","nodeType":"MemberAccess","referencedDeclaration":8369,"src":"10390:28:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8791,"name":"_malleateBytecode","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8915,"src":"10201:17:44","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint8_$_t_uint8_$_t_uint64_$_t_uint64_$_t_uint64_$returns$__$","typeString":"function (uint8,uint8,uint64,uint64,uint64)"}},"id":8802,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10201:227:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8803,"nodeType":"ExpressionStatement","src":"10201:227:44"}]},"documentation":{"id":8726,"nodeType":"StructuredDocumentation","src":"9613:61:44","text":"@dev Initializes witnessing params and template bytecode."},"id":8805,"implemented":true,"kind":"function","modifiers":[],"name":"_initialize","nameLocation":"9688:11:44","nodeType":"FunctionDefinition","parameters":{"id":8729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8728,"mutability":"mutable","name":"_template","nameLocation":"9713:9:44","nodeType":"VariableDeclaration","scope":8805,"src":"9700:22:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8727,"name":"bytes","nodeType":"ElementaryTypeName","src":"9700:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"9699:24:44"},"returnParameters":{"id":8730,"nodeType":"ParameterList","parameters":[],"src":"9745:0:44"},"scope":9039,"src":"9679:756:44","stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"body":{"id":8914,"nodeType":"Block","src":"10807:1278:44","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8820,"name":"_witnessingReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8814,"src":"10838:17:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":8821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10858:1:44","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"10838:21:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a206e6f20726577617264","id":8823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10873:39:44","typeDescriptions":{"typeIdentifier":"t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf","typeString":"literal_string \"WitnetRequestMalleableBase: no reward\""},"value":"WitnetRequestMalleableBase: no reward"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf","typeString":"literal_string \"WitnetRequestMalleableBase: no reward\""}],"id":8819,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10817:7:44","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10817:105:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8825,"nodeType":"ExpressionStatement","src":"10817:105:44"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":8833,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":8829,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8827,"name":"_numWitnesses","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8808,"src":"10953:13:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"31","id":8828,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10970:1:44","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"10953:18:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":8832,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8830,"name":"_numWitnesses","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8808,"src":"10975:13:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"313237","id":8831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10992:3:44","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"10975:20:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"10953:42:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a206e756d626572206f66207769746e6573736573206f7574206f662072616e6765","id":8834,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11009:62:44","typeDescriptions":{"typeIdentifier":"t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae","typeString":"literal_string \"WitnetRequestMalleableBase: number of witnesses out of range\""},"value":"WitnetRequestMalleableBase: number of witnesses out of range"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae","typeString":"literal_string \"WitnetRequestMalleableBase: number of witnesses out of range\""}],"id":8826,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10932:7:44","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"10932:149:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8836,"nodeType":"ExpressionStatement","src":"10932:149:44"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":8844,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":8840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8838,"name":"_minWitnessingConsensus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8810,"src":"11112:23:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"hexValue":"3531","id":8839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11139:2:44","typeDescriptions":{"typeIdentifier":"t_rational_51_by_1","typeString":"int_const 51"},"value":"51"},"src":"11112:29:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":8843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8841,"name":"_minWitnessingConsensus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8810,"src":"11145:23:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"3939","id":8842,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11172:2:44","typeDescriptions":{"typeIdentifier":"t_rational_99_by_1","typeString":"int_const 99"},"value":"99"},"src":"11145:29:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11112:62:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a207769746e657373696e6720636f6e73656e737573206f7574206f662072616e6765","id":8845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11188:63:44","typeDescriptions":{"typeIdentifier":"t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18","typeString":"literal_string \"WitnetRequestMalleableBase: witnessing consensus out of range\""},"value":"WitnetRequestMalleableBase: witnessing consensus out of range"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18","typeString":"literal_string \"WitnetRequestMalleableBase: witnessing consensus out of range\""}],"id":8837,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11091:7:44","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8846,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11091:170:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8847,"nodeType":"ExpressionStatement","src":"11091:170:44"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8849,"name":"_witnessingCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8812,"src":"11292:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"commonType":{"typeIdentifier":"t_rational_1000000000_by_1","typeString":"int_const 1000000000"},"id":8852,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":8850,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11317:2:44","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"39","id":8851,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11323:1:44","typeDescriptions":{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},"value":"9"},"src":"11317:7:44","typeDescriptions":{"typeIdentifier":"t_rational_1000000000_by_1","typeString":"int_const 1000000000"}},"src":"11292:32:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a207769746e657373696e6720636f6c6c61746572616c2062656c6f77203120574954","id":8854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11338:63:44","typeDescriptions":{"typeIdentifier":"t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e","typeString":"literal_string \"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\""},"value":"WitnetRequestMalleableBase: witnessing collateral below 1 WIT"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e","typeString":"literal_string \"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\""}],"id":8848,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11271:7:44","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":8855,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11271:140:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8856,"nodeType":"ExpressionStatement","src":"11271:140:44"},{"expression":{"id":8892,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8857,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"11422:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11422:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8859,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"bytecode","nodeType":"MemberAccess","referencedDeclaration":8346,"src":"11422:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8862,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"11474:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11474:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8864,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"template","nodeType":"MemberAccess","referencedDeclaration":8343,"src":"11474:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},{"arguments":[{"arguments":[{"hexValue":"30783130","id":8868,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11528:4:44","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"0x10"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"}],"id":8867,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11521:6:44","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":8866,"name":"bytes1","nodeType":"ElementaryTypeName","src":"11521:6:44","typeDescriptions":{}}},"id":8869,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11521:12:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"id":8870,"name":"_witnessingReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8814,"src":"11535:17:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8865,"name":"_uint64varint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9019,"src":"11507:13:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes1_$_t_uint64_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes1,uint64) pure returns (bytes memory)"}},"id":8871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11507:46:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"arguments":[{"hexValue":"30783138","id":8875,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11587:4:44","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"0x18"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"}],"id":8874,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11580:6:44","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":8873,"name":"bytes1","nodeType":"ElementaryTypeName","src":"11580:6:44","typeDescriptions":{}}},"id":8876,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11580:12:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"id":8877,"name":"_numWitnesses","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8808,"src":"11594:13:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":8872,"name":"_uint8varint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9038,"src":"11567:12:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes1_$_t_uint8_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes1,uint8) pure returns (bytes memory)"}},"id":8878,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11567:41:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"hexValue":"30783230","id":8880,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11636:4:44","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"0x20"},{"id":8881,"name":"_witnessingUnitaryFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8816,"src":"11642:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8879,"name":"_uint64varint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9019,"src":"11622:13:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes1_$_t_uint64_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes1,uint64) pure returns (bytes memory)"}},"id":8882,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11622:42:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"hexValue":"30783238","id":8884,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11691:4:44","typeDescriptions":{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"},"value":"0x28"},{"id":8885,"name":"_minWitnessingConsensus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8810,"src":"11697:23:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"},{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":8883,"name":"_uint8varint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9038,"src":"11678:12:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes1_$_t_uint8_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes1,uint8) pure returns (bytes memory)"}},"id":8886,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11678:43:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"arguments":[{"hexValue":"30783330","id":8888,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11749:4:44","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"0x30"},{"id":8889,"name":"_witnessingCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8812,"src":"11755:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8887,"name":"_uint64varint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9019,"src":"11735:13:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes1_$_t_uint64_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes1,uint64) pure returns (bytes memory)"}},"id":8890,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11735:42:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":8860,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"11444:3:44","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":8861,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","src":"11444:16:44","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":8891,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11444:343:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"11422:365:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":8893,"nodeType":"ExpressionStatement","src":"11422:365:44"},{"expression":{"id":8902,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8894,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"11797:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11797:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8896,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":8349,"src":"11797:15:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":8897,"name":"_request","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8924,"src":"11815:8:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$__$returns$_t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr_$","typeString":"function () pure returns (struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer)"}},"id":8898,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11815:10:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext storage pointer"}},"id":8899,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberName":"bytecode","nodeType":"MemberAccess","referencedDeclaration":8346,"src":"11815:19:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage","typeString":"bytes storage ref"}},"id":8900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"hash","nodeType":"MemberAccess","referencedDeclaration":4301,"src":"11815:24:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$bound_to$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":8901,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11815:26:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"11797:44:44","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":8903,"nodeType":"ExpressionStatement","src":"11797:44:44"},{"eventCall":{"arguments":[{"expression":{"id":8905,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"11893:3:44","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":8906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","src":"11893:10:44","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":8907,"name":"_numWitnesses","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8808,"src":"11917:13:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":8908,"name":"_minWitnessingConsensus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8810,"src":"11944:23:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":8909,"name":"_witnessingCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8812,"src":"11981:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"id":8910,"name":"_witnessingReward","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8814,"src":"12016:17:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},{"id":8911,"name":"_witnessingUnitaryFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8816,"src":"12047:21:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8904,"name":"WitnessingParamsChanged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8337,"src":"11856:23:44","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint8_$_t_uint8_$_t_uint64_$_t_uint64_$_t_uint64_$returns$__$","typeString":"function (address,uint8,uint8,uint64,uint64,uint64)"}},"id":8912,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"11856:222:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":8913,"nodeType":"EmitStatement","src":"11851:227:44"}]},"documentation":{"id":8806,"nodeType":"StructuredDocumentation","src":"10441:89:44","text":"@dev Serializes new `bytecode` by combining immutable template with given parameters."},"id":8915,"implemented":true,"kind":"function","modifiers":[],"name":"_malleateBytecode","nameLocation":"10544:17:44","nodeType":"FunctionDefinition","parameters":{"id":8817,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8808,"mutability":"mutable","name":"_numWitnesses","nameLocation":"10581:13:44","nodeType":"VariableDeclaration","scope":8915,"src":"10575:19:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8807,"name":"uint8","nodeType":"ElementaryTypeName","src":"10575:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8810,"mutability":"mutable","name":"_minWitnessingConsensus","nameLocation":"10614:23:44","nodeType":"VariableDeclaration","scope":8915,"src":"10608:29:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":8809,"name":"uint8","nodeType":"ElementaryTypeName","src":"10608:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":8812,"mutability":"mutable","name":"_witnessingCollateral","nameLocation":"10658:21:44","nodeType":"VariableDeclaration","scope":8915,"src":"10651:28:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8811,"name":"uint64","nodeType":"ElementaryTypeName","src":"10651:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8814,"mutability":"mutable","name":"_witnessingReward","nameLocation":"10700:17:44","nodeType":"VariableDeclaration","scope":8915,"src":"10693:24:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8813,"name":"uint64","nodeType":"ElementaryTypeName","src":"10693:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":8816,"mutability":"mutable","name":"_witnessingUnitaryFee","nameLocation":"10738:21:44","nodeType":"VariableDeclaration","scope":8915,"src":"10731:28:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8815,"name":"uint64","nodeType":"ElementaryTypeName","src":"10731:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"10561:208:44"},"returnParameters":{"id":8818,"nodeType":"ParameterList","parameters":[],"src":"10807:0:44"},"scope":9039,"src":"10535:1550:44","stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"body":{"id":8923,"nodeType":"Block","src":"12294:216:44","statements":[{"AST":{"nodeType":"YulBlock","src":"12313:191:44","statements":[{"nodeType":"YulAssignment","src":"12327:167:44","value":{"kind":"number","nodeType":"YulLiteral","src":"12428:66:44","type":"","value":"0x375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7"},"variableNames":[{"name":"_ptr.slot","nodeType":"YulIdentifier","src":"12327:9:44"}]}]},"evmVersion":"london","externalReferences":[{"declaration":8920,"isOffset":false,"isSlot":true,"src":"12327:9:44","suffix":"slot","valueSize":1}],"id":8922,"nodeType":"InlineAssembly","src":"12304:200:44"}]},"documentation":{"id":8916,"nodeType":"StructuredDocumentation","src":"12091:71:44","text":"@dev Returns pointer to storage slot where State struct is located."},"id":8924,"implemented":true,"kind":"function","modifiers":[],"name":"_request","nameLocation":"12176:8:44","nodeType":"FunctionDefinition","parameters":{"id":8917,"nodeType":"ParameterList","parameters":[],"src":"12184:2:44"},"returnParameters":{"id":8921,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8920,"mutability":"mutable","name":"_ptr","nameLocation":"12284:4:44","nodeType":"VariableDeclaration","scope":8924,"src":"12242:46:44","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext"},"typeName":{"id":8919,"nodeType":"UserDefinedTypeName","pathNode":{"id":8918,"name":"WitnetRequestMalleableBaseContext","nodeType":"IdentifierPath","referencedDeclaration":8354,"src":"12242:33:44"},"referencedDeclaration":8354,"src":"12242:33:44","typeDescriptions":{"typeIdentifier":"t_struct$_WitnetRequestMalleableBaseContext_$8354_storage_ptr","typeString":"struct WitnetRequestMalleableBase.WitnetRequestMalleableBaseContext"}},"visibility":"internal"}],"src":"12241:48:44"},"scope":9039,"src":"12167:343:44","stateMutability":"pure","virtual":true,"visibility":"internal"},{"body":{"id":9018,"nodeType":"Block","src":"12827:698:44","statements":[{"assignments":[8935],"declarations":[{"constant":false,"id":8935,"mutability":"mutable","name":"tmp","nameLocation":"12989:3:44","nodeType":"VariableDeclaration","scope":9018,"src":"12982:10:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8934,"name":"uint64","nodeType":"ElementaryTypeName","src":"12982:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":8937,"initialValue":{"id":8936,"name":"n","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8929,"src":"12995:1:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"VariableDeclarationStatement","src":"12982:14:44"},{"assignments":[8939],"declarations":[{"constant":false,"id":8939,"mutability":"mutable","name":"numBytes","nameLocation":"13013:8:44","nodeType":"VariableDeclaration","scope":9018,"src":"13006:15:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8938,"name":"uint64","nodeType":"ElementaryTypeName","src":"13006:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":8941,"initialValue":{"hexValue":"32","id":8940,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13024:1:44","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"VariableDeclarationStatement","src":"13006:19:44"},{"body":{"id":8955,"nodeType":"Block","src":"13054:66:44","statements":[{"expression":{"id":8949,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8945,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13068:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8946,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13074:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"37","id":8947,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13081:1:44","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"13074:8:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"13068:14:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8950,"nodeType":"ExpressionStatement","src":"13068:14:44"},{"expression":{"id":8953,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8951,"name":"numBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8939,"src":"13096:8:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"31","id":8952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13108:1:44","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"13096:13:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8954,"nodeType":"ExpressionStatement","src":"13096:13:44"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8942,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13042:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30783746","id":8943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13048:4:44","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"0x7F"},"src":"13042:10:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":8956,"nodeType":"WhileStatement","src":"13035:85:44"},{"assignments":[8958],"declarations":[{"constant":false,"id":8958,"mutability":"mutable","name":"buf","nameLocation":"13142:3:44","nodeType":"VariableDeclaration","scope":9018,"src":"13129:16:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8957,"name":"bytes","nodeType":"ElementaryTypeName","src":"13129:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":8963,"initialValue":{"arguments":[{"id":8961,"name":"numBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8939,"src":"13158:8:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8960,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"13148:9:44","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":8959,"name":"bytes","nodeType":"ElementaryTypeName","src":"13152:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":8962,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13148:19:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"13129:38:44"},{"expression":{"id":8966,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":8964,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13177:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8965,"name":"n","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8929,"src":"13183:1:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"13177:7:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8967,"nodeType":"ExpressionStatement","src":"13177:7:44"},{"expression":{"id":8972,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":8968,"name":"buf","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8958,"src":"13194:3:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":8970,"indexExpression":{"hexValue":"30","id":8969,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13198:1:44","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13194:6:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":8971,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8927,"src":"13203:1:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"13194:10:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":8973,"nodeType":"ExpressionStatement","src":"13194:10:44"},{"body":{"id":9006,"nodeType":"Block","src":"13252:164:44","statements":[{"expression":{"id":8998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":8984,"name":"buf","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8958,"src":"13336:3:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":8986,"indexExpression":{"id":8985,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8975,"src":"13340:1:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13336:6:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint8","typeString":"uint8"},"id":8996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"30783830","id":8989,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13352:4:44","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"0x80"},"nodeType":"BinaryOperation","operator":"|","rightExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8994,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8992,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13365:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783746","id":8993,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13371:4:44","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"0x7F"},"src":"13365:10:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":8991,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13359:5:44","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":8990,"name":"uint8","nodeType":"ElementaryTypeName","src":"13359:5:44","typeDescriptions":{}}},"id":8995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13359:17:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"13352:24:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":8988,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13345:6:44","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes1_$","typeString":"type(bytes1)"},"typeName":{"id":8987,"name":"bytes1","nodeType":"ElementaryTypeName","src":"13345:6:44","typeDescriptions":{}}},"id":8997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13345:32:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"13336:41:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":8999,"nodeType":"ExpressionStatement","src":"13336:41:44"},{"expression":{"id":9004,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":9000,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13391:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":9003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":9001,"name":"tmp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8935,"src":"13397:3:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"37","id":9002,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13404:1:44","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"13397:8:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"13391:14:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":9005,"nodeType":"ExpressionStatement","src":"13391:14:44"}]},"condition":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":8980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":8978,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8975,"src":"13233:1:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":8979,"name":"numBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8939,"src":"13237:8:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"src":"13233:12:44","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":9007,"initializationExpression":{"assignments":[8975],"declarations":[{"constant":false,"id":8975,"mutability":"mutable","name":"i","nameLocation":"13226:1:44","nodeType":"VariableDeclaration","scope":9007,"src":"13219:8:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8974,"name":"uint64","nodeType":"ElementaryTypeName","src":"13219:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"id":8977,"initialValue":{"hexValue":"31","id":8976,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13230:1:44","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"nodeType":"VariableDeclarationStatement","src":"13219:12:44"},"loopExpression":{"expression":{"id":8982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"13247:3:44","subExpression":{"id":8981,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8975,"src":"13247:1:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":8983,"nodeType":"ExpressionStatement","src":"13247:3:44"},"nodeType":"ForStatement","src":"13214:202:44"},{"expression":{"id":9014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":9008,"name":"buf","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8958,"src":"13473:3:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":9012,"indexExpression":{"commonType":{"typeIdentifier":"t_uint64","typeString":"uint64"},"id":9011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":9009,"name":"numBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8939,"src":"13477:8:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":9010,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13488:1:44","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"13477:12:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"13473:17:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"&=","rightHandSide":{"hexValue":"30783746","id":9013,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13494:4:44","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"0x7F"},"src":"13473:25:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":9015,"nodeType":"ExpressionStatement","src":"13473:25:44"},{"expression":{"id":9016,"name":"buf","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":8958,"src":"13515:3:44","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":8933,"id":9017,"nodeType":"Return","src":"13508:10:44"}]},"documentation":{"id":8925,"nodeType":"StructuredDocumentation","src":"12516:206:44","text":"@dev Encode uint64 into tagged varint.\n @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\n @param t Tag\n @param n Number\n @return Marshaled bytes"},"id":9019,"implemented":true,"kind":"function","modifiers":[],"name":"_uint64varint","nameLocation":"12736:13:44","nodeType":"FunctionDefinition","parameters":{"id":8930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8927,"mutability":"mutable","name":"t","nameLocation":"12757:1:44","nodeType":"VariableDeclaration","scope":9019,"src":"12750:8:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"typeName":{"id":8926,"name":"bytes1","nodeType":"ElementaryTypeName","src":"12750:6:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"visibility":"internal"},{"constant":false,"id":8929,"mutability":"mutable","name":"n","nameLocation":"12767:1:44","nodeType":"VariableDeclaration","scope":9019,"src":"12760:8:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":8928,"name":"uint64","nodeType":"ElementaryTypeName","src":"12760:6:44","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"}],"src":"12749:20:44"},"returnParameters":{"id":8933,"nodeType":"ParameterList","parameters":[{"constant":false,"id":8932,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9019,"src":"12809:12:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":8931,"name":"bytes","nodeType":"ElementaryTypeName","src":"12809:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"12808:14:44"},"scope":9039,"src":"12727:798:44","stateMutability":"pure","virtual":false,"visibility":"internal"},{"body":{"id":9037,"nodeType":"Block","src":"13752:51:44","statements":[{"expression":{"arguments":[{"id":9030,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9022,"src":"13783:1:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},{"arguments":[{"id":9033,"name":"n","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9024,"src":"13793:1:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":9032,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13786:6:44","typeDescriptions":{"typeIdentifier":"t_type$_t_uint64_$","typeString":"type(uint64)"},"typeName":{"id":9031,"name":"uint64","nodeType":"ElementaryTypeName","src":"13786:6:44","typeDescriptions":{}}},"id":9034,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13786:9:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"},{"typeIdentifier":"t_uint64","typeString":"uint64"}],"id":9029,"name":"_uint64varint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9019,"src":"13769:13:44","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes1_$_t_uint64_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes1,uint64) pure returns (bytes memory)"}},"id":9035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"13769:27:44","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"functionReturnParameters":9028,"id":9036,"nodeType":"Return","src":"13762:34:44"}]},"documentation":{"id":9020,"nodeType":"StructuredDocumentation","src":"13531:118:44","text":"@dev Encode uint8 into tagged varint.\n @param t Tag\n @param n Number\n @return Marshaled bytes"},"id":9038,"implemented":true,"kind":"function","modifiers":[],"name":"_uint8varint","nameLocation":"13663:12:44","nodeType":"FunctionDefinition","parameters":{"id":9025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9022,"mutability":"mutable","name":"t","nameLocation":"13683:1:44","nodeType":"VariableDeclaration","scope":9038,"src":"13676:8:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"typeName":{"id":9021,"name":"bytes1","nodeType":"ElementaryTypeName","src":"13676:6:44","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"visibility":"internal"},{"constant":false,"id":9024,"mutability":"mutable","name":"n","nameLocation":"13692:1:44","nodeType":"VariableDeclaration","scope":9038,"src":"13686:7:44","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9023,"name":"uint8","nodeType":"ElementaryTypeName","src":"13686:5:44","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"13675:19:44"},"returnParameters":{"id":9028,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9027,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9038,"src":"13734:12:44","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9026,"name":"bytes","nodeType":"ElementaryTypeName","src":"13734:5:44","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"13733:14:44"},"scope":9039,"src":"13654:149:44","stateMutability":"pure","virtual":false,"visibility":"internal"}],"scope":9040,"src":"201:13604:44","usedErrors":[]}],"src":"33:13773:44"},"id":44},"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol":{"ast":{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol","exportedSymbols":{"Clonable":[7948],"Context":[7979],"IWitnetRequest":[3829],"Initializable":[7995],"Ownable":[8100],"Proxiable":[8160],"Witnet":[4619],"WitnetRequestMalleableBase":[9039],"WitnetRequestRandomness":[9072]},"id":9073,"license":"MIT","nodeType":"SourceUnit","nodes":[{"id":9041,"literals":["solidity",">=","0.7",".0","<","0.9",".0"],"nodeType":"PragmaDirective","src":"33:31:45"},{"absolutePath":"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol","file":"./WitnetRequestMalleableBase.sol","id":9042,"nameLocation":"-1:-1:-1","nodeType":"ImportDirective","scope":9073,"sourceUnit":9040,"src":"66:42:45","symbolAliases":[],"unitAlias":""},{"abstract":false,"baseContracts":[{"baseName":{"id":9043,"name":"WitnetRequestMalleableBase","nodeType":"IdentifierPath","referencedDeclaration":9039,"src":"146:26:45"},"id":9044,"nodeType":"InheritanceSpecifier","src":"146:26:45"}],"contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"id":9072,"linearizedBaseContracts":[9072,9039,8160,8100,7979,7948,7995,3829],"name":"WitnetRequestRandomness","nameLocation":"119:23:45","nodeType":"ContractDefinition","nodes":[{"constant":true,"id":9047,"mutability":"constant","name":"_WITNET_RANDOMNESS_BYTECODE_TEMPLATE","nameLocation":"203:36:45","nodeType":"VariableDeclaration","scope":9072,"src":"179:102:45","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9045,"name":"bytes","nodeType":"ElementaryTypeName","src":"179:5:45","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":{"hexValue":"0a0f120508021a01801a0210022202100b","id":9046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"hexString","lValueRequested":false,"nodeType":"Literal","src":"242:39:45","typeDescriptions":{"typeIdentifier":"t_stringliteral_ad32908debcf6f01f717b9a048158d3e04f1c1e8049b3415cb32e7719cc58af9","typeString":"literal_string hex\"0a0f120508021a01801a0210022202100b\""}},"visibility":"internal"},{"body":{"id":9057,"nodeType":"Block","src":"302:38:45","statements":[{"expression":{"arguments":[{"arguments":[{"hexValue":"","id":9053,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"329:2:45","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"id":9052,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"323:5:45","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":9051,"name":"bytes","nodeType":"ElementaryTypeName","src":"323:5:45","typeDescriptions":{}}},"id":9054,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"323:9:45","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":9050,"name":"initialize","nodeType":"Identifier","overloadedDeclarations":[9071],"referencedDeclaration":9071,"src":"312:10:45","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory)"}},"id":9055,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"312:21:45","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":9056,"nodeType":"ExpressionStatement","src":"312:21:45"}]},"id":9058,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","nodeType":"FunctionDefinition","parameters":{"id":9048,"nodeType":"ParameterList","parameters":[],"src":"299:2:45"},"returnParameters":{"id":9049,"nodeType":"ParameterList","parameters":[],"src":"302:0:45"},"scope":9072,"src":"288:52:45","stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"baseFunctions":[8677],"body":{"id":9070,"nodeType":"Block","src":"424:71:45","statements":[{"expression":{"arguments":[{"id":9067,"name":"_WITNET_RANDOMNESS_BYTECODE_TEMPLATE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9047,"src":"451:36:45","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"id":9064,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"434:5:45","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_WitnetRequestRandomness_$9072_$","typeString":"type(contract super WitnetRequestRandomness)"}},"id":9066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":8677,"src":"434:16:45","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes_memory_ptr_$returns$__$","typeString":"function (bytes memory)"}},"id":9068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"434:54:45","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":9069,"nodeType":"ExpressionStatement","src":"434:54:45"}]},"functionSelector":"439fab91","id":9071,"implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"355:10:45","nodeType":"FunctionDefinition","overrides":{"id":9062,"nodeType":"OverrideSpecifier","overrides":[],"src":"411:8:45"},"parameters":{"id":9061,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9060,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9071,"src":"366:12:45","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9059,"name":"bytes","nodeType":"ElementaryTypeName","src":"366:5:45","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"365:14:45"},"returnParameters":{"id":9063,"nodeType":"ParameterList","parameters":[],"src":"424:0:45"},"scope":9072,"src":"346:149:45","stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"scope":9073,"src":"110:387:45","usedErrors":[]}],"src":"33:465:45"},"id":45}},"contracts":{"ado-contracts/contracts/interfaces/IERC2362.sol":{"IERC2362":{"abi":[{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"}],"name":"valueFor","outputs":[{"internalType":"int256","name":"","type":"int256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}],"devdoc":{"details":"EIP2362 Interface for pull oracles https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md","kind":"dev","methods":{"valueFor(bytes32)":{"details":"Exposed function pertaining to EIP standards","params":{"_id":"bytes32 ID of the query"},"returns":{"_0":"int,uint,uint returns the value, timestamp, and status code of query"}}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"valueFor(bytes32)":"f78eea83"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_id\",\"type\":\"bytes32\"}],\"name\":\"valueFor\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"EIP2362 Interface for pull oracles https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md\",\"kind\":\"dev\",\"methods\":{\"valueFor(bytes32)\":{\"details\":\"Exposed function pertaining to EIP standards\",\"params\":{\"_id\":\"bytes32 ID of the query\"},\"returns\":{\"_0\":\"int,uint,uint returns the value, timestamp, and status code of query\"}}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"ado-contracts/contracts/interfaces/IERC2362.sol\":\"IERC2362\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"ado-contracts/contracts/interfaces/IERC2362.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.5.0 <0.9.0;\\n\\n/**\\n* @dev EIP2362 Interface for pull oracles\\n* https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md\\n*/\\ninterface IERC2362\\n{\\n\\t/**\\n\\t * @dev Exposed function pertaining to EIP standards\\n\\t * @param _id bytes32 ID of the query\\n\\t * @return int,uint,uint returns the value, timestamp, and status code of query\\n\\t */\\n\\tfunction valueFor(bytes32 _id) external view returns(int256,uint256,uint256);\\n}\",\"keccak256\":\"0x4df66aa83b94d7c3d52aba3522b6eeafc19f2c45299b7c871ef46eb199ee4f6b\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"contracts/WitnetPriceFeed.sol":{"WitnetPriceFeed":{"abi":[{"inputs":[{"internalType":"contract IWitnetPriceRouter","name":"_router","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"bytes4","name":"_id4","type":"bytes4"}],"name":"getPrice","outputs":[{"internalType":"int256","name":"_lastPrice","type":"int256"},{"internalType":"uint256","name":"_lastTimestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"witnetPriceRouter","outputs":[{"internalType":"contract IWitnetPriceRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{"@_32":{"entryPoint":null,"id":32,"parameterSlots":1,"returnSlots":0},"abi_decode_t_contract$_IWitnetPriceRouter_$3699_fromMemory":{"entryPoint":111,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_contract$_IWitnetPriceRouter_$3699_fromMemory":{"entryPoint":132,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"cleanup_t_address":{"entryPoint":177,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_contract$_IWitnetPriceRouter_$3699":{"entryPoint":195,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":213,"id":null,"parameterSlots":1,"returnSlots":1},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":245,"id":null,"parameterSlots":0,"returnSlots":0},"validator_revert_t_contract$_IWitnetPriceRouter_$3699":{"entryPoint":250,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:1490:46","statements":[{"body":{"nodeType":"YulBlock","src":"97:107:46","statements":[{"nodeType":"YulAssignment","src":"107:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"122:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"116:5:46"},"nodeType":"YulFunctionCall","src":"116:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"107:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"192:5:46"}],"functionName":{"name":"validator_revert_t_contract$_IWitnetPriceRouter_$3699","nodeType":"YulIdentifier","src":"138:53:46"},"nodeType":"YulFunctionCall","src":"138:60:46"},"nodeType":"YulExpressionStatement","src":"138:60:46"}]},"name":"abi_decode_t_contract$_IWitnetPriceRouter_$3699_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"75:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"83:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"91:5:46","type":""}],"src":"7:197:46"},{"body":{"nodeType":"YulBlock","src":"314:301:46","statements":[{"body":{"nodeType":"YulBlock","src":"360:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"362:77:46"},"nodeType":"YulFunctionCall","src":"362:79:46"},"nodeType":"YulExpressionStatement","src":"362:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"335:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"344:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"331:3:46"},"nodeType":"YulFunctionCall","src":"331:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"356:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"327:3:46"},"nodeType":"YulFunctionCall","src":"327:32:46"},"nodeType":"YulIf","src":"324:119:46"},{"nodeType":"YulBlock","src":"453:155:46","statements":[{"nodeType":"YulVariableDeclaration","src":"468:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"482:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"472:6:46","type":""}]},{"nodeType":"YulAssignment","src":"497:101:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"570:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"581:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"566:3:46"},"nodeType":"YulFunctionCall","src":"566:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"590:7:46"}],"functionName":{"name":"abi_decode_t_contract$_IWitnetPriceRouter_$3699_fromMemory","nodeType":"YulIdentifier","src":"507:58:46"},"nodeType":"YulFunctionCall","src":"507:91:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"497:6:46"}]}]}]},"name":"abi_decode_tuple_t_contract$_IWitnetPriceRouter_$3699_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"284:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"295:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"307:6:46","type":""}],"src":"210:405:46"},{"body":{"nodeType":"YulBlock","src":"661:35:46","statements":[{"nodeType":"YulAssignment","src":"671:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"687:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"681:5:46"},"nodeType":"YulFunctionCall","src":"681:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"671:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"654:6:46","type":""}],"src":"621:75:46"},{"body":{"nodeType":"YulBlock","src":"747:51:46","statements":[{"nodeType":"YulAssignment","src":"757:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"786:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"768:17:46"},"nodeType":"YulFunctionCall","src":"768:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"757:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"729:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"739:7:46","type":""}],"src":"702:96:46"},{"body":{"nodeType":"YulBlock","src":"876:51:46","statements":[{"nodeType":"YulAssignment","src":"886:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"915:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"897:17:46"},"nodeType":"YulFunctionCall","src":"897:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"886:7:46"}]}]},"name":"cleanup_t_contract$_IWitnetPriceRouter_$3699","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"858:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"868:7:46","type":""}],"src":"804:123:46"},{"body":{"nodeType":"YulBlock","src":"978:81:46","statements":[{"nodeType":"YulAssignment","src":"988:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1003:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1010:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"999:3:46"},"nodeType":"YulFunctionCall","src":"999:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"988:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"960:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"970:7:46","type":""}],"src":"933:126:46"},{"body":{"nodeType":"YulBlock","src":"1154:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1171:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1174:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1164:6:46"},"nodeType":"YulFunctionCall","src":"1164:12:46"},"nodeType":"YulExpressionStatement","src":"1164:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"1065:117:46"},{"body":{"nodeType":"YulBlock","src":"1277:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1294:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1297:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1287:6:46"},"nodeType":"YulFunctionCall","src":"1287:12:46"},"nodeType":"YulExpressionStatement","src":"1287:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"1188:117:46"},{"body":{"nodeType":"YulBlock","src":"1381:106:46","statements":[{"body":{"nodeType":"YulBlock","src":"1465:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1474:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1477:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1467:6:46"},"nodeType":"YulFunctionCall","src":"1467:12:46"},"nodeType":"YulExpressionStatement","src":"1467:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1404:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1456:5:46"}],"functionName":{"name":"cleanup_t_contract$_IWitnetPriceRouter_$3699","nodeType":"YulIdentifier","src":"1411:44:46"},"nodeType":"YulFunctionCall","src":"1411:51:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1401:2:46"},"nodeType":"YulFunctionCall","src":"1401:62:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1394:6:46"},"nodeType":"YulFunctionCall","src":"1394:70:46"},"nodeType":"YulIf","src":"1391:90:46"}]},"name":"validator_revert_t_contract$_IWitnetPriceRouter_$3699","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1374:5:46","type":""}],"src":"1311:176:46"}]},"contents":"{\n\n    function abi_decode_t_contract$_IWitnetPriceRouter_$3699_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_contract$_IWitnetPriceRouter_$3699(value)\n    }\n\n    function abi_decode_tuple_t_contract$_IWitnetPriceRouter_$3699_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_contract$_IWitnetPriceRouter_$3699_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\n    }\n\n    function cleanup_t_address(value) -> cleaned {\n        cleaned := cleanup_t_uint160(value)\n    }\n\n    function cleanup_t_contract$_IWitnetPriceRouter_$3699(value) -> cleaned {\n        cleaned := cleanup_t_address(value)\n    }\n\n    function cleanup_t_uint160(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function validator_revert_t_contract$_IWitnetPriceRouter_$3699(value) {\n        if iszero(eq(value, cleanup_t_contract$_IWitnetPriceRouter_$3699(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"60a060405234801561001057600080fd5b5060405161051e38038061051e83398181016040528101906100329190610084565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b8152505050610111565b60008151905061007e816100fa565b92915050565b60006020828403121561009a576100996100f5565b5b60006100a88482850161006f565b91505092915050565b60006100bc826100d5565b9050919050565b60006100ce826100b1565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600080fd5b610103816100c3565b811461010e57600080fd5b50565b60805160601c6103ea61013460003960008181608c015260b301526103ea6000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80634fc87f241461003b578063c66f4c0a14610059575b600080fd5b61004361008a565b604051610050919061027e565b60405180910390f35b610073600480360381019061006e91906101a7565b6100ae565b604051610081929190610299565b60405180910390f35b7f000000000000000000000000000000000000000000000000000000000000000081565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f78eea83846040518263ffffffff1660e01b815260040161010a9190610263565b60606040518083038186803b15801561012257600080fd5b505afa158015610136573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061015a91906101d4565b508092508193505050915091565b6000813590506101778161036f565b92915050565b60008151905061018c81610386565b92915050565b6000815190506101a18161039d565b92915050565b6000602082840312156101bd576101bc61036a565b5b60006101cb84828501610168565b91505092915050565b6000806000606084860312156101ed576101ec61036a565b5b60006101fb8682870161017d565b935050602061020c86828701610192565b925050604061021d86828701610192565b9150509250925092565b61023081610322565b82525050565b61023f81610334565b82525050565b61024e816102ee565b82525050565b61025d81610318565b82525050565b60006020820190506102786000830184610227565b92915050565b60006020820190506102936000830184610236565b92915050565b60006040820190506102ae6000830185610245565b6102bb6020830184610254565b9392505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061032d826102c2565b9050919050565b600061033f82610346565b9050919050565b600061035182610358565b9050919050565b6000610363826102f8565b9050919050565b600080fd5b610378816102c2565b811461038357600080fd5b50565b61038f816102ee565b811461039a57600080fd5b50565b6103a681610318565b81146103b157600080fd5b5056fea26469706673582212202eae2d078f68a8465a0ef6960a5b69f48cf9367de3cc4e8f099cf2e1699b5e6164736f6c63430008070033","opcodes":"PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x51E CODESIZE SUB DUP1 PUSH2 0x51E DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0x84 JUMP JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP PUSH2 0x111 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x7E DUP2 PUSH2 0xFA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9A JUMPI PUSH2 0x99 PUSH2 0xF5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xA8 DUP5 DUP3 DUP6 ADD PUSH2 0x6F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBC DUP3 PUSH2 0xD5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xCE DUP3 PUSH2 0xB1 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x103 DUP2 PUSH2 0xC3 JUMP JUMPDEST DUP2 EQ PUSH2 0x10E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH2 0x3EA PUSH2 0x134 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0x8C ADD MSTORE PUSH1 0xB3 ADD MSTORE PUSH2 0x3EA 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 0x36 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4FC87F24 EQ PUSH2 0x3B JUMPI DUP1 PUSH4 0xC66F4C0A EQ PUSH2 0x59 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x43 PUSH2 0x8A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x50 SWAP2 SWAP1 PUSH2 0x27E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x73 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6E SWAP2 SWAP1 PUSH2 0x1A7 JUMP JUMPDEST PUSH2 0xAE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x81 SWAP3 SWAP2 SWAP1 PUSH2 0x299 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF78EEA83 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10A SWAP2 SWAP1 PUSH2 0x263 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x122 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x136 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 0x15A SWAP2 SWAP1 PUSH2 0x1D4 JUMP JUMPDEST POP DUP1 SWAP3 POP DUP2 SWAP4 POP POP POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x177 DUP2 PUSH2 0x36F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x18C DUP2 PUSH2 0x386 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1A1 DUP2 PUSH2 0x39D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BD JUMPI PUSH2 0x1BC PUSH2 0x36A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CB DUP5 DUP3 DUP6 ADD PUSH2 0x168 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1ED JUMPI PUSH2 0x1EC PUSH2 0x36A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FB DUP7 DUP3 DUP8 ADD PUSH2 0x17D JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x20C DUP7 DUP3 DUP8 ADD PUSH2 0x192 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x21D DUP7 DUP3 DUP8 ADD PUSH2 0x192 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x230 DUP2 PUSH2 0x322 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x23F DUP2 PUSH2 0x334 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24E DUP2 PUSH2 0x2EE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x25D DUP2 PUSH2 0x318 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x278 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x227 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x293 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x236 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2AE PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x245 JUMP JUMPDEST PUSH2 0x2BB PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x254 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND 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 0x32D DUP3 PUSH2 0x2C2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33F DUP3 PUSH2 0x346 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x351 DUP3 PUSH2 0x358 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x363 DUP3 PUSH2 0x2F8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x378 DUP2 PUSH2 0x2C2 JUMP JUMPDEST DUP2 EQ PUSH2 0x383 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x38F DUP2 PUSH2 0x2EE JUMP JUMPDEST DUP2 EQ PUSH2 0x39A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3A6 DUP2 PUSH2 0x318 JUMP JUMPDEST DUP2 EQ PUSH2 0x3B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x2E 0xAE 0x2D SMOD DUP16 PUSH9 0xA8465A0EF6960A5B69 DELEGATECALL DUP13 0xF9 CALLDATASIZE PUSH30 0xE3CC4E8F099CF2E1699B5E6164736F6C6343000807003300000000000000 ","sourceMap":"143:641:1:-:0;;;347:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;417:7;397:27;;;;;;;;;;;;347:84;143:641;;7:197:46;91:5;122:6;116:13;107:22;;138:60;192:5;138:60;:::i;:::-;7:197;;;;:::o;210:405::-;307:6;356:2;344:9;335:7;331:23;327:32;324:119;;;362:79;;:::i;:::-;324:119;482:1;507:91;590:7;581:6;570:9;566:22;507:91;:::i;:::-;497:101;;453:155;210:405;;;;:::o;702:96::-;739:7;768:24;786:5;768:24;:::i;:::-;757:35;;702:96;;;:::o;804:123::-;868:7;897:24;915:5;897:24;:::i;:::-;886:35;;804:123;;;:::o;933:126::-;970:7;1010:42;1003:5;999:54;988:65;;933:126;;;:::o;1188:117::-;1297:1;1294;1287:12;1311:176;1411:51;1456:5;1411:51;:::i;:::-;1404:5;1401:62;1391:90;;1477:1;1474;1467:12;1391:90;1311:176;:::o;143:641:1:-;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@getPrice_51":{"entryPoint":174,"id":51,"parameterSlots":1,"returnSlots":2},"@witnetPriceRouter_21":{"entryPoint":138,"id":21,"parameterSlots":0,"returnSlots":0},"abi_decode_t_bytes4":{"entryPoint":360,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_int256_fromMemory":{"entryPoint":381,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256_fromMemory":{"entryPoint":402,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes4":{"entryPoint":423,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_int256t_uint256t_uint256_fromMemory":{"entryPoint":468,"id":null,"parameterSlots":2,"returnSlots":3},"abi_encode_t_bytes4_to_t_bytes32_fromStack":{"entryPoint":551,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_IWitnetPriceRouter_$3699_to_t_address_fromStack":{"entryPoint":566,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int256_to_t_int256_fromStack":{"entryPoint":581,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":596,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_t_bytes4__to_t_bytes32__fromStack_reversed":{"entryPoint":611,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_IWitnetPriceRouter_$3699__to_t_address__fromStack_reversed":{"entryPoint":638,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int256_t_uint256__to_t_int256_t_uint256__fromStack_reversed":{"entryPoint":665,"id":null,"parameterSlots":3,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"cleanup_t_bytes4":{"entryPoint":706,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int256":{"entryPoint":750,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":760,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":792,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_bytes4_to_t_bytes32":{"entryPoint":802,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_IWitnetPriceRouter_$3699_to_t_address":{"entryPoint":820,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address":{"entryPoint":838,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_uint160":{"entryPoint":856,"id":null,"parameterSlots":1,"returnSlots":1},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":874,"id":null,"parameterSlots":0,"returnSlots":0},"validator_revert_t_bytes4":{"entryPoint":879,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_int256":{"entryPoint":902,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":925,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:4542:46","statements":[{"body":{"nodeType":"YulBlock","src":"58:86:46","statements":[{"nodeType":"YulAssignment","src":"68:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"90:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"77:12:46"},"nodeType":"YulFunctionCall","src":"77:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"68:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"132:5:46"}],"functionName":{"name":"validator_revert_t_bytes4","nodeType":"YulIdentifier","src":"106:25:46"},"nodeType":"YulFunctionCall","src":"106:32:46"},"nodeType":"YulExpressionStatement","src":"106:32:46"}]},"name":"abi_decode_t_bytes4","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"36:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"44:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"52:5:46","type":""}],"src":"7:137:46"},{"body":{"nodeType":"YulBlock","src":"212:79:46","statements":[{"nodeType":"YulAssignment","src":"222:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"237:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"231:5:46"},"nodeType":"YulFunctionCall","src":"231:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"222:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"279:5:46"}],"functionName":{"name":"validator_revert_t_int256","nodeType":"YulIdentifier","src":"253:25:46"},"nodeType":"YulFunctionCall","src":"253:32:46"},"nodeType":"YulExpressionStatement","src":"253:32:46"}]},"name":"abi_decode_t_int256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"190:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"198:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"206:5:46","type":""}],"src":"150:141:46"},{"body":{"nodeType":"YulBlock","src":"360:80:46","statements":[{"nodeType":"YulAssignment","src":"370:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"385:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"379:5:46"},"nodeType":"YulFunctionCall","src":"379:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"370:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"428:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"401:26:46"},"nodeType":"YulFunctionCall","src":"401:33:46"},"nodeType":"YulExpressionStatement","src":"401:33:46"}]},"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"338:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"346:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"354:5:46","type":""}],"src":"297:143:46"},{"body":{"nodeType":"YulBlock","src":"511:262:46","statements":[{"body":{"nodeType":"YulBlock","src":"557:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"559:77:46"},"nodeType":"YulFunctionCall","src":"559:79:46"},"nodeType":"YulExpressionStatement","src":"559:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"532:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"541:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"528:3:46"},"nodeType":"YulFunctionCall","src":"528:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"553:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"524:3:46"},"nodeType":"YulFunctionCall","src":"524:32:46"},"nodeType":"YulIf","src":"521:119:46"},{"nodeType":"YulBlock","src":"650:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"665:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"679:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"669:6:46","type":""}]},{"nodeType":"YulAssignment","src":"694:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"728:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"739:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"724:3:46"},"nodeType":"YulFunctionCall","src":"724:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"748:7:46"}],"functionName":{"name":"abi_decode_t_bytes4","nodeType":"YulIdentifier","src":"704:19:46"},"nodeType":"YulFunctionCall","src":"704:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"694:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes4","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"481:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"492:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"504:6:46","type":""}],"src":"446:327:46"},{"body":{"nodeType":"YulBlock","src":"889:551:46","statements":[{"body":{"nodeType":"YulBlock","src":"935:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"937:77:46"},"nodeType":"YulFunctionCall","src":"937:79:46"},"nodeType":"YulExpressionStatement","src":"937:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"910:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"919:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"906:3:46"},"nodeType":"YulFunctionCall","src":"906:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"931:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"902:3:46"},"nodeType":"YulFunctionCall","src":"902:32:46"},"nodeType":"YulIf","src":"899:119:46"},{"nodeType":"YulBlock","src":"1028:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1043:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1057:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1047:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1072:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1117:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1128:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1113:3:46"},"nodeType":"YulFunctionCall","src":"1113:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1137:7:46"}],"functionName":{"name":"abi_decode_t_int256_fromMemory","nodeType":"YulIdentifier","src":"1082:30:46"},"nodeType":"YulFunctionCall","src":"1082:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1072:6:46"}]}]},{"nodeType":"YulBlock","src":"1165:129:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1180:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1194:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1184:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1210:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1256:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1267:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1252:3:46"},"nodeType":"YulFunctionCall","src":"1252:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1276:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"1220:31:46"},"nodeType":"YulFunctionCall","src":"1220:64:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"1210:6:46"}]}]},{"nodeType":"YulBlock","src":"1304:129:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1319:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1333:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1323:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1349:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1395:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1406:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1391:3:46"},"nodeType":"YulFunctionCall","src":"1391:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1415:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"1359:31:46"},"nodeType":"YulFunctionCall","src":"1359:64:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"1349:6:46"}]}]}]},"name":"abi_decode_tuple_t_int256t_uint256t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"843:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"854:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"866:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"874:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"882:6:46","type":""}],"src":"779:661:46"},{"body":{"nodeType":"YulBlock","src":"1510:65:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1527:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1562:5:46"}],"functionName":{"name":"convert_t_bytes4_to_t_bytes32","nodeType":"YulIdentifier","src":"1532:29:46"},"nodeType":"YulFunctionCall","src":"1532:36:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1520:6:46"},"nodeType":"YulFunctionCall","src":"1520:49:46"},"nodeType":"YulExpressionStatement","src":"1520:49:46"}]},"name":"abi_encode_t_bytes4_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1498:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1505:3:46","type":""}],"src":"1446:129:46"},{"body":{"nodeType":"YulBlock","src":"1673:93:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1690:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1753:5:46"}],"functionName":{"name":"convert_t_contract$_IWitnetPriceRouter_$3699_to_t_address","nodeType":"YulIdentifier","src":"1695:57:46"},"nodeType":"YulFunctionCall","src":"1695:64:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1683:6:46"},"nodeType":"YulFunctionCall","src":"1683:77:46"},"nodeType":"YulExpressionStatement","src":"1683:77:46"}]},"name":"abi_encode_t_contract$_IWitnetPriceRouter_$3699_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1661:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1668:3:46","type":""}],"src":"1581:185:46"},{"body":{"nodeType":"YulBlock","src":"1835:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1852:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1874:5:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"1857:16:46"},"nodeType":"YulFunctionCall","src":"1857:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1845:6:46"},"nodeType":"YulFunctionCall","src":"1845:36:46"},"nodeType":"YulExpressionStatement","src":"1845:36:46"}]},"name":"abi_encode_t_int256_to_t_int256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1823:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1830:3:46","type":""}],"src":"1772:115:46"},{"body":{"nodeType":"YulBlock","src":"1958:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1975:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1998:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"1980:17:46"},"nodeType":"YulFunctionCall","src":"1980:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1968:6:46"},"nodeType":"YulFunctionCall","src":"1968:37:46"},"nodeType":"YulExpressionStatement","src":"1968:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1946:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1953:3:46","type":""}],"src":"1893:118:46"},{"body":{"nodeType":"YulBlock","src":"2114:123:46","statements":[{"nodeType":"YulAssignment","src":"2124:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2136:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2147:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2132:3:46"},"nodeType":"YulFunctionCall","src":"2132:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2124:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2203:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2216:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2227:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2212:3:46"},"nodeType":"YulFunctionCall","src":"2212:17:46"}],"functionName":{"name":"abi_encode_t_bytes4_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"2160:42:46"},"nodeType":"YulFunctionCall","src":"2160:70:46"},"nodeType":"YulExpressionStatement","src":"2160:70:46"}]},"name":"abi_encode_tuple_t_bytes4__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2086:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2098:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2109:4:46","type":""}],"src":"2017:220:46"},{"body":{"nodeType":"YulBlock","src":"2368:151:46","statements":[{"nodeType":"YulAssignment","src":"2378:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2390:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2401:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2386:3:46"},"nodeType":"YulFunctionCall","src":"2386:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2378:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2485:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2498:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2509:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2494:3:46"},"nodeType":"YulFunctionCall","src":"2494:17:46"}],"functionName":{"name":"abi_encode_t_contract$_IWitnetPriceRouter_$3699_to_t_address_fromStack","nodeType":"YulIdentifier","src":"2414:70:46"},"nodeType":"YulFunctionCall","src":"2414:98:46"},"nodeType":"YulExpressionStatement","src":"2414:98:46"}]},"name":"abi_encode_tuple_t_contract$_IWitnetPriceRouter_$3699__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2340:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2352:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2363:4:46","type":""}],"src":"2243:276:46"},{"body":{"nodeType":"YulBlock","src":"2649:204:46","statements":[{"nodeType":"YulAssignment","src":"2659:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2671:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2682:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2667:3:46"},"nodeType":"YulFunctionCall","src":"2667:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2659:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2737:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2750:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2761:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2746:3:46"},"nodeType":"YulFunctionCall","src":"2746:17:46"}],"functionName":{"name":"abi_encode_t_int256_to_t_int256_fromStack","nodeType":"YulIdentifier","src":"2695:41:46"},"nodeType":"YulFunctionCall","src":"2695:69:46"},"nodeType":"YulExpressionStatement","src":"2695:69:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"2818:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2831:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2842:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2827:3:46"},"nodeType":"YulFunctionCall","src":"2827:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"2774:43:46"},"nodeType":"YulFunctionCall","src":"2774:72:46"},"nodeType":"YulExpressionStatement","src":"2774:72:46"}]},"name":"abi_encode_tuple_t_int256_t_uint256__to_t_int256_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2613:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"2625:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2633:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2644:4:46","type":""}],"src":"2525:328:46"},{"body":{"nodeType":"YulBlock","src":"2899:35:46","statements":[{"nodeType":"YulAssignment","src":"2909:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2925:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2919:5:46"},"nodeType":"YulFunctionCall","src":"2919:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"2909:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"2892:6:46","type":""}],"src":"2859:75:46"},{"body":{"nodeType":"YulBlock","src":"2984:105:46","statements":[{"nodeType":"YulAssignment","src":"2994:89:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3009:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3016:66:46","type":"","value":"0xffffffff00000000000000000000000000000000000000000000000000000000"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"3005:3:46"},"nodeType":"YulFunctionCall","src":"3005:78:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2994:7:46"}]}]},"name":"cleanup_t_bytes4","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2966:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2976:7:46","type":""}],"src":"2940:149:46"},{"body":{"nodeType":"YulBlock","src":"3139:32:46","statements":[{"nodeType":"YulAssignment","src":"3149:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"3160:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"3149:7:46"}]}]},"name":"cleanup_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3121:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3131:7:46","type":""}],"src":"3095:76:46"},{"body":{"nodeType":"YulBlock","src":"3222:81:46","statements":[{"nodeType":"YulAssignment","src":"3232:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3247:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3254:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"3243:3:46"},"nodeType":"YulFunctionCall","src":"3243:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"3232:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3204:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3214:7:46","type":""}],"src":"3177:126:46"},{"body":{"nodeType":"YulBlock","src":"3354:32:46","statements":[{"nodeType":"YulAssignment","src":"3364:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"3375:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"3364:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3336:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3346:7:46","type":""}],"src":"3309:77:46"},{"body":{"nodeType":"YulBlock","src":"3451:52:46","statements":[{"nodeType":"YulAssignment","src":"3461:36:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3491:5:46"}],"functionName":{"name":"cleanup_t_bytes4","nodeType":"YulIdentifier","src":"3474:16:46"},"nodeType":"YulFunctionCall","src":"3474:23:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3461:9:46"}]}]},"name":"convert_t_bytes4_to_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3431:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3441:9:46","type":""}],"src":"3392:111:46"},{"body":{"nodeType":"YulBlock","src":"3596:66:46","statements":[{"nodeType":"YulAssignment","src":"3606:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3650:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"3619:30:46"},"nodeType":"YulFunctionCall","src":"3619:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3606:9:46"}]}]},"name":"convert_t_contract$_IWitnetPriceRouter_$3699_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3576:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3586:9:46","type":""}],"src":"3509:153:46"},{"body":{"nodeType":"YulBlock","src":"3728:66:46","statements":[{"nodeType":"YulAssignment","src":"3738:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3782:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"3751:30:46"},"nodeType":"YulFunctionCall","src":"3751:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3738:9:46"}]}]},"name":"convert_t_uint160_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3708:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3718:9:46","type":""}],"src":"3668:126:46"},{"body":{"nodeType":"YulBlock","src":"3860:53:46","statements":[{"nodeType":"YulAssignment","src":"3870:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3901:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"3883:17:46"},"nodeType":"YulFunctionCall","src":"3883:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3870:9:46"}]}]},"name":"convert_t_uint160_to_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3840:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3850:9:46","type":""}],"src":"3800:113:46"},{"body":{"nodeType":"YulBlock","src":"4008:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4025:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4028:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4018:6:46"},"nodeType":"YulFunctionCall","src":"4018:12:46"},"nodeType":"YulExpressionStatement","src":"4018:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"3919:117:46"},{"body":{"nodeType":"YulBlock","src":"4131:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4148:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4151:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4141:6:46"},"nodeType":"YulFunctionCall","src":"4141:12:46"},"nodeType":"YulExpressionStatement","src":"4141:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"4042:117:46"},{"body":{"nodeType":"YulBlock","src":"4207:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"4263:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4272:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4275:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4265:6:46"},"nodeType":"YulFunctionCall","src":"4265:12:46"},"nodeType":"YulExpressionStatement","src":"4265:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4230:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4254:5:46"}],"functionName":{"name":"cleanup_t_bytes4","nodeType":"YulIdentifier","src":"4237:16:46"},"nodeType":"YulFunctionCall","src":"4237:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"4227:2:46"},"nodeType":"YulFunctionCall","src":"4227:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"4220:6:46"},"nodeType":"YulFunctionCall","src":"4220:42:46"},"nodeType":"YulIf","src":"4217:62:46"}]},"name":"validator_revert_t_bytes4","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4200:5:46","type":""}],"src":"4165:120:46"},{"body":{"nodeType":"YulBlock","src":"4333:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"4389:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4398:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4401:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4391:6:46"},"nodeType":"YulFunctionCall","src":"4391:12:46"},"nodeType":"YulExpressionStatement","src":"4391:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4356:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4380:5:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"4363:16:46"},"nodeType":"YulFunctionCall","src":"4363:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"4353:2:46"},"nodeType":"YulFunctionCall","src":"4353:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"4346:6:46"},"nodeType":"YulFunctionCall","src":"4346:42:46"},"nodeType":"YulIf","src":"4343:62:46"}]},"name":"validator_revert_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4326:5:46","type":""}],"src":"4291:120:46"},{"body":{"nodeType":"YulBlock","src":"4460:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"4517:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4526:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4529:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4519:6:46"},"nodeType":"YulFunctionCall","src":"4519:12:46"},"nodeType":"YulExpressionStatement","src":"4519:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4483:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4508:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"4490:17:46"},"nodeType":"YulFunctionCall","src":"4490:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"4480:2:46"},"nodeType":"YulFunctionCall","src":"4480:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"4473:6:46"},"nodeType":"YulFunctionCall","src":"4473:43:46"},"nodeType":"YulIf","src":"4470:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4453:5:46","type":""}],"src":"4417:122:46"}]},"contents":"{\n\n    function abi_decode_t_bytes4(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_bytes4(value)\n    }\n\n    function abi_decode_t_int256_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_int256(value)\n    }\n\n    function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint256(value)\n    }\n\n    function abi_decode_tuple_t_bytes4(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes4(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_int256t_uint256t_uint256_fromMemory(headStart, dataEnd) -> value0, value1, value2 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_int256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 64\n\n            value2 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_bytes4_to_t_bytes32_fromStack(value, pos) {\n        mstore(pos, convert_t_bytes4_to_t_bytes32(value))\n    }\n\n    function abi_encode_t_contract$_IWitnetPriceRouter_$3699_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_IWitnetPriceRouter_$3699_to_t_address(value))\n    }\n\n    function abi_encode_t_int256_to_t_int256_fromStack(value, pos) {\n        mstore(pos, cleanup_t_int256(value))\n    }\n\n    function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint256(value))\n    }\n\n    function abi_encode_tuple_t_bytes4__to_t_bytes32__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_bytes4_to_t_bytes32_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_contract$_IWitnetPriceRouter_$3699__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_IWitnetPriceRouter_$3699_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_int256_t_uint256__to_t_int256_t_uint256__fromStack_reversed(headStart , value1, value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_int256_to_t_int256_fromStack(value0,  add(headStart, 0))\n\n        abi_encode_t_uint256_to_t_uint256_fromStack(value1,  add(headStart, 32))\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\n    }\n\n    function cleanup_t_bytes4(value) -> cleaned {\n        cleaned := and(value, 0xffffffff00000000000000000000000000000000000000000000000000000000)\n    }\n\n    function cleanup_t_int256(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_bytes4_to_t_bytes32(value) -> converted {\n        converted := cleanup_t_bytes4(value)\n    }\n\n    function convert_t_contract$_IWitnetPriceRouter_$3699_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_uint160_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_uint160(value) -> converted {\n        converted := cleanup_t_uint160(value)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function validator_revert_t_bytes4(value) {\n        if iszero(eq(value, cleanup_t_bytes4(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_int256(value) {\n        if iszero(eq(value, cleanup_t_int256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"21":[{"length":32,"start":140},{"length":32,"start":179}]},"linkReferences":{},"object":"608060405234801561001057600080fd5b50600436106100365760003560e01c80634fc87f241461003b578063c66f4c0a14610059575b600080fd5b61004361008a565b604051610050919061027e565b60405180910390f35b610073600480360381019061006e91906101a7565b6100ae565b604051610081929190610299565b60405180910390f35b7f000000000000000000000000000000000000000000000000000000000000000081565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f78eea83846040518263ffffffff1660e01b815260040161010a9190610263565b60606040518083038186803b15801561012257600080fd5b505afa158015610136573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061015a91906101d4565b508092508193505050915091565b6000813590506101778161036f565b92915050565b60008151905061018c81610386565b92915050565b6000815190506101a18161039d565b92915050565b6000602082840312156101bd576101bc61036a565b5b60006101cb84828501610168565b91505092915050565b6000806000606084860312156101ed576101ec61036a565b5b60006101fb8682870161017d565b935050602061020c86828701610192565b925050604061021d86828701610192565b9150509250925092565b61023081610322565b82525050565b61023f81610334565b82525050565b61024e816102ee565b82525050565b61025d81610318565b82525050565b60006020820190506102786000830184610227565b92915050565b60006020820190506102936000830184610236565b92915050565b60006040820190506102ae6000830185610245565b6102bb6020830184610254565b9392505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061032d826102c2565b9050919050565b600061033f82610346565b9050919050565b600061035182610358565b9050919050565b6000610363826102f8565b9050919050565b600080fd5b610378816102c2565b811461038357600080fd5b50565b61038f816102ee565b811461039a57600080fd5b50565b6103a681610318565b81146103b157600080fd5b5056fea26469706673582212202eae2d078f68a8465a0ef6960a5b69f48cf9367de3cc4e8f099cf2e1699b5e6164736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x36 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x4FC87F24 EQ PUSH2 0x3B JUMPI DUP1 PUSH4 0xC66F4C0A EQ PUSH2 0x59 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x43 PUSH2 0x8A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x50 SWAP2 SWAP1 PUSH2 0x27E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x73 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6E SWAP2 SWAP1 PUSH2 0x1A7 JUMP JUMPDEST PUSH2 0xAE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x81 SWAP3 SWAP2 SWAP1 PUSH2 0x299 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF78EEA83 DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10A SWAP2 SWAP1 PUSH2 0x263 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x122 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x136 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 0x15A SWAP2 SWAP1 PUSH2 0x1D4 JUMP JUMPDEST POP DUP1 SWAP3 POP DUP2 SWAP4 POP POP POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x177 DUP2 PUSH2 0x36F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x18C DUP2 PUSH2 0x386 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1A1 DUP2 PUSH2 0x39D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BD JUMPI PUSH2 0x1BC PUSH2 0x36A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CB DUP5 DUP3 DUP6 ADD PUSH2 0x168 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1ED JUMPI PUSH2 0x1EC PUSH2 0x36A JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FB DUP7 DUP3 DUP8 ADD PUSH2 0x17D JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x20C DUP7 DUP3 DUP8 ADD PUSH2 0x192 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x21D DUP7 DUP3 DUP8 ADD PUSH2 0x192 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x230 DUP2 PUSH2 0x322 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x23F DUP2 PUSH2 0x334 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24E DUP2 PUSH2 0x2EE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x25D DUP2 PUSH2 0x318 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x278 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x227 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x293 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x236 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x2AE PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x245 JUMP JUMPDEST PUSH2 0x2BB PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x254 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xFFFFFFFF00000000000000000000000000000000000000000000000000000000 DUP3 AND 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 0x32D DUP3 PUSH2 0x2C2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33F DUP3 PUSH2 0x346 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x351 DUP3 PUSH2 0x358 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x363 DUP3 PUSH2 0x2F8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x378 DUP2 PUSH2 0x2C2 JUMP JUMPDEST DUP2 EQ PUSH2 0x383 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x38F DUP2 PUSH2 0x2EE JUMP JUMPDEST DUP2 EQ PUSH2 0x39A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3A6 DUP2 PUSH2 0x318 JUMP JUMPDEST DUP2 EQ PUSH2 0x3B1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x2E 0xAE 0x2D SMOD DUP16 PUSH9 0xA8465A0EF6960A5B69 DELEGATECALL DUP13 0xF9 CALLDATASIZE PUSH30 0xE3CC4E8F099CF2E1699B5E6164736F6C6343000807003300000000000000 ","sourceMap":"143:641:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;174:53;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;606:176;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;174:53;;;:::o;606:176::-;658:17;677:22;743:17;:26;;;770:4;743:32;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;711:64;;;;;;;;;606:176;;;:::o;7:137:46:-;52:5;90:6;77:20;68:29;;106:32;132:5;106:32;:::i;:::-;7:137;;;;:::o;150:141::-;206:5;237:6;231:13;222:22;;253:32;279:5;253:32;:::i;:::-;150:141;;;;:::o;297:143::-;354:5;385:6;379:13;370:22;;401:33;428:5;401:33;:::i;:::-;297:143;;;;:::o;446:327::-;504:6;553:2;541:9;532:7;528:23;524:32;521:119;;;559:79;;:::i;:::-;521:119;679:1;704:52;748:7;739:6;728:9;724:22;704:52;:::i;:::-;694:62;;650:116;446:327;;;;:::o;779:661::-;866:6;874;882;931:2;919:9;910:7;906:23;902:32;899:119;;;937:79;;:::i;:::-;899:119;1057:1;1082:63;1137:7;1128:6;1117:9;1113:22;1082:63;:::i;:::-;1072:73;;1028:127;1194:2;1220:64;1276:7;1267:6;1256:9;1252:22;1220:64;:::i;:::-;1210:74;;1165:129;1333:2;1359:64;1415:7;1406:6;1395:9;1391:22;1359:64;:::i;:::-;1349:74;;1304:129;779:661;;;;;:::o;1446:129::-;1532:36;1562:5;1532:36;:::i;:::-;1527:3;1520:49;1446:129;;:::o;1581:185::-;1695:64;1753:5;1695:64;:::i;:::-;1690:3;1683:77;1581:185;;:::o;1772:115::-;1857:23;1874:5;1857:23;:::i;:::-;1852:3;1845:36;1772:115;;:::o;1893:118::-;1980:24;1998:5;1980:24;:::i;:::-;1975:3;1968:37;1893:118;;:::o;2017:220::-;2109:4;2147:2;2136:9;2132:18;2124:26;;2160:70;2227:1;2216:9;2212:17;2203:6;2160:70;:::i;:::-;2017:220;;;;:::o;2243:276::-;2363:4;2401:2;2390:9;2386:18;2378:26;;2414:98;2509:1;2498:9;2494:17;2485:6;2414:98;:::i;:::-;2243:276;;;;:::o;2525:328::-;2644:4;2682:2;2671:9;2667:18;2659:26;;2695:69;2761:1;2750:9;2746:17;2737:6;2695:69;:::i;:::-;2774:72;2842:2;2831:9;2827:18;2818:6;2774:72;:::i;:::-;2525:328;;;;;:::o;2940:149::-;2976:7;3016:66;3009:5;3005:78;2994:89;;2940:149;;;:::o;3095:76::-;3131:7;3160:5;3149:16;;3095:76;;;:::o;3177:126::-;3214:7;3254:42;3247:5;3243:54;3232:65;;3177:126;;;:::o;3309:77::-;3346:7;3375:5;3364:16;;3309:77;;;:::o;3392:111::-;3441:9;3474:23;3491:5;3474:23;:::i;:::-;3461:36;;3392:111;;;:::o;3509:153::-;3586:9;3619:37;3650:5;3619:37;:::i;:::-;3606:50;;3509:153;;;:::o;3668:126::-;3718:9;3751:37;3782:5;3751:37;:::i;:::-;3738:50;;3668:126;;;:::o;3800:113::-;3850:9;3883:24;3901:5;3883:24;:::i;:::-;3870:37;;3800:113;;;:::o;4042:117::-;4151:1;4148;4141:12;4165:120;4237:23;4254:5;4237:23;:::i;:::-;4230:5;4227:34;4217:62;;4275:1;4272;4265:12;4217:62;4165:120;:::o;4291:::-;4363:23;4380:5;4363:23;:::i;:::-;4356:5;4353:34;4343:62;;4401:1;4398;4391:12;4343:62;4291:120;:::o;4417:122::-;4490:24;4508:5;4490:24;:::i;:::-;4483:5;4480:35;4470:63;;4529:1;4526;4519:12;4470:63;4417:122;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"200400","executionCost":"infinite","totalCost":"infinite"},"external":{"getPrice(bytes4)":"infinite","witnetPriceRouter()":"infinite"}},"methodIdentifiers":{"getPrice(bytes4)":"c66f4c0a","witnetPriceRouter()":"4fc87f24"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IWitnetPriceRouter\",\"name\":\"_router\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"_id4\",\"type\":\"bytes4\"}],\"name\":\"getPrice\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"_lastPrice\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"_lastTimestamp\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnetPriceRouter\",\"outputs\":[{\"internalType\":\"contract IWitnetPriceRouter\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/WitnetPriceFeed.sol\":\"WitnetPriceFeed\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"ado-contracts/contracts/interfaces/IERC2362.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.5.0 <0.9.0;\\n\\n/**\\n* @dev EIP2362 Interface for pull oracles\\n* https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md\\n*/\\ninterface IERC2362\\n{\\n\\t/**\\n\\t * @dev Exposed function pertaining to EIP standards\\n\\t * @param _id bytes32 ID of the query\\n\\t * @return int,uint,uint returns the value, timestamp, and status code of query\\n\\t */\\n\\tfunction valueFor(bytes32 _id) external view returns(int256,uint256,uint256);\\n}\",\"keccak256\":\"0x4df66aa83b94d7c3d52aba3522b6eeafc19f2c45299b7c871ef46eb199ee4f6b\",\"license\":\"MIT\"},\"contracts/WitnetPriceFeed.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity >=0.5.0 <0.9.0;\\n\\nimport \\\"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol\\\";\\n\\ncontract WitnetPriceFeed {\\n    IWitnetPriceRouter public immutable witnetPriceRouter;\\n\\n    /*\\n     * Network: Kaia Kairos\\n     * WitnetPriceRouter: 0xeD074DA2A76FD2Ca90C1508930b4FB4420e413B0\\n     **/\\n    constructor(IWitnetPriceRouter _router) {\\n        witnetPriceRouter = _router;\\n    }\\n\\n    /*\\n    * @param _id4 - pricefeed id. \\n    * id4 can be found here https://docs.witnet.io/smart-contracts/witnet-data-feeds/addresses/kaia-price-feeds\\n    * \\n    **/\\n    function getPrice(bytes4 _id4) public view returns (int256 _lastPrice, uint256 _lastTimestamp) {\\n        (_lastPrice, _lastTimestamp,) = witnetPriceRouter.valueFor(_id4);\\n    }\\n}\",\"keccak256\":\"0x6af53f63408b65e083bb356fee5fc91b62819016e31253eccf5a6b3284ee98bb\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IERC165.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC165 standard, as defined in the\\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\\n *\\n * Implementers can declare support of contract interfaces, which can then be\\n * queried by others ({ERC165Checker}).\\n *\\n * For an implementation, see {ERC165}.\\n */\\ninterface IERC165 {\\n    /**\\n     * @dev Returns true if this contract implements the interface defined by\\n     * `interfaceId`. See the corresponding\\n     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\\n     * to learn more about how these ids are created.\\n     *\\n     * This function call must use less than 30 000 gas.\\n     */\\n    function supportsInterface(bytes4 interfaceId) external view returns (bool);\\n}\\n\",\"keccak256\":\"0x14a404607f920aa7ce19e17a0abce07d317c95b427fd8ca7b4aaf0b2999d4847\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"ado-contracts/contracts/interfaces/IERC2362.sol\\\";\\nimport \\\"./IERC165.sol\\\";\\n\\n/// @title The Witnet Price Router basic interface.\\n/// @dev Guides implementation of price feeds aggregation contracts.\\n/// @author The Witnet Foundation.\\nabstract contract IWitnetPriceRouter\\n    is\\n        IERC2362 \\n{\\n    /// Emitted everytime a currency pair is attached to a new price feed contract\\n    /// @dev See https://github.com/adoracles/ADOIPs/blob/main/adoip-0010.md \\n    /// @dev to learn how these ids are created.\\n    event CurrencyPairSet(bytes32 indexed erc2362ID, IERC165 pricefeed);\\n\\n    /// Helper pure function: returns hash of the provided ERC2362-compliant currency pair caption (aka ID).\\n    function currencyPairId(string memory) external pure virtual returns (bytes32);\\n\\n    /// Returns the ERC-165-compliant price feed contract currently serving \\n    /// updates on the given currency pair.\\n    function getPriceFeed(bytes32 _erc2362id) external view virtual returns (IERC165);\\n\\n    /// Returns human-readable ERC2362-based caption of the currency pair being\\n    /// served by the given price feed contract address. \\n    /// @dev Should fail if the given price feed contract address is not currently\\n    /// @dev registered in the router.\\n    function getPriceFeedCaption(IERC165) external view virtual returns (string memory);\\n\\n    /// Returns human-readable caption of the ERC2362-based currency pair identifier, if known.\\n    function lookupERC2362ID(bytes32 _erc2362id) external view virtual returns (string memory);\\n\\n    /// Register a price feed contract that will serve updates for the given currency pair.\\n    /// @dev Setting zero address to a currency pair implies that it will not be served any longer.\\n    /// @dev Otherwise, should fail if the price feed contract does not support the `IWitnetPriceFeed` interface,\\n    /// @dev or if given price feed is already serving another currency pair (within this WitnetPriceRouter instance).\\n    function setPriceFeed(\\n            IERC165 _pricefeed,\\n            uint256 _decimals,\\n            string calldata _base,\\n            string calldata _quote\\n        )\\n        external virtual;\\n\\n    /// Returns list of known currency pairs IDs.\\n    function supportedCurrencyPairs() external view virtual returns (bytes32[] memory);\\n\\n    /// Returns `true` if given pair is currently being served by a compliant price feed contract.\\n    function supportsCurrencyPair(bytes32 _erc2362id) external view virtual returns (bool);\\n\\n    /// Returns `true` if given price feed contract is currently serving updates to any known currency pair. \\n    function supportsPriceFeed(IERC165 _priceFeed) external view virtual returns (bool);\\n}\\n\",\"keccak256\":\"0xeabd84fc5a5676dc88de213245b7199e50bc11af174ebb1a5ef460ba262a7276\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"contracts/WitnetRandom.sol":{"WitnetRandom":{"abi":[{"inputs":[{"internalType":"contract IWitnetRandomness","name":"_witnetRandomness","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"fetchRandomNumber","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"latestRandomizingBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"randomness","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"requestRandomness","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"witnetRandomness","outputs":[{"internalType":"contract IWitnetRandomness","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{"@_85":{"entryPoint":null,"id":85,"parameterSlots":1,"returnSlots":0},"abi_decode_t_contract$_IWitnetRandomness_$3813_fromMemory":{"entryPoint":173,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_contract$_IWitnetRandomness_$3813_fromMemory":{"entryPoint":194,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"cleanup_t_address":{"entryPoint":239,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_contract$_IWitnetRandomness_$3813":{"entryPoint":257,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":275,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x01":{"entryPoint":307,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":354,"id":null,"parameterSlots":0,"returnSlots":0},"validator_revert_t_contract$_IWitnetRandomness_$3813":{"entryPoint":359,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:1669:46","statements":[{"body":{"nodeType":"YulBlock","src":"96:106:46","statements":[{"nodeType":"YulAssignment","src":"106:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"121:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"115:5:46"},"nodeType":"YulFunctionCall","src":"115:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"106:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"190:5:46"}],"functionName":{"name":"validator_revert_t_contract$_IWitnetRandomness_$3813","nodeType":"YulIdentifier","src":"137:52:46"},"nodeType":"YulFunctionCall","src":"137:59:46"},"nodeType":"YulExpressionStatement","src":"137:59:46"}]},"name":"abi_decode_t_contract$_IWitnetRandomness_$3813_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"74:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"82:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"90:5:46","type":""}],"src":"7:195:46"},{"body":{"nodeType":"YulBlock","src":"311:300:46","statements":[{"body":{"nodeType":"YulBlock","src":"357:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"359:77:46"},"nodeType":"YulFunctionCall","src":"359:79:46"},"nodeType":"YulExpressionStatement","src":"359:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"332:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"341:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"328:3:46"},"nodeType":"YulFunctionCall","src":"328:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"353:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"324:3:46"},"nodeType":"YulFunctionCall","src":"324:32:46"},"nodeType":"YulIf","src":"321:119:46"},{"nodeType":"YulBlock","src":"450:154:46","statements":[{"nodeType":"YulVariableDeclaration","src":"465:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"479:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"469:6:46","type":""}]},{"nodeType":"YulAssignment","src":"494:100:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"566:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"577:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"562:3:46"},"nodeType":"YulFunctionCall","src":"562:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"586:7:46"}],"functionName":{"name":"abi_decode_t_contract$_IWitnetRandomness_$3813_fromMemory","nodeType":"YulIdentifier","src":"504:57:46"},"nodeType":"YulFunctionCall","src":"504:90:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"494:6:46"}]}]}]},"name":"abi_decode_tuple_t_contract$_IWitnetRandomness_$3813_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"281:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"292:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"304:6:46","type":""}],"src":"208:403:46"},{"body":{"nodeType":"YulBlock","src":"657:35:46","statements":[{"nodeType":"YulAssignment","src":"667:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"683:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"677:5:46"},"nodeType":"YulFunctionCall","src":"677:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"667:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"650:6:46","type":""}],"src":"617:75:46"},{"body":{"nodeType":"YulBlock","src":"743:51:46","statements":[{"nodeType":"YulAssignment","src":"753:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"782:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"764:17:46"},"nodeType":"YulFunctionCall","src":"764:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"753:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"725:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"735:7:46","type":""}],"src":"698:96:46"},{"body":{"nodeType":"YulBlock","src":"871:51:46","statements":[{"nodeType":"YulAssignment","src":"881:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"910:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"892:17:46"},"nodeType":"YulFunctionCall","src":"892:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"881:7:46"}]}]},"name":"cleanup_t_contract$_IWitnetRandomness_$3813","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"853:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"863:7:46","type":""}],"src":"800:122:46"},{"body":{"nodeType":"YulBlock","src":"973:81:46","statements":[{"nodeType":"YulAssignment","src":"983:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"998:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1005:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"994:3:46"},"nodeType":"YulFunctionCall","src":"994:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"983:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"955:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"965:7:46","type":""}],"src":"928:126:46"},{"body":{"nodeType":"YulBlock","src":"1088:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1105:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1108:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1098:6:46"},"nodeType":"YulFunctionCall","src":"1098:88:46"},"nodeType":"YulExpressionStatement","src":"1098:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1202:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"1205:4:46","type":"","value":"0x01"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1195:6:46"},"nodeType":"YulFunctionCall","src":"1195:15:46"},"nodeType":"YulExpressionStatement","src":"1195:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1226:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1229:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1219:6:46"},"nodeType":"YulFunctionCall","src":"1219:15:46"},"nodeType":"YulExpressionStatement","src":"1219:15:46"}]},"name":"panic_error_0x01","nodeType":"YulFunctionDefinition","src":"1060:180:46"},{"body":{"nodeType":"YulBlock","src":"1335:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1352:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1355:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1345:6:46"},"nodeType":"YulFunctionCall","src":"1345:12:46"},"nodeType":"YulExpressionStatement","src":"1345:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"1246:117:46"},{"body":{"nodeType":"YulBlock","src":"1458:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1475:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1478:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1468:6:46"},"nodeType":"YulFunctionCall","src":"1468:12:46"},"nodeType":"YulExpressionStatement","src":"1468:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"1369:117:46"},{"body":{"nodeType":"YulBlock","src":"1561:105:46","statements":[{"body":{"nodeType":"YulBlock","src":"1644:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1653:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1656:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1646:6:46"},"nodeType":"YulFunctionCall","src":"1646:12:46"},"nodeType":"YulExpressionStatement","src":"1646:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1584:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1635:5:46"}],"functionName":{"name":"cleanup_t_contract$_IWitnetRandomness_$3813","nodeType":"YulIdentifier","src":"1591:43:46"},"nodeType":"YulFunctionCall","src":"1591:50:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1581:2:46"},"nodeType":"YulFunctionCall","src":"1581:61:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1574:6:46"},"nodeType":"YulFunctionCall","src":"1574:69:46"},"nodeType":"YulIf","src":"1571:89:46"}]},"name":"validator_revert_t_contract$_IWitnetRandomness_$3813","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1554:5:46","type":""}],"src":"1492:174:46"}]},"contents":"{\n\n    function abi_decode_t_contract$_IWitnetRandomness_$3813_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_contract$_IWitnetRandomness_$3813(value)\n    }\n\n    function abi_decode_tuple_t_contract$_IWitnetRandomness_$3813_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_contract$_IWitnetRandomness_$3813_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\n    }\n\n    function cleanup_t_address(value) -> cleaned {\n        cleaned := cleanup_t_uint160(value)\n    }\n\n    function cleanup_t_contract$_IWitnetRandomness_$3813(value) -> cleaned {\n        cleaned := cleanup_t_address(value)\n    }\n\n    function cleanup_t_uint160(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n    }\n\n    function panic_error_0x01() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x01)\n        revert(0, 0x24)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function validator_revert_t_contract$_IWitnetRandomness_$3813(value) {\n        if iszero(eq(value, cleanup_t_contract$_IWitnetRandomness_$3813(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"60a060405234801561001057600080fd5b5060405161079a38038061079a833981810160405281019061003291906100c2565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156100705761006f610133565b5b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250505061017e565b6000815190506100bc81610167565b92915050565b6000602082840312156100d8576100d7610162565b5b60006100e6848285016100ad565b91505092915050565b60006100fa82610113565b9050919050565b600061010c826100ef565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b600080fd5b61017081610101565b811461017b57600080fd5b50565b60805160601c6105f16101a96000396000818160fe01528181610149015261022d01526105f16000f3fe60806040526004361061004e5760003560e01c806327eef8b91461005a5780633601318914610085578063921b9763146100b0578063b1fa4176146100c7578063f8413b07146100f257610055565b3661005557005b600080fd5b34801561006657600080fd5b5061006f6100fc565b60405161007c91906103ec565b60405180910390f35b34801561009157600080fd5b5061009a610120565b6040516100a79190610422565b60405180910390f35b3480156100bc57600080fd5b506100c5610134565b005b3480156100d357600080fd5b506100dc61021c565b6040516100e99190610407565b60405180910390f35b6100fa610222565b005b7f000000000000000000000000000000000000000000000000000000000000000081565b60008054906101000a900463ffffffff1681565b6000600154116101475761014661052a565b5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166324cbbfc163ffffffff60006001546040518463ffffffff1660e01b81526004016101ab9392919061043d565b60206040518083038186803b1580156101c357600080fd5b505afa1580156101d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fb9190610383565b6000806101000a81548163ffffffff021916908363ffffffff160217905550565b60015481565b4360018190555060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663699b328a346040518263ffffffff1660e01b81526004016020604051808303818588803b15801561029357600080fd5b505af11580156102a7573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906102cc9190610356565b905034811015610329573373ffffffffffffffffffffffffffffffffffffffff166108fc82346102fc9190610474565b9081150290604051600060405180830381858888f19350505050158015610327573d6000803e3d6000fd5b505b50565b60008151905061033b8161058d565b92915050565b600081519050610350816105a4565b92915050565b60006020828403121561036c5761036b610588565b5b600061037a8482850161032c565b91505092915050565b60006020828403121561039957610398610588565b5b60006103a784828501610341565b91505092915050565b6103b9816104e2565b82525050565b6103c8816104f4565b82525050565b6103d7816104c8565b82525050565b6103e6816104d2565b82525050565b600060208201905061040160008301846103b0565b92915050565b600060208201905061041c60008301846103ce565b92915050565b600060208201905061043760008301846103dd565b92915050565b600060608201905061045260008301866103dd565b61045f60208301856103bf565b61046c60408301846103ce565b949350505050565b600061047f826104c8565b915061048a836104c8565b92508282101561049d5761049c610559565b5b828203905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b60006104ed82610506565b9050919050565b60006104ff826104c8565b9050919050565b600061051182610518565b9050919050565b6000610523826104a8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b610596816104c8565b81146105a157600080fd5b50565b6105ad816104d2565b81146105b857600080fd5b5056fea26469706673582212202455f017019d9246049f5eb78afb1dc0c3fbf66404f29aab84d93e6dac1bb7bd64736f6c63430008070033","opcodes":"PUSH1 0xA0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x79A CODESIZE SUB DUP1 PUSH2 0x79A DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x32 SWAP2 SWAP1 PUSH2 0xC2 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x70 JUMPI PUSH2 0x6F PUSH2 0x133 JUMP JUMPDEST JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP PUSH2 0x17E JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0xBC DUP2 PUSH2 0x167 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xD8 JUMPI PUSH2 0xD7 PUSH2 0x162 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xE6 DUP5 DUP3 DUP6 ADD PUSH2 0xAD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xFA DUP3 PUSH2 0x113 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x10C DUP3 PUSH2 0xEF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x170 DUP2 PUSH2 0x101 JUMP JUMPDEST DUP2 EQ PUSH2 0x17B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH2 0x5F1 PUSH2 0x1A9 PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH1 0xFE ADD MSTORE DUP2 DUP2 PUSH2 0x149 ADD MSTORE PUSH2 0x22D ADD MSTORE PUSH2 0x5F1 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4E JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x27EEF8B9 EQ PUSH2 0x5A JUMPI DUP1 PUSH4 0x36013189 EQ PUSH2 0x85 JUMPI DUP1 PUSH4 0x921B9763 EQ PUSH2 0xB0 JUMPI DUP1 PUSH4 0xB1FA4176 EQ PUSH2 0xC7 JUMPI DUP1 PUSH4 0xF8413B07 EQ PUSH2 0xF2 JUMPI PUSH2 0x55 JUMP JUMPDEST CALLDATASIZE PUSH2 0x55 JUMPI STOP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x66 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x6F PUSH2 0xFC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7C SWAP2 SWAP1 PUSH2 0x3EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x91 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x9A PUSH2 0x120 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA7 SWAP2 SWAP1 PUSH2 0x422 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC5 PUSH2 0x134 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xDC PUSH2 0x21C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x407 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xFA PUSH2 0x222 JUMP JUMPDEST STOP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH4 0xFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD GT PUSH2 0x147 JUMPI PUSH2 0x146 PUSH2 0x52A JUMP JUMPDEST JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x24CBBFC1 PUSH4 0xFFFFFFFF PUSH1 0x0 PUSH1 0x1 SLOAD PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AB SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x43D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1D7 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 0x1FB SWAP2 SWAP1 PUSH2 0x383 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH4 0xFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH4 0xFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST NUMBER PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699B328A CALLVALUE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x293 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2A7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP 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 0x2CC SWAP2 SWAP1 PUSH2 0x356 JUMP JUMPDEST SWAP1 POP CALLVALUE DUP2 LT ISZERO PUSH2 0x329 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 CALLVALUE PUSH2 0x2FC SWAP2 SWAP1 PUSH2 0x474 JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x327 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x33B DUP2 PUSH2 0x58D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x350 DUP2 PUSH2 0x5A4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x36C JUMPI PUSH2 0x36B PUSH2 0x588 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x37A DUP5 DUP3 DUP6 ADD PUSH2 0x32C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x399 JUMPI PUSH2 0x398 PUSH2 0x588 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3A7 DUP5 DUP3 DUP6 ADD PUSH2 0x341 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3B9 DUP2 PUSH2 0x4E2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3C8 DUP2 PUSH2 0x4F4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3D7 DUP2 PUSH2 0x4C8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3E6 DUP2 PUSH2 0x4D2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x401 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3B0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3CE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x437 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3DD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x452 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x3DD JUMP JUMPDEST PUSH2 0x45F PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x3BF JUMP JUMPDEST PUSH2 0x46C PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x3CE JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x47F DUP3 PUSH2 0x4C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x48A DUP4 PUSH2 0x4C8 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x49D JUMPI PUSH2 0x49C PUSH2 0x559 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4ED DUP3 PUSH2 0x506 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4FF DUP3 PUSH2 0x4C8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x511 DUP3 PUSH2 0x518 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x523 DUP3 PUSH2 0x4A8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x596 DUP2 PUSH2 0x4C8 JUMP JUMPDEST DUP2 EQ PUSH2 0x5A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x5AD DUP2 PUSH2 0x4D2 JUMP JUMPDEST DUP2 EQ PUSH2 0x5B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x24 SSTORE CREATE OR ADD SWAP14 SWAP3 CHAINID DIV SWAP16 0x5E 0xB7 DUP11 0xFB SAR 0xC0 0xC3 0xFB 0xF6 PUSH5 0x4F29AAB84 0xD9 RETURNDATACOPY PUSH14 0xAC1BB7BD64736F6C634300080700 CALLER ","sourceMap":"142:951:2:-:0;;;413:160;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;517:1;479:40;;487:17;479:40;;;;472:48;;;;:::i;:::-;;549:17;530:36;;;;;;;;;;;;413:160;142:951;;7:195:46;90:5;121:6;115:13;106:22;;137:59;190:5;137:59;:::i;:::-;7:195;;;;:::o;208:403::-;304:6;353:2;341:9;332:7;328:23;324:32;321:119;;;359:79;;:::i;:::-;321:119;479:1;504:90;586:7;577:6;566:9;562:22;504:90;:::i;:::-;494:100;;450:154;208:403;;;;:::o;698:96::-;735:7;764:24;782:5;764:24;:::i;:::-;753:35;;698:96;;;:::o;800:122::-;863:7;892:24;910:5;892:24;:::i;:::-;881:35;;800:122;;;:::o;928:126::-;965:7;1005:42;998:5;994:54;983:65;;928:126;;;:::o;1060:180::-;1108:77;1105:1;1098:88;1205:4;1202:1;1195:15;1229:4;1226:1;1219:15;1369:117;1478:1;1475;1468:12;1492:174;1591:50;1635:5;1591:50;:::i;:::-;1584:5;1581:61;1571:89;;1656:1;1653;1646:12;1571:89;1492:174;:::o;142:951:2:-;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_89":{"entryPoint":null,"id":89,"parameterSlots":0,"returnSlots":0},"@fetchRandomNumber_148":{"entryPoint":308,"id":148,"parameterSlots":0,"returnSlots":0},"@latestRandomizingBlock_59":{"entryPoint":540,"id":59,"parameterSlots":0,"returnSlots":0},"@randomness_57":{"entryPoint":288,"id":57,"parameterSlots":0,"returnSlots":0},"@requestRandomness_125":{"entryPoint":546,"id":125,"parameterSlots":0,"returnSlots":0},"@witnetRandomness_62":{"entryPoint":252,"id":62,"parameterSlots":0,"returnSlots":0},"abi_decode_t_uint256_fromMemory":{"entryPoint":812,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32_fromMemory":{"entryPoint":833,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256_fromMemory":{"entryPoint":854,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint32_fromMemory":{"entryPoint":899,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_contract$_IWitnetRandomness_$3813_to_t_address_fromStack":{"entryPoint":944,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_rational_0_by_1_to_t_uint256_fromStack":{"entryPoint":959,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":974,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint32_to_t_uint32_fromStack":{"entryPoint":989,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_t_contract$_IWitnetRandomness_$3813__to_t_address__fromStack_reversed":{"entryPoint":1004,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed":{"entryPoint":1031,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed":{"entryPoint":1058,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint32_t_rational_0_by_1_t_uint256__to_t_uint32_t_uint256_t_uint256__fromStack_reversed":{"entryPoint":1085,"id":null,"parameterSlots":4,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"checked_sub_t_uint256":{"entryPoint":1140,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":1192,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":1224,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint32":{"entryPoint":1234,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_IWitnetRandomness_$3813_to_t_address":{"entryPoint":1250,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_rational_0_by_1_to_t_uint256":{"entryPoint":1268,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address":{"entryPoint":1286,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_uint160":{"entryPoint":1304,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x01":{"entryPoint":1322,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x11":{"entryPoint":1369,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":1416,"id":null,"parameterSlots":0,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":1421,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint32":{"entryPoint":1444,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:4791:46","statements":[{"body":{"nodeType":"YulBlock","src":"70:80:46","statements":[{"nodeType":"YulAssignment","src":"80:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"95:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"89:5:46"},"nodeType":"YulFunctionCall","src":"89:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"80:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"138:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"111:26:46"},"nodeType":"YulFunctionCall","src":"111:33:46"},"nodeType":"YulExpressionStatement","src":"111:33:46"}]},"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"48:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"56:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"64:5:46","type":""}],"src":"7:143:46"},{"body":{"nodeType":"YulBlock","src":"218:79:46","statements":[{"nodeType":"YulAssignment","src":"228:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"243:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"237:5:46"},"nodeType":"YulFunctionCall","src":"237:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"228:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"285:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"259:25:46"},"nodeType":"YulFunctionCall","src":"259:32:46"},"nodeType":"YulExpressionStatement","src":"259:32:46"}]},"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"196:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"204:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"212:5:46","type":""}],"src":"156:141:46"},{"body":{"nodeType":"YulBlock","src":"380:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"426:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"428:77:46"},"nodeType":"YulFunctionCall","src":"428:79:46"},"nodeType":"YulExpressionStatement","src":"428:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"401:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"410:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"397:3:46"},"nodeType":"YulFunctionCall","src":"397:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"422:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"393:3:46"},"nodeType":"YulFunctionCall","src":"393:32:46"},"nodeType":"YulIf","src":"390:119:46"},{"nodeType":"YulBlock","src":"519:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"534:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"548:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"538:6:46","type":""}]},{"nodeType":"YulAssignment","src":"563:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"609:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"620:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"605:3:46"},"nodeType":"YulFunctionCall","src":"605:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"629:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"573:31:46"},"nodeType":"YulFunctionCall","src":"573:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"563:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"350:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"361:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"373:6:46","type":""}],"src":"303:351:46"},{"body":{"nodeType":"YulBlock","src":"736:273:46","statements":[{"body":{"nodeType":"YulBlock","src":"782:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"784:77:46"},"nodeType":"YulFunctionCall","src":"784:79:46"},"nodeType":"YulExpressionStatement","src":"784:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"757:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"766:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"753:3:46"},"nodeType":"YulFunctionCall","src":"753:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"778:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"749:3:46"},"nodeType":"YulFunctionCall","src":"749:32:46"},"nodeType":"YulIf","src":"746:119:46"},{"nodeType":"YulBlock","src":"875:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"890:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"904:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"894:6:46","type":""}]},{"nodeType":"YulAssignment","src":"919:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"964:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"975:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"960:3:46"},"nodeType":"YulFunctionCall","src":"960:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"984:7:46"}],"functionName":{"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulIdentifier","src":"929:30:46"},"nodeType":"YulFunctionCall","src":"929:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"919:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"706:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"717:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"729:6:46","type":""}],"src":"660:349:46"},{"body":{"nodeType":"YulBlock","src":"1106:92:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1123:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1185:5:46"}],"functionName":{"name":"convert_t_contract$_IWitnetRandomness_$3813_to_t_address","nodeType":"YulIdentifier","src":"1128:56:46"},"nodeType":"YulFunctionCall","src":"1128:63:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1116:6:46"},"nodeType":"YulFunctionCall","src":"1116:76:46"},"nodeType":"YulExpressionStatement","src":"1116:76:46"}]},"name":"abi_encode_t_contract$_IWitnetRandomness_$3813_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1094:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1101:3:46","type":""}],"src":"1015:183:46"},{"body":{"nodeType":"YulBlock","src":"1277:74:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1294:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1338:5:46"}],"functionName":{"name":"convert_t_rational_0_by_1_to_t_uint256","nodeType":"YulIdentifier","src":"1299:38:46"},"nodeType":"YulFunctionCall","src":"1299:45:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1287:6:46"},"nodeType":"YulFunctionCall","src":"1287:58:46"},"nodeType":"YulExpressionStatement","src":"1287:58:46"}]},"name":"abi_encode_t_rational_0_by_1_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1265:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1272:3:46","type":""}],"src":"1204:147:46"},{"body":{"nodeType":"YulBlock","src":"1422:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1439:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1462:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"1444:17:46"},"nodeType":"YulFunctionCall","src":"1444:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1432:6:46"},"nodeType":"YulFunctionCall","src":"1432:37:46"},"nodeType":"YulExpressionStatement","src":"1432:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1410:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1417:3:46","type":""}],"src":"1357:118:46"},{"body":{"nodeType":"YulBlock","src":"1544:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1561:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1583:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"1566:16:46"},"nodeType":"YulFunctionCall","src":"1566:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1554:6:46"},"nodeType":"YulFunctionCall","src":"1554:36:46"},"nodeType":"YulExpressionStatement","src":"1554:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1532:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1539:3:46","type":""}],"src":"1481:115:46"},{"body":{"nodeType":"YulBlock","src":"1726:150:46","statements":[{"nodeType":"YulAssignment","src":"1736:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1748:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1759:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1744:3:46"},"nodeType":"YulFunctionCall","src":"1744:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1736:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"1842:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1855:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1866:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1851:3:46"},"nodeType":"YulFunctionCall","src":"1851:17:46"}],"functionName":{"name":"abi_encode_t_contract$_IWitnetRandomness_$3813_to_t_address_fromStack","nodeType":"YulIdentifier","src":"1772:69:46"},"nodeType":"YulFunctionCall","src":"1772:97:46"},"nodeType":"YulExpressionStatement","src":"1772:97:46"}]},"name":"abi_encode_tuple_t_contract$_IWitnetRandomness_$3813__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1698:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"1710:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"1721:4:46","type":""}],"src":"1602:274:46"},{"body":{"nodeType":"YulBlock","src":"1980:124:46","statements":[{"nodeType":"YulAssignment","src":"1990:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2002:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2013:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1998:3:46"},"nodeType":"YulFunctionCall","src":"1998:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1990:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2070:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2083:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2094:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2079:3:46"},"nodeType":"YulFunctionCall","src":"2079:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"2026:43:46"},"nodeType":"YulFunctionCall","src":"2026:71:46"},"nodeType":"YulExpressionStatement","src":"2026:71:46"}]},"name":"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1952:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"1964:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"1975:4:46","type":""}],"src":"1882:222:46"},{"body":{"nodeType":"YulBlock","src":"2206:122:46","statements":[{"nodeType":"YulAssignment","src":"2216:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2228:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2239:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2224:3:46"},"nodeType":"YulFunctionCall","src":"2224:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2216:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2294:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2307:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2318:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2303:3:46"},"nodeType":"YulFunctionCall","src":"2303:17:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulIdentifier","src":"2252:41:46"},"nodeType":"YulFunctionCall","src":"2252:69:46"},"nodeType":"YulExpressionStatement","src":"2252:69:46"}]},"name":"abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2178:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2190:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2201:4:46","type":""}],"src":"2110:218:46"},{"body":{"nodeType":"YulBlock","src":"2494:294:46","statements":[{"nodeType":"YulAssignment","src":"2504:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2516:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2527:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2512:3:46"},"nodeType":"YulFunctionCall","src":"2512:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2504:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2582:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2595:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2606:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2591:3:46"},"nodeType":"YulFunctionCall","src":"2591:17:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulIdentifier","src":"2540:41:46"},"nodeType":"YulFunctionCall","src":"2540:69:46"},"nodeType":"YulExpressionStatement","src":"2540:69:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"2671:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2684:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2695:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2680:3:46"},"nodeType":"YulFunctionCall","src":"2680:18:46"}],"functionName":{"name":"abi_encode_t_rational_0_by_1_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"2619:51:46"},"nodeType":"YulFunctionCall","src":"2619:80:46"},"nodeType":"YulExpressionStatement","src":"2619:80:46"},{"expression":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"2753:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2766:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2777:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2762:3:46"},"nodeType":"YulFunctionCall","src":"2762:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"2709:43:46"},"nodeType":"YulFunctionCall","src":"2709:72:46"},"nodeType":"YulExpressionStatement","src":"2709:72:46"}]},"name":"abi_encode_tuple_t_uint32_t_rational_0_by_1_t_uint256__to_t_uint32_t_uint256_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2450:9:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"2462:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"2470:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2478:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2489:4:46","type":""}],"src":"2334:454:46"},{"body":{"nodeType":"YulBlock","src":"2834:35:46","statements":[{"nodeType":"YulAssignment","src":"2844:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2860:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2854:5:46"},"nodeType":"YulFunctionCall","src":"2854:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"2844:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"2827:6:46","type":""}],"src":"2794:75:46"},{"body":{"nodeType":"YulBlock","src":"2920:146:46","statements":[{"nodeType":"YulAssignment","src":"2930:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"2953:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"2935:17:46"},"nodeType":"YulFunctionCall","src":"2935:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"2930:1:46"}]},{"nodeType":"YulAssignment","src":"2964:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"2987:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"2969:17:46"},"nodeType":"YulFunctionCall","src":"2969:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"2964:1:46"}]},{"body":{"nodeType":"YulBlock","src":"3011:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"3013:16:46"},"nodeType":"YulFunctionCall","src":"3013:18:46"},"nodeType":"YulExpressionStatement","src":"3013:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"3005:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"3008:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"3002:2:46"},"nodeType":"YulFunctionCall","src":"3002:8:46"},"nodeType":"YulIf","src":"2999:34:46"},{"nodeType":"YulAssignment","src":"3043:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"3055:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"3058:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3051:3:46"},"nodeType":"YulFunctionCall","src":"3051:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"3043:4:46"}]}]},"name":"checked_sub_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"2906:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"2909:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"2915:4:46","type":""}],"src":"2875:191:46"},{"body":{"nodeType":"YulBlock","src":"3117:81:46","statements":[{"nodeType":"YulAssignment","src":"3127:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3142:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3149:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"3138:3:46"},"nodeType":"YulFunctionCall","src":"3138:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"3127:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3099:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3109:7:46","type":""}],"src":"3072:126:46"},{"body":{"nodeType":"YulBlock","src":"3249:32:46","statements":[{"nodeType":"YulAssignment","src":"3259:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"3270:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"3259:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3231:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3241:7:46","type":""}],"src":"3204:77:46"},{"body":{"nodeType":"YulBlock","src":"3331:49:46","statements":[{"nodeType":"YulAssignment","src":"3341:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3356:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3363:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"3352:3:46"},"nodeType":"YulFunctionCall","src":"3352:22:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"3341:7:46"}]}]},"name":"cleanup_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3313:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3323:7:46","type":""}],"src":"3287:93:46"},{"body":{"nodeType":"YulBlock","src":"3472:66:46","statements":[{"nodeType":"YulAssignment","src":"3482:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3526:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"3495:30:46"},"nodeType":"YulFunctionCall","src":"3495:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3482:9:46"}]}]},"name":"convert_t_contract$_IWitnetRandomness_$3813_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3452:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3462:9:46","type":""}],"src":"3386:152:46"},{"body":{"nodeType":"YulBlock","src":"3612:53:46","statements":[{"nodeType":"YulAssignment","src":"3622:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3653:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"3635:17:46"},"nodeType":"YulFunctionCall","src":"3635:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3622:9:46"}]}]},"name":"convert_t_rational_0_by_1_to_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3592:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3602:9:46","type":""}],"src":"3544:121:46"},{"body":{"nodeType":"YulBlock","src":"3731:66:46","statements":[{"nodeType":"YulAssignment","src":"3741:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3785:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"3754:30:46"},"nodeType":"YulFunctionCall","src":"3754:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3741:9:46"}]}]},"name":"convert_t_uint160_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3711:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3721:9:46","type":""}],"src":"3671:126:46"},{"body":{"nodeType":"YulBlock","src":"3863:53:46","statements":[{"nodeType":"YulAssignment","src":"3873:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3904:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"3886:17:46"},"nodeType":"YulFunctionCall","src":"3886:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"3873:9:46"}]}]},"name":"convert_t_uint160_to_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3843:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"3853:9:46","type":""}],"src":"3803:113:46"},{"body":{"nodeType":"YulBlock","src":"3950:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3967:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"3970:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3960:6:46"},"nodeType":"YulFunctionCall","src":"3960:88:46"},"nodeType":"YulExpressionStatement","src":"3960:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4064:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"4067:4:46","type":"","value":"0x01"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4057:6:46"},"nodeType":"YulFunctionCall","src":"4057:15:46"},"nodeType":"YulExpressionStatement","src":"4057:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4088:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4091:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4081:6:46"},"nodeType":"YulFunctionCall","src":"4081:15:46"},"nodeType":"YulExpressionStatement","src":"4081:15:46"}]},"name":"panic_error_0x01","nodeType":"YulFunctionDefinition","src":"3922:180:46"},{"body":{"nodeType":"YulBlock","src":"4136:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4153:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4156:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4146:6:46"},"nodeType":"YulFunctionCall","src":"4146:88:46"},"nodeType":"YulExpressionStatement","src":"4146:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4250:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"4253:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4243:6:46"},"nodeType":"YulFunctionCall","src":"4243:15:46"},"nodeType":"YulExpressionStatement","src":"4243:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4274:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4277:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4267:6:46"},"nodeType":"YulFunctionCall","src":"4267:15:46"},"nodeType":"YulExpressionStatement","src":"4267:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"4108:180:46"},{"body":{"nodeType":"YulBlock","src":"4383:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4400:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4403:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4393:6:46"},"nodeType":"YulFunctionCall","src":"4393:12:46"},"nodeType":"YulExpressionStatement","src":"4393:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"4294:117:46"},{"body":{"nodeType":"YulBlock","src":"4506:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4523:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4526:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4516:6:46"},"nodeType":"YulFunctionCall","src":"4516:12:46"},"nodeType":"YulExpressionStatement","src":"4516:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"4417:117:46"},{"body":{"nodeType":"YulBlock","src":"4583:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"4640:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4649:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4652:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4642:6:46"},"nodeType":"YulFunctionCall","src":"4642:12:46"},"nodeType":"YulExpressionStatement","src":"4642:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4606:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4631:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"4613:17:46"},"nodeType":"YulFunctionCall","src":"4613:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"4603:2:46"},"nodeType":"YulFunctionCall","src":"4603:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"4596:6:46"},"nodeType":"YulFunctionCall","src":"4596:43:46"},"nodeType":"YulIf","src":"4593:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4576:5:46","type":""}],"src":"4540:122:46"},{"body":{"nodeType":"YulBlock","src":"4710:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"4766:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4775:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4778:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"4768:6:46"},"nodeType":"YulFunctionCall","src":"4768:12:46"},"nodeType":"YulExpressionStatement","src":"4768:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4733:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4757:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"4740:16:46"},"nodeType":"YulFunctionCall","src":"4740:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"4730:2:46"},"nodeType":"YulFunctionCall","src":"4730:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"4723:6:46"},"nodeType":"YulFunctionCall","src":"4723:42:46"},"nodeType":"YulIf","src":"4720:62:46"}]},"name":"validator_revert_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4703:5:46","type":""}],"src":"4668:120:46"}]},"contents":"{\n\n    function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint256(value)\n    }\n\n    function abi_decode_t_uint32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_contract$_IWitnetRandomness_$3813_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_IWitnetRandomness_$3813_to_t_address(value))\n    }\n\n    function abi_encode_t_rational_0_by_1_to_t_uint256_fromStack(value, pos) {\n        mstore(pos, convert_t_rational_0_by_1_to_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_uint32_to_t_uint32_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_tuple_t_contract$_IWitnetRandomness_$3813__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_IWitnetRandomness_$3813_to_t_address_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 abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint32_to_t_uint32_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_uint32_t_rational_0_by_1_t_uint256__to_t_uint32_t_uint256_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n        tail := add(headStart, 96)\n\n        abi_encode_t_uint32_to_t_uint32_fromStack(value0,  add(headStart, 0))\n\n        abi_encode_t_rational_0_by_1_to_t_uint256_fromStack(value1,  add(headStart, 32))\n\n        abi_encode_t_uint256_to_t_uint256_fromStack(value2,  add(headStart, 64))\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\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_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_uint32(value) -> cleaned {\n        cleaned := and(value, 0xffffffff)\n    }\n\n    function convert_t_contract$_IWitnetRandomness_$3813_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_rational_0_by_1_to_t_uint256(value) -> converted {\n        converted := cleanup_t_uint256(value)\n    }\n\n    function convert_t_uint160_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_uint160(value) -> converted {\n        converted := cleanup_t_uint160(value)\n    }\n\n    function panic_error_0x01() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x01)\n        revert(0, 0x24)\n    }\n\n    function panic_error_0x11() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x11)\n        revert(0, 0x24)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint32(value) {\n        if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"62":[{"length":32,"start":254},{"length":32,"start":329},{"length":32,"start":557}]},"linkReferences":{},"object":"60806040526004361061004e5760003560e01c806327eef8b91461005a5780633601318914610085578063921b9763146100b0578063b1fa4176146100c7578063f8413b07146100f257610055565b3661005557005b600080fd5b34801561006657600080fd5b5061006f6100fc565b60405161007c91906103ec565b60405180910390f35b34801561009157600080fd5b5061009a610120565b6040516100a79190610422565b60405180910390f35b3480156100bc57600080fd5b506100c5610134565b005b3480156100d357600080fd5b506100dc61021c565b6040516100e99190610407565b60405180910390f35b6100fa610222565b005b7f000000000000000000000000000000000000000000000000000000000000000081565b60008054906101000a900463ffffffff1681565b6000600154116101475761014661052a565b5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166324cbbfc163ffffffff60006001546040518463ffffffff1660e01b81526004016101ab9392919061043d565b60206040518083038186803b1580156101c357600080fd5b505afa1580156101d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fb9190610383565b6000806101000a81548163ffffffff021916908363ffffffff160217905550565b60015481565b4360018190555060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663699b328a346040518263ffffffff1660e01b81526004016020604051808303818588803b15801561029357600080fd5b505af11580156102a7573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906102cc9190610356565b905034811015610329573373ffffffffffffffffffffffffffffffffffffffff166108fc82346102fc9190610474565b9081150290604051600060405180830381858888f19350505050158015610327573d6000803e3d6000fd5b505b50565b60008151905061033b8161058d565b92915050565b600081519050610350816105a4565b92915050565b60006020828403121561036c5761036b610588565b5b600061037a8482850161032c565b91505092915050565b60006020828403121561039957610398610588565b5b60006103a784828501610341565b91505092915050565b6103b9816104e2565b82525050565b6103c8816104f4565b82525050565b6103d7816104c8565b82525050565b6103e6816104d2565b82525050565b600060208201905061040160008301846103b0565b92915050565b600060208201905061041c60008301846103ce565b92915050565b600060208201905061043760008301846103dd565b92915050565b600060608201905061045260008301866103dd565b61045f60208301856103bf565b61046c60408301846103ce565b949350505050565b600061047f826104c8565b915061048a836104c8565b92508282101561049d5761049c610559565b5b828203905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b60006104ed82610506565b9050919050565b60006104ff826104c8565b9050919050565b600061051182610518565b9050919050565b6000610523826104a8565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b610596816104c8565b81146105a157600080fd5b50565b6105ad816104d2565b81146105b857600080fd5b5056fea26469706673582212202455f017019d9246049f5eb78afb1dc0c3fbf66404f29aab84d93e6dac1bb7bd64736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4E JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x27EEF8B9 EQ PUSH2 0x5A JUMPI DUP1 PUSH4 0x36013189 EQ PUSH2 0x85 JUMPI DUP1 PUSH4 0x921B9763 EQ PUSH2 0xB0 JUMPI DUP1 PUSH4 0xB1FA4176 EQ PUSH2 0xC7 JUMPI DUP1 PUSH4 0xF8413B07 EQ PUSH2 0xF2 JUMPI PUSH2 0x55 JUMP JUMPDEST CALLDATASIZE PUSH2 0x55 JUMPI STOP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x66 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x6F PUSH2 0xFC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7C SWAP2 SWAP1 PUSH2 0x3EC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x91 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x9A PUSH2 0x120 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA7 SWAP2 SWAP1 PUSH2 0x422 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC5 PUSH2 0x134 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xDC PUSH2 0x21C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xE9 SWAP2 SWAP1 PUSH2 0x407 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xFA PUSH2 0x222 JUMP JUMPDEST STOP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH4 0xFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD GT PUSH2 0x147 JUMPI PUSH2 0x146 PUSH2 0x52A JUMP JUMPDEST JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x24CBBFC1 PUSH4 0xFFFFFFFF PUSH1 0x0 PUSH1 0x1 SLOAD PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AB SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x43D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1D7 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 0x1FB SWAP2 SWAP1 PUSH2 0x383 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH4 0xFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH4 0xFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST NUMBER PUSH1 0x1 DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x699B328A CALLVALUE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x293 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x2A7 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP 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 0x2CC SWAP2 SWAP1 PUSH2 0x356 JUMP JUMPDEST SWAP1 POP CALLVALUE DUP2 LT ISZERO PUSH2 0x329 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 CALLVALUE PUSH2 0x2FC SWAP2 SWAP1 PUSH2 0x474 JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x327 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x33B DUP2 PUSH2 0x58D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x350 DUP2 PUSH2 0x5A4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x36C JUMPI PUSH2 0x36B PUSH2 0x588 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x37A DUP5 DUP3 DUP6 ADD PUSH2 0x32C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x399 JUMPI PUSH2 0x398 PUSH2 0x588 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x3A7 DUP5 DUP3 DUP6 ADD PUSH2 0x341 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3B9 DUP2 PUSH2 0x4E2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3C8 DUP2 PUSH2 0x4F4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3D7 DUP2 PUSH2 0x4C8 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3E6 DUP2 PUSH2 0x4D2 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x401 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3B0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x41C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3CE JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x437 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3DD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0x452 PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0x3DD JUMP JUMPDEST PUSH2 0x45F PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0x3BF JUMP JUMPDEST PUSH2 0x46C PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0x3CE JUMP JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x47F DUP3 PUSH2 0x4C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x48A DUP4 PUSH2 0x4C8 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x49D JUMPI PUSH2 0x49C PUSH2 0x559 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4ED DUP3 PUSH2 0x506 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4FF DUP3 PUSH2 0x4C8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x511 DUP3 PUSH2 0x518 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x523 DUP3 PUSH2 0x4A8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x596 DUP2 PUSH2 0x4C8 JUMP JUMPDEST DUP2 EQ PUSH2 0x5A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x5AD DUP2 PUSH2 0x4D2 JUMP JUMPDEST DUP2 EQ PUSH2 0x5B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x24 SSTORE CREATE OR ADD SWAP14 SWAP3 CHAINID DIV SWAP16 0x5E 0xB7 DUP11 0xFB SAR 0xC0 0xC3 0xFB 0xF6 PUSH5 0x4F29AAB84 0xD9 RETURNDATACOPY PUSH14 0xAC1BB7BD64736F6C634300080700 CALLER ","sourceMap":"142:951:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;243:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;170:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;910:181;;;;;;;;;;;;;:::i;:::-;;200:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;614:290;;;:::i;:::-;;243:51;;;:::o;170:24::-;;;;;;;;;;;;:::o;910:181::-;990:1;965:22;;:26;958:34;;;;:::i;:::-;;1016:16;:23;;;1040:16;1058:1;1061:22;;1016:68;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1002:10;;:82;;;;;;;;;;;;;;;;;;910:181::o;200:37::-;;;;:::o;614:290::-;695:12;670:22;:37;;;;717:15;735:16;:26;;;770:9;735:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;717:66;;810:9;797:10;:22;793:105;;;843:10;835:28;;:52;876:10;864:9;:22;;;;:::i;:::-;835:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;793:105;660:244;614:290::o;7:143:46:-;64:5;95:6;89:13;80:22;;111:33;138:5;111:33;:::i;:::-;7:143;;;;:::o;156:141::-;212:5;243:6;237:13;228:22;;259:32;285:5;259:32;:::i;:::-;156:141;;;;:::o;303:351::-;373:6;422:2;410:9;401:7;397:23;393:32;390:119;;;428:79;;:::i;:::-;390:119;548:1;573:64;629:7;620:6;609:9;605:22;573:64;:::i;:::-;563:74;;519:128;303:351;;;;:::o;660:349::-;729:6;778:2;766:9;757:7;753:23;749:32;746:119;;;784:79;;:::i;:::-;746:119;904:1;929:63;984:7;975:6;964:9;960:22;929:63;:::i;:::-;919:73;;875:127;660:349;;;;:::o;1015:183::-;1128:63;1185:5;1128:63;:::i;:::-;1123:3;1116:76;1015:183;;:::o;1204:147::-;1299:45;1338:5;1299:45;:::i;:::-;1294:3;1287:58;1204:147;;:::o;1357:118::-;1444:24;1462:5;1444:24;:::i;:::-;1439:3;1432:37;1357:118;;:::o;1481:115::-;1566:23;1583:5;1566:23;:::i;:::-;1561:3;1554:36;1481:115;;:::o;1602:274::-;1721:4;1759:2;1748:9;1744:18;1736:26;;1772:97;1866:1;1855:9;1851:17;1842:6;1772:97;:::i;:::-;1602:274;;;;:::o;1882:222::-;1975:4;2013:2;2002:9;1998:18;1990:26;;2026:71;2094:1;2083:9;2079:17;2070:6;2026:71;:::i;:::-;1882:222;;;;:::o;2110:218::-;2201:4;2239:2;2228:9;2224:18;2216:26;;2252:69;2318:1;2307:9;2303:17;2294:6;2252:69;:::i;:::-;2110:218;;;;:::o;2334:454::-;2489:4;2527:2;2516:9;2512:18;2504:26;;2540:69;2606:1;2595:9;2591:17;2582:6;2540:69;:::i;:::-;2619:80;2695:2;2684:9;2680:18;2671:6;2619:80;:::i;:::-;2709:72;2777:2;2766:9;2762:18;2753:6;2709:72;:::i;:::-;2334:454;;;;;;:::o;2875:191::-;2915:4;2935:20;2953:1;2935:20;:::i;:::-;2930:25;;2969:20;2987:1;2969:20;:::i;:::-;2964:25;;3008:1;3005;3002:8;2999:34;;;3013:18;;:::i;:::-;2999:34;3058:1;3055;3051:9;3043:17;;2875:191;;;;:::o;3072:126::-;3109:7;3149:42;3142:5;3138:54;3127:65;;3072:126;;;:::o;3204:77::-;3241:7;3270:5;3259:16;;3204:77;;;:::o;3287:93::-;3323:7;3363:10;3356:5;3352:22;3341:33;;3287:93;;;:::o;3386:152::-;3462:9;3495:37;3526:5;3495:37;:::i;:::-;3482:50;;3386:152;;;:::o;3544:121::-;3602:9;3635:24;3653:5;3635:24;:::i;:::-;3622:37;;3544:121;;;:::o;3671:126::-;3721:9;3754:37;3785:5;3754:37;:::i;:::-;3741:50;;3671:126;;;:::o;3803:113::-;3853:9;3886:24;3904:5;3886:24;:::i;:::-;3873:37;;3803:113;;;:::o;3922:180::-;3970:77;3967:1;3960:88;4067:4;4064:1;4057:15;4091:4;4088:1;4081:15;4108:180;4156:77;4153:1;4146:88;4253:4;4250:1;4243:15;4277:4;4274:1;4267:15;4417:117;4526:1;4523;4516:12;4540:122;4613:24;4631:5;4613:24;:::i;:::-;4606:5;4603:35;4593:63;;4652:1;4649;4642:12;4593:63;4540:122;:::o;4668:120::-;4740:23;4757:5;4740:23;:::i;:::-;4733:5;4730:34;4720:62;;4778:1;4775;4768:12;4720:62;4668:120;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"304200","executionCost":"infinite","totalCost":"infinite"},"external":{"fetchRandomNumber()":"infinite","latestRandomizingBlock()":"2473","randomness()":"2468","requestRandomness()":"infinite","witnetRandomness()":"infinite"}},"methodIdentifiers":{"fetchRandomNumber()":"921b9763","latestRandomizingBlock()":"b1fa4176","randomness()":"36013189","requestRandomness()":"f8413b07","witnetRandomness()":"27eef8b9"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract IWitnetRandomness\",\"name\":\"_witnetRandomness\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"fetchRandomNumber\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestRandomizingBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomness\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"requestRandomness\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnetRandomness\",\"outputs\":[{\"internalType\":\"contract IWitnetRandomness\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/WitnetRandom.sol\":\"WitnetRandom\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/WitnetRandom.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity >=0.5.0 <0.9.0;\\n\\nimport \\\"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\\\";\\n\\ncontract WitnetRandom {\\n    uint32 public randomness;\\n    uint256 public latestRandomizingBlock;\\n    IWitnetRandomness public immutable witnetRandomness;\\n\\n    /*\\n     * Network: Kaia Kairos\\n     * WitnetRandomness: 0xb4b2e2e00e9d6e5490d55623e4f403ec84c6d33f\\n     **/\\n    constructor(IWitnetRandomness _witnetRandomness) {\\n        assert(address(_witnetRandomness) != address(0));\\n        witnetRandomness = _witnetRandomness;\\n    }\\n\\n    receive() external payable {}\\n\\n    function requestRandomness() external payable {\\n        latestRandomizingBlock = block.number;\\n        uint _usedFunds = witnetRandomness.randomize{ value: msg.value }();\\n        if (_usedFunds < msg.value) {\\n            payable(msg.sender).transfer(msg.value - _usedFunds);\\n        }\\n    }\\n\\n    function fetchRandomNumber() external {\\n        assert(latestRandomizingBlock > 0);\\n        randomness =  witnetRandomness.random(type(uint32).max, 0, latestRandomizingBlock);\\n    }\\n}\",\"keccak256\":\"0x2d378a56f9c099c6963db07843a607ef47b0e7bf60d79e887543bbe33bc4701a\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet Randomness generator interface.\\n/// @author Witnet Foundation.\\ninterface IWitnetRandomness {\\n\\n    /// Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\\n    /// @param from Address from which the randomize() function was called. \\n    /// @param prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @param witnetQueryId Unique query id assigned to this request by the WRB.\\n    /// @param witnetRequestHash SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB.\\n    event Randomized(\\n        address indexed from,\\n        uint256 indexed prevBlock,\\n        uint256 witnetQueryId,\\n        bytes32 witnetRequestHash\\n    );\\n\\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \\n    /// transaction gas price as the one given.\\n    function estimateRandomizeFee(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view returns (address _from, uint256 _id, uint256 _prevBlock, uint256 _nextBlock);\\n\\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \\n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \\n    /// will recursively try to return randomness from the next non-faulty randomization request found \\n    /// in storage, if any. \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\\n    /// @dev   iii. all requests in/after the given block were solved with errors.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block) external view returns (bytes32); \\n\\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \\n    /// @param _block Block number from which the search will start.\\n    /// @return Number of the first block found after the given one, or `0` otherwise.\\n    function getRandomnessNextBlock(uint256 _block) external view returns (uint256); \\n\\n    /// Gets previous block in which a randomness request was posted before the given one.\\n    /// @param _block Block number from which the search will start.\\n    /// @return First block found before the given one, or `0` otherwise.\\n    function getRandomnessPrevBlock(uint256 _block) external view returns (uint256);\\n\\n    /// Returns `true` only when the randomness request that got posted within given block was already\\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\\n    function isRandomized(uint256 _block) external view returns (bool);\\n\\n    /// Returns latest block in which a randomness request got sucessfully posted to the WRB.\\n    function latestRandomizeBlock() external view returns (uint256);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \\n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _block Block number from which the search will start.\\n    function random(uint32 _range, uint256 _nonce, uint256 _block) external view returns (uint32);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _seed Seed value used as entropy source.\\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed) external pure returns (uint32);\\n\\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \\n    /// Only one randomness request per block will be actually posted to the WRB. Should there \\n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \\n    /// block randomness request according to current gas price. In both cases, all unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize() external payable returns (uint256 _usedFunds);\\n\\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \\n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \\n    /// request was posted. All unused funds shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256 _block) external payable returns (uint256 _usedFunds);\\n}\\n\",\"keccak256\":\"0x67868d08fe2406086cdd9a3860614201911a1ad16e3d34a94151fad721a12934\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":57,"contract":"contracts/WitnetRandom.sol:WitnetRandom","label":"randomness","offset":0,"slot":"0","type":"t_uint32"},{"astId":59,"contract":"contracts/WitnetRandom.sol:WitnetRandom","label":"latestRandomizingBlock","offset":0,"slot":"1","type":"t_uint256"}],"types":{"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint32":{"encoding":"inplace","label":"uint32","numberOfBytes":"4"}}},"userdoc":{"kind":"user","methods":{},"version":1}}},"contracts/supra-oracles/SupraValueFeedExample.sol":{"ISupraSValueFeed":{"abi":[{"inputs":[{"internalType":"string","name":"marketPair","type":"string"}],"name":"checkPrice","outputs":[{"internalType":"int256","name":"price","type":"int256"},{"internalType":"uint256","name":"timestamp","type":"uint256"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"checkPrice(string)":"abc4544e"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"marketPair\",\"type\":\"string\"}],\"name\":\"checkPrice\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"price\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/supra-oracles/SupraValueFeedExample.sol\":\"ISupraSValueFeed\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/supra-oracles/SupraValueFeedExample.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity ^0.8.7;\\n\\ninterface ISupraSValueFeed {\\n    function checkPrice(\\n        string memory marketPair\\n    ) external view returns (int256 price, uint256 timestamp);\\n}\\n\\ncontract SupraValueFeedExample {\\n    ISupraSValueFeed internal sValueFeed;\\n\\n    constructor() {\\n        sValueFeed = ISupraSValueFeed(0x7f003178060af3904b8b70fEa066AEE28e85043E);\\n    }\\n\\n    function getPrice(string memory marketPair) external view returns (int) {\\n        (int price /* uint timestamp */, ) = sValueFeed.checkPrice(marketPair);\\n        return price;\\n    }\\n}\\n\",\"keccak256\":\"0xd7e1f542005ee509739eab403d6cd74231adbee96c9f60a6b8ccb9a53fce766b\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}},"SupraValueFeedExample":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"string","name":"marketPair","type":"string"}],"name":"getPrice","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{"@_174":{"entryPoint":null,"id":174,"parameterSlots":0,"returnSlots":0}},"generatedSources":[],"linkReferences":{},"object":"608060405234801561001057600080fd5b50737f003178060af3904b8b70fea066aee28e85043e6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610470806100746000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063524f388914610030575b600080fd5b61004a600480360381019061004591906101f1565b610060565b6040516100579190610282565b60405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663abc4544e846040518263ffffffff1660e01b81526004016100bc919061029d565b604080518083038186803b1580156100d357600080fd5b505afa1580156100e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061010b91906101b1565b50905080915050919050565b600061012a610125846102e4565b6102bf565b905082815260208101848484011115610146576101456103ec565b5b610151848285610345565b509392505050565b6000815190506101688161040c565b92915050565b600082601f830112610183576101826103e7565b5b8135610193848260208601610117565b91505092915050565b6000815190506101ab81610423565b92915050565b600080604083850312156101c8576101c76103f6565b5b60006101d685828601610159565b92505060206101e78582860161019c565b9150509250929050565b600060208284031215610207576102066103f6565b5b600082013567ffffffffffffffff811115610225576102246103f1565b5b6102318482850161016e565b91505092915050565b61024381610331565b82525050565b600061025482610315565b61025e8185610320565b935061026e818560208601610354565b610277816103fb565b840191505092915050565b6000602082019050610297600083018461023a565b92915050565b600060208201905081810360008301526102b78184610249565b905092915050565b60006102c96102da565b90506102d58282610387565b919050565b6000604051905090565b600067ffffffffffffffff8211156102ff576102fe6103b8565b5b610308826103fb565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000819050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015610372578082015181840152602081019050610357565b83811115610381576000848401525b50505050565b610390826103fb565b810181811067ffffffffffffffff821117156103af576103ae6103b8565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b61041581610331565b811461042057600080fd5b50565b61042c8161033b565b811461043757600080fd5b5056fea264697066735822122070c3b8963bf4566ad29676f387dd51ce63b93d30c079aaf59610dc6934532f1464736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH20 0x7F003178060AF3904B8B70FEA066AEE28E85043E PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x470 DUP1 PUSH2 0x74 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x524F3889 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x1F1 JUMP JUMPDEST PUSH2 0x60 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x57 SWAP2 SWAP1 PUSH2 0x282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xABC4544E DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBC SWAP2 SWAP1 PUSH2 0x29D JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xD3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE7 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 0x10B SWAP2 SWAP1 PUSH2 0x1B1 JUMP JUMPDEST POP SWAP1 POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x12A PUSH2 0x125 DUP5 PUSH2 0x2E4 JUMP JUMPDEST PUSH2 0x2BF JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x146 JUMPI PUSH2 0x145 PUSH2 0x3EC JUMP JUMPDEST JUMPDEST PUSH2 0x151 DUP5 DUP3 DUP6 PUSH2 0x345 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x168 DUP2 PUSH2 0x40C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x183 JUMPI PUSH2 0x182 PUSH2 0x3E7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x193 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x117 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1AB DUP2 PUSH2 0x423 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C8 JUMPI PUSH2 0x1C7 PUSH2 0x3F6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1D6 DUP6 DUP3 DUP7 ADD PUSH2 0x159 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1E7 DUP6 DUP3 DUP7 ADD PUSH2 0x19C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x207 JUMPI PUSH2 0x206 PUSH2 0x3F6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x225 JUMPI PUSH2 0x224 PUSH2 0x3F1 JUMP JUMPDEST JUMPDEST PUSH2 0x231 DUP5 DUP3 DUP6 ADD PUSH2 0x16E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x243 DUP2 PUSH2 0x331 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x254 DUP3 PUSH2 0x315 JUMP JUMPDEST PUSH2 0x25E DUP2 DUP6 PUSH2 0x320 JUMP JUMPDEST SWAP4 POP PUSH2 0x26E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x354 JUMP JUMPDEST PUSH2 0x277 DUP2 PUSH2 0x3FB JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x297 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x23A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2B7 DUP2 DUP5 PUSH2 0x249 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C9 PUSH2 0x2DA JUMP JUMPDEST SWAP1 POP PUSH2 0x2D5 DUP3 DUP3 PUSH2 0x387 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 0x2FF JUMPI PUSH2 0x2FE PUSH2 0x3B8 JUMP JUMPDEST JUMPDEST PUSH2 0x308 DUP3 PUSH2 0x3FB 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 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 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 0x372 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x357 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x381 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x390 DUP3 PUSH2 0x3FB JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x3AF JUMPI PUSH2 0x3AE PUSH2 0x3B8 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x415 DUP2 PUSH2 0x331 JUMP JUMPDEST DUP2 EQ PUSH2 0x420 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x42C DUP2 PUSH2 0x33B JUMP JUMPDEST DUP2 EQ PUSH2 0x437 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH17 0xC3B8963BF4566AD29676F387DD51CE63B9 RETURNDATASIZE ADDRESS 0xC0 PUSH26 0xAAF59610DC6934532F1464736F6C634300080700330000000000 ","sourceMap":"210:373:3:-:0;;;290:104;;;;;;;;;;344:42;314:10;;:73;;;;;;;;;;;;;;;;;;210:373;;;;;;"},"deployedBytecode":{"functionDebugData":{"@getPrice_191":{"entryPoint":96,"id":191,"parameterSlots":1,"returnSlots":1},"abi_decode_available_length_t_string_memory_ptr":{"entryPoint":279,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_int256_fromMemory":{"entryPoint":345,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_string_memory_ptr":{"entryPoint":366,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256_fromMemory":{"entryPoint":412,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_int256t_uint256_fromMemory":{"entryPoint":433,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_tuple_t_string_memory_ptr":{"entryPoint":497,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_int256_to_t_int256_fromStack":{"entryPoint":570,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack":{"entryPoint":585,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed":{"entryPoint":642,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":669,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_memory":{"entryPoint":703,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":730,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_string_memory_ptr":{"entryPoint":740,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_string_memory_ptr":{"entryPoint":789,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":800,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_int256":{"entryPoint":817,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":827,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":837,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":852,"id":null,"parameterSlots":3,"returnSlots":0},"finalize_allocation":{"entryPoint":903,"id":null,"parameterSlots":2,"returnSlots":0},"panic_error_0x41":{"entryPoint":952,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":999,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":1004,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":1009,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":1014,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":1019,"id":null,"parameterSlots":1,"returnSlots":1},"validator_revert_t_int256":{"entryPoint":1036,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":1059,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:5913:46","statements":[{"body":{"nodeType":"YulBlock","src":"91:328:46","statements":[{"nodeType":"YulAssignment","src":"101:75:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"168:6:46"}],"functionName":{"name":"array_allocation_size_t_string_memory_ptr","nodeType":"YulIdentifier","src":"126:41:46"},"nodeType":"YulFunctionCall","src":"126:49:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"110:15:46"},"nodeType":"YulFunctionCall","src":"110:66:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"101:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"192:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"199:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"185:6:46"},"nodeType":"YulFunctionCall","src":"185:21:46"},"nodeType":"YulExpressionStatement","src":"185:21:46"},{"nodeType":"YulVariableDeclaration","src":"215:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"230:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"237:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"226:3:46"},"nodeType":"YulFunctionCall","src":"226:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"219:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"280:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"282:77:46"},"nodeType":"YulFunctionCall","src":"282:79:46"},"nodeType":"YulExpressionStatement","src":"282:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"261:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"266:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"257:3:46"},"nodeType":"YulFunctionCall","src":"257:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"275:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"254:2:46"},"nodeType":"YulFunctionCall","src":"254:25:46"},"nodeType":"YulIf","src":"251:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"396:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"401:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"406:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"372:23:46"},"nodeType":"YulFunctionCall","src":"372:41:46"},"nodeType":"YulExpressionStatement","src":"372:41:46"}]},"name":"abi_decode_available_length_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"64:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"69:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"77:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"85:5:46","type":""}],"src":"7:412:46"},{"body":{"nodeType":"YulBlock","src":"487:79:46","statements":[{"nodeType":"YulAssignment","src":"497:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"512:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"506:5:46"},"nodeType":"YulFunctionCall","src":"506:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"497:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"554:5:46"}],"functionName":{"name":"validator_revert_t_int256","nodeType":"YulIdentifier","src":"528:25:46"},"nodeType":"YulFunctionCall","src":"528:32:46"},"nodeType":"YulExpressionStatement","src":"528:32:46"}]},"name":"abi_decode_t_int256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"465:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"473:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"481:5:46","type":""}],"src":"425:141:46"},{"body":{"nodeType":"YulBlock","src":"648:278:46","statements":[{"body":{"nodeType":"YulBlock","src":"697:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"699:77:46"},"nodeType":"YulFunctionCall","src":"699:79:46"},"nodeType":"YulExpressionStatement","src":"699:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"676:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"684:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"672:3:46"},"nodeType":"YulFunctionCall","src":"672:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"691:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"668:3:46"},"nodeType":"YulFunctionCall","src":"668:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"661:6:46"},"nodeType":"YulFunctionCall","src":"661:35:46"},"nodeType":"YulIf","src":"658:122:46"},{"nodeType":"YulVariableDeclaration","src":"789:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"816:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"803:12:46"},"nodeType":"YulFunctionCall","src":"803:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"793:6:46","type":""}]},{"nodeType":"YulAssignment","src":"832:88:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"893:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"901:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"889:3:46"},"nodeType":"YulFunctionCall","src":"889:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"908:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"916:3:46"}],"functionName":{"name":"abi_decode_available_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"841:47:46"},"nodeType":"YulFunctionCall","src":"841:79:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"832:5:46"}]}]},"name":"abi_decode_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"626:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"634:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"642:5:46","type":""}],"src":"586:340:46"},{"body":{"nodeType":"YulBlock","src":"995:80:46","statements":[{"nodeType":"YulAssignment","src":"1005:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1020:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1014:5:46"},"nodeType":"YulFunctionCall","src":"1014:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1005:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1063:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"1036:26:46"},"nodeType":"YulFunctionCall","src":"1036:33:46"},"nodeType":"YulExpressionStatement","src":"1036:33:46"}]},"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"973:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"981:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"989:5:46","type":""}],"src":"932:143:46"},{"body":{"nodeType":"YulBlock","src":"1174:412:46","statements":[{"body":{"nodeType":"YulBlock","src":"1220:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1222:77:46"},"nodeType":"YulFunctionCall","src":"1222:79:46"},"nodeType":"YulExpressionStatement","src":"1222:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1195:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1204:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1191:3:46"},"nodeType":"YulFunctionCall","src":"1191:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1216:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1187:3:46"},"nodeType":"YulFunctionCall","src":"1187:32:46"},"nodeType":"YulIf","src":"1184:119:46"},{"nodeType":"YulBlock","src":"1313:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1328:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1342:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1332:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1357:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1402:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1413:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1398:3:46"},"nodeType":"YulFunctionCall","src":"1398:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1422:7:46"}],"functionName":{"name":"abi_decode_t_int256_fromMemory","nodeType":"YulIdentifier","src":"1367:30:46"},"nodeType":"YulFunctionCall","src":"1367:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1357:6:46"}]}]},{"nodeType":"YulBlock","src":"1450:129:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1465:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1479:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1469:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1495:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1541:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1552:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1537:3:46"},"nodeType":"YulFunctionCall","src":"1537:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1561:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"1505:31:46"},"nodeType":"YulFunctionCall","src":"1505:64:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"1495:6:46"}]}]}]},"name":"abi_decode_tuple_t_int256t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1136:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1147:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1159:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"1167:6:46","type":""}],"src":"1081:505:46"},{"body":{"nodeType":"YulBlock","src":"1668:433:46","statements":[{"body":{"nodeType":"YulBlock","src":"1714:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1716:77:46"},"nodeType":"YulFunctionCall","src":"1716:79:46"},"nodeType":"YulExpressionStatement","src":"1716:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1689:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1698:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1685:3:46"},"nodeType":"YulFunctionCall","src":"1685:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1710:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1681:3:46"},"nodeType":"YulFunctionCall","src":"1681:32:46"},"nodeType":"YulIf","src":"1678:119:46"},{"nodeType":"YulBlock","src":"1807:287:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1822:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1853:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1864:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1849:3:46"},"nodeType":"YulFunctionCall","src":"1849:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1836:12:46"},"nodeType":"YulFunctionCall","src":"1836:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1826:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1914:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"1916:77:46"},"nodeType":"YulFunctionCall","src":"1916:79:46"},"nodeType":"YulExpressionStatement","src":"1916:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1886:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1894:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1883:2:46"},"nodeType":"YulFunctionCall","src":"1883:30:46"},"nodeType":"YulIf","src":"1880:117:46"},{"nodeType":"YulAssignment","src":"2011:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2056:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2067:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2052:3:46"},"nodeType":"YulFunctionCall","src":"2052:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2076:7:46"}],"functionName":{"name":"abi_decode_t_string_memory_ptr","nodeType":"YulIdentifier","src":"2021:30:46"},"nodeType":"YulFunctionCall","src":"2021:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2011:6:46"}]}]}]},"name":"abi_decode_tuple_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1638:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1649:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1661:6:46","type":""}],"src":"1592:509:46"},{"body":{"nodeType":"YulBlock","src":"2170:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2187:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2209:5:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"2192:16:46"},"nodeType":"YulFunctionCall","src":"2192:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2180:6:46"},"nodeType":"YulFunctionCall","src":"2180:36:46"},"nodeType":"YulExpressionStatement","src":"2180:36:46"}]},"name":"abi_encode_t_int256_to_t_int256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2158:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2165:3:46","type":""}],"src":"2107:115:46"},{"body":{"nodeType":"YulBlock","src":"2320:272:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2330:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2377:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"2344:32:46"},"nodeType":"YulFunctionCall","src":"2344:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2334:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2392:78:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2458:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2463:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2399:58:46"},"nodeType":"YulFunctionCall","src":"2399:71:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2392:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2505:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2512:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2501:3:46"},"nodeType":"YulFunctionCall","src":"2501:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"2519:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2524:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"2479:21:46"},"nodeType":"YulFunctionCall","src":"2479:52:46"},"nodeType":"YulExpressionStatement","src":"2479:52:46"},{"nodeType":"YulAssignment","src":"2540:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2551:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2578:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"2556:21:46"},"nodeType":"YulFunctionCall","src":"2556:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2547:3:46"},"nodeType":"YulFunctionCall","src":"2547:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2540:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2301:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2308:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2316:3:46","type":""}],"src":"2228:364:46"},{"body":{"nodeType":"YulBlock","src":"2694:122:46","statements":[{"nodeType":"YulAssignment","src":"2704:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2716:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2727:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2712:3:46"},"nodeType":"YulFunctionCall","src":"2712:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2704:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"2782:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2795:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2806:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2791:3:46"},"nodeType":"YulFunctionCall","src":"2791:17:46"}],"functionName":{"name":"abi_encode_t_int256_to_t_int256_fromStack","nodeType":"YulIdentifier","src":"2740:41:46"},"nodeType":"YulFunctionCall","src":"2740:69:46"},"nodeType":"YulExpressionStatement","src":"2740:69:46"}]},"name":"abi_encode_tuple_t_int256__to_t_int256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2666:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2678:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2689:4:46","type":""}],"src":"2598:218:46"},{"body":{"nodeType":"YulBlock","src":"2940:195:46","statements":[{"nodeType":"YulAssignment","src":"2950:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2962:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2973:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2958:3:46"},"nodeType":"YulFunctionCall","src":"2958:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"2950:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2997:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3008:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2993:3:46"},"nodeType":"YulFunctionCall","src":"2993:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"3016:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3022:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3012:3:46"},"nodeType":"YulFunctionCall","src":"3012:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2986:6:46"},"nodeType":"YulFunctionCall","src":"2986:47:46"},"nodeType":"YulExpressionStatement","src":"2986:47:46"},{"nodeType":"YulAssignment","src":"3042:86:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3114:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"3123:4:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"3050:63:46"},"nodeType":"YulFunctionCall","src":"3050:78:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3042:4:46"}]}]},"name":"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2912:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"2924:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"2935:4:46","type":""}],"src":"2822:313:46"},{"body":{"nodeType":"YulBlock","src":"3182:88:46","statements":[{"nodeType":"YulAssignment","src":"3192:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"3202:18:46"},"nodeType":"YulFunctionCall","src":"3202:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"3192:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"3251:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"3259:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"3231:19:46"},"nodeType":"YulFunctionCall","src":"3231:33:46"},"nodeType":"YulExpressionStatement","src":"3231:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"3166:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"3175:6:46","type":""}],"src":"3141:129:46"},{"body":{"nodeType":"YulBlock","src":"3316:35:46","statements":[{"nodeType":"YulAssignment","src":"3326:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3342:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"3336:5:46"},"nodeType":"YulFunctionCall","src":"3336:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"3326:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"3309:6:46","type":""}],"src":"3276:75:46"},{"body":{"nodeType":"YulBlock","src":"3424:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"3529:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"3531:16:46"},"nodeType":"YulFunctionCall","src":"3531:18:46"},"nodeType":"YulExpressionStatement","src":"3531:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3501:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"3509:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3498:2:46"},"nodeType":"YulFunctionCall","src":"3498:30:46"},"nodeType":"YulIf","src":"3495:56:46"},{"nodeType":"YulAssignment","src":"3561:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3591:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"3569:21:46"},"nodeType":"YulFunctionCall","src":"3569:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"3561:4:46"}]},{"nodeType":"YulAssignment","src":"3635:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"3647:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"3653:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3643:3:46"},"nodeType":"YulFunctionCall","src":"3643:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"3635:4:46"}]}]},"name":"array_allocation_size_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"3408:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"3419:4:46","type":""}],"src":"3357:308:46"},{"body":{"nodeType":"YulBlock","src":"3730:40:46","statements":[{"nodeType":"YulAssignment","src":"3741:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3757:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"3751:5:46"},"nodeType":"YulFunctionCall","src":"3751:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"3741:6:46"}]}]},"name":"array_length_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3713:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"3723:6:46","type":""}],"src":"3671:99:46"},{"body":{"nodeType":"YulBlock","src":"3872:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3889:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3894:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3882:6:46"},"nodeType":"YulFunctionCall","src":"3882:19:46"},"nodeType":"YulExpressionStatement","src":"3882:19:46"},{"nodeType":"YulAssignment","src":"3910:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3929:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3934:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3925:3:46"},"nodeType":"YulFunctionCall","src":"3925:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"3910:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3844:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"3849:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"3860:11:46","type":""}],"src":"3776:169:46"},{"body":{"nodeType":"YulBlock","src":"3995:32:46","statements":[{"nodeType":"YulAssignment","src":"4005:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"4016:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"4005:7:46"}]}]},"name":"cleanup_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3977:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"3987:7:46","type":""}],"src":"3951:76:46"},{"body":{"nodeType":"YulBlock","src":"4078:32:46","statements":[{"nodeType":"YulAssignment","src":"4088:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"4099:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"4088:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4060:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"4070:7:46","type":""}],"src":"4033:77:46"},{"body":{"nodeType":"YulBlock","src":"4167:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"4190:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"4195:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4200:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"4177:12:46"},"nodeType":"YulFunctionCall","src":"4177:30:46"},"nodeType":"YulExpressionStatement","src":"4177:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"4248:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4253:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4244:3:46"},"nodeType":"YulFunctionCall","src":"4244:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"4262:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4237:6:46"},"nodeType":"YulFunctionCall","src":"4237:27:46"},"nodeType":"YulExpressionStatement","src":"4237:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"4149:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"4154:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"4159:6:46","type":""}],"src":"4116:154:46"},{"body":{"nodeType":"YulBlock","src":"4325:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4335:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4344:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"4339:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4404:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"4429:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"4434:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4425:3:46"},"nodeType":"YulFunctionCall","src":"4425:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4448:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"4453:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4444:3:46"},"nodeType":"YulFunctionCall","src":"4444:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4438:5:46"},"nodeType":"YulFunctionCall","src":"4438:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4418:6:46"},"nodeType":"YulFunctionCall","src":"4418:39:46"},"nodeType":"YulExpressionStatement","src":"4418:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"4365:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"4368:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"4362:2:46"},"nodeType":"YulFunctionCall","src":"4362:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"4376:19:46","statements":[{"nodeType":"YulAssignment","src":"4378:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"4387:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"4390:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4383:3:46"},"nodeType":"YulFunctionCall","src":"4383:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"4378:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"4358:3:46","statements":[]},"src":"4354:113:46"},{"body":{"nodeType":"YulBlock","src":"4501:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"4551:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4556:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4547:3:46"},"nodeType":"YulFunctionCall","src":"4547:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"4565:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4540:6:46"},"nodeType":"YulFunctionCall","src":"4540:27:46"},"nodeType":"YulExpressionStatement","src":"4540:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"4482:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"4485:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4479:2:46"},"nodeType":"YulFunctionCall","src":"4479:13:46"},"nodeType":"YulIf","src":"4476:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"4307:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"4312:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"4317:6:46","type":""}],"src":"4276:307:46"},{"body":{"nodeType":"YulBlock","src":"4632:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4642:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4664:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"4694:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"4672:21:46"},"nodeType":"YulFunctionCall","src":"4672:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4660:3:46"},"nodeType":"YulFunctionCall","src":"4660:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"4646:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4811:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"4813:16:46"},"nodeType":"YulFunctionCall","src":"4813:18:46"},"nodeType":"YulExpressionStatement","src":"4813:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"4754:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"4766:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4751:2:46"},"nodeType":"YulFunctionCall","src":"4751:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"4790:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"4802:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"4787:2:46"},"nodeType":"YulFunctionCall","src":"4787:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"4748:2:46"},"nodeType":"YulFunctionCall","src":"4748:62:46"},"nodeType":"YulIf","src":"4745:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4849:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"4853:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4842:6:46"},"nodeType":"YulFunctionCall","src":"4842:22:46"},"nodeType":"YulExpressionStatement","src":"4842:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"4618:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"4626:4:46","type":""}],"src":"4589:281:46"},{"body":{"nodeType":"YulBlock","src":"4904:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4921:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"4924:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4914:6:46"},"nodeType":"YulFunctionCall","src":"4914:88:46"},"nodeType":"YulExpressionStatement","src":"4914:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5018:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"5021:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5011:6:46"},"nodeType":"YulFunctionCall","src":"5011:15:46"},"nodeType":"YulExpressionStatement","src":"5011:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5042:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5045:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5035:6:46"},"nodeType":"YulFunctionCall","src":"5035:15:46"},"nodeType":"YulExpressionStatement","src":"5035:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"4876:180:46"},{"body":{"nodeType":"YulBlock","src":"5151:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5168:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5171:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5161:6:46"},"nodeType":"YulFunctionCall","src":"5161:12:46"},"nodeType":"YulExpressionStatement","src":"5161:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"5062:117:46"},{"body":{"nodeType":"YulBlock","src":"5274:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5291:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5294:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5284:6:46"},"nodeType":"YulFunctionCall","src":"5284:12:46"},"nodeType":"YulExpressionStatement","src":"5284:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"5185:117:46"},{"body":{"nodeType":"YulBlock","src":"5397:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5414:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5417:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5407:6:46"},"nodeType":"YulFunctionCall","src":"5407:12:46"},"nodeType":"YulExpressionStatement","src":"5407:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"5308:117:46"},{"body":{"nodeType":"YulBlock","src":"5520:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5537:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5540:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5530:6:46"},"nodeType":"YulFunctionCall","src":"5530:12:46"},"nodeType":"YulExpressionStatement","src":"5530:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"5431:117:46"},{"body":{"nodeType":"YulBlock","src":"5602:54:46","statements":[{"nodeType":"YulAssignment","src":"5612:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5630:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"5637:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5626:3:46"},"nodeType":"YulFunctionCall","src":"5626:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5646:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"5642:3:46"},"nodeType":"YulFunctionCall","src":"5642:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"5622:3:46"},"nodeType":"YulFunctionCall","src":"5622:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"5612:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5585:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"5595:6:46","type":""}],"src":"5554:102:46"},{"body":{"nodeType":"YulBlock","src":"5704:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"5760:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5769:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5772:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5762:6:46"},"nodeType":"YulFunctionCall","src":"5762:12:46"},"nodeType":"YulExpressionStatement","src":"5762:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5727:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5751:5:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"5734:16:46"},"nodeType":"YulFunctionCall","src":"5734:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"5724:2:46"},"nodeType":"YulFunctionCall","src":"5724:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"5717:6:46"},"nodeType":"YulFunctionCall","src":"5717:42:46"},"nodeType":"YulIf","src":"5714:62:46"}]},"name":"validator_revert_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5697:5:46","type":""}],"src":"5662:120:46"},{"body":{"nodeType":"YulBlock","src":"5831:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"5888:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5897:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"5900:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"5890:6:46"},"nodeType":"YulFunctionCall","src":"5890:12:46"},"nodeType":"YulExpressionStatement","src":"5890:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5854:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5879:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"5861:17:46"},"nodeType":"YulFunctionCall","src":"5861:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"5851:2:46"},"nodeType":"YulFunctionCall","src":"5851:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"5844:6:46"},"nodeType":"YulFunctionCall","src":"5844:43:46"},"nodeType":"YulIf","src":"5841:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5824:5:46","type":""}],"src":"5788:122:46"}]},"contents":"{\n\n    function abi_decode_available_length_t_string_memory_ptr(src, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n        mstore(array, length)\n        let dst := add(array, 0x20)\n        if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\n    }\n\n    function abi_decode_t_int256_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_int256(value)\n    }\n\n    // string\n    function abi_decode_t_string_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\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_int256t_uint256_fromMemory(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_int256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_string_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_int256_to_t_int256_fromStack(value, pos) {\n        mstore(pos, cleanup_t_int256(value))\n    }\n\n    function abi_encode_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_tuple_t_int256__to_t_int256__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int256_to_t_int256_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function 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 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_string_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_string_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function cleanup_t_int256(value) -> cleaned {\n        cleaned := value\n    }\n\n    function cleanup_t_uint256(value) -> cleaned {\n        cleaned := value\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 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 panic_error_0x41() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x41)\n        revert(0, 0x24)\n    }\n\n    function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function validator_revert_t_int256(value) {\n        if iszero(eq(value, cleanup_t_int256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"608060405234801561001057600080fd5b506004361061002b5760003560e01c8063524f388914610030575b600080fd5b61004a600480360381019061004591906101f1565b610060565b6040516100579190610282565b60405180910390f35b60008060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663abc4544e846040518263ffffffff1660e01b81526004016100bc919061029d565b604080518083038186803b1580156100d357600080fd5b505afa1580156100e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061010b91906101b1565b50905080915050919050565b600061012a610125846102e4565b6102bf565b905082815260208101848484011115610146576101456103ec565b5b610151848285610345565b509392505050565b6000815190506101688161040c565b92915050565b600082601f830112610183576101826103e7565b5b8135610193848260208601610117565b91505092915050565b6000815190506101ab81610423565b92915050565b600080604083850312156101c8576101c76103f6565b5b60006101d685828601610159565b92505060206101e78582860161019c565b9150509250929050565b600060208284031215610207576102066103f6565b5b600082013567ffffffffffffffff811115610225576102246103f1565b5b6102318482850161016e565b91505092915050565b61024381610331565b82525050565b600061025482610315565b61025e8185610320565b935061026e818560208601610354565b610277816103fb565b840191505092915050565b6000602082019050610297600083018461023a565b92915050565b600060208201905081810360008301526102b78184610249565b905092915050565b60006102c96102da565b90506102d58282610387565b919050565b6000604051905090565b600067ffffffffffffffff8211156102ff576102fe6103b8565b5b610308826103fb565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b6000819050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015610372578082015181840152602081019050610357565b83811115610381576000848401525b50505050565b610390826103fb565b810181811067ffffffffffffffff821117156103af576103ae6103b8565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b61041581610331565b811461042057600080fd5b50565b61042c8161033b565b811461043757600080fd5b5056fea264697066735822122070c3b8963bf4566ad29676f387dd51ce63b93d30c079aaf59610dc6934532f1464736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x524F3889 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x1F1 JUMP JUMPDEST PUSH2 0x60 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x57 SWAP2 SWAP1 PUSH2 0x282 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xABC4544E DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xBC SWAP2 SWAP1 PUSH2 0x29D JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xD3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE7 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 0x10B SWAP2 SWAP1 PUSH2 0x1B1 JUMP JUMPDEST POP SWAP1 POP DUP1 SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x12A PUSH2 0x125 DUP5 PUSH2 0x2E4 JUMP JUMPDEST PUSH2 0x2BF JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x146 JUMPI PUSH2 0x145 PUSH2 0x3EC JUMP JUMPDEST JUMPDEST PUSH2 0x151 DUP5 DUP3 DUP6 PUSH2 0x345 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x168 DUP2 PUSH2 0x40C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x183 JUMPI PUSH2 0x182 PUSH2 0x3E7 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x193 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x117 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1AB DUP2 PUSH2 0x423 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C8 JUMPI PUSH2 0x1C7 PUSH2 0x3F6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1D6 DUP6 DUP3 DUP7 ADD PUSH2 0x159 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1E7 DUP6 DUP3 DUP7 ADD PUSH2 0x19C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x207 JUMPI PUSH2 0x206 PUSH2 0x3F6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x225 JUMPI PUSH2 0x224 PUSH2 0x3F1 JUMP JUMPDEST JUMPDEST PUSH2 0x231 DUP5 DUP3 DUP6 ADD PUSH2 0x16E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x243 DUP2 PUSH2 0x331 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x254 DUP3 PUSH2 0x315 JUMP JUMPDEST PUSH2 0x25E DUP2 DUP6 PUSH2 0x320 JUMP JUMPDEST SWAP4 POP PUSH2 0x26E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x354 JUMP JUMPDEST PUSH2 0x277 DUP2 PUSH2 0x3FB JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x297 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x23A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2B7 DUP2 DUP5 PUSH2 0x249 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C9 PUSH2 0x2DA JUMP JUMPDEST SWAP1 POP PUSH2 0x2D5 DUP3 DUP3 PUSH2 0x387 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 0x2FF JUMPI PUSH2 0x2FE PUSH2 0x3B8 JUMP JUMPDEST JUMPDEST PUSH2 0x308 DUP3 PUSH2 0x3FB 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 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 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 0x372 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x357 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x381 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x390 DUP3 PUSH2 0x3FB JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x3AF JUMPI PUSH2 0x3AE PUSH2 0x3B8 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x415 DUP2 PUSH2 0x331 JUMP JUMPDEST DUP2 EQ PUSH2 0x420 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x42C DUP2 PUSH2 0x33B JUMP JUMPDEST DUP2 EQ PUSH2 0x437 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH17 0xC3B8963BF4566AD29676F387DD51CE63B9 RETURNDATASIZE ADDRESS 0xC0 PUSH26 0xAAF59610DC6934532F1464736F6C634300080700330000000000 ","sourceMap":"210:373:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;400:181;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;467:3;483:9;519:10;;;;;;;;;;:21;;;541:10;519:33;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;482:70;;;569:5;562:12;;;400:181;;;:::o;7:412:46:-;85:5;110:66;126:49;168:6;126:49;:::i;:::-;110:66;:::i;:::-;101:75;;199:6;192:5;185:21;237:4;230:5;226:16;275:3;266:6;261:3;257:16;254:25;251:112;;;282:79;;:::i;:::-;251:112;372:41;406:6;401:3;396;372:41;:::i;:::-;91:328;7:412;;;;;:::o;425:141::-;481:5;512:6;506:13;497:22;;528:32;554:5;528:32;:::i;:::-;425:141;;;;:::o;586:340::-;642:5;691:3;684:4;676:6;672:17;668:27;658:122;;699:79;;:::i;:::-;658:122;816:6;803:20;841:79;916:3;908:6;901:4;893:6;889:17;841:79;:::i;:::-;832:88;;648:278;586:340;;;;:::o;932:143::-;989:5;1020:6;1014:13;1005:22;;1036:33;1063:5;1036:33;:::i;:::-;932:143;;;;:::o;1081:505::-;1159:6;1167;1216:2;1204:9;1195:7;1191:23;1187:32;1184:119;;;1222:79;;:::i;:::-;1184:119;1342:1;1367:63;1422:7;1413:6;1402:9;1398:22;1367:63;:::i;:::-;1357:73;;1313:127;1479:2;1505:64;1561:7;1552:6;1541:9;1537:22;1505:64;:::i;:::-;1495:74;;1450:129;1081:505;;;;;:::o;1592:509::-;1661:6;1710:2;1698:9;1689:7;1685:23;1681:32;1678:119;;;1716:79;;:::i;:::-;1678:119;1864:1;1853:9;1849:17;1836:31;1894:18;1886:6;1883:30;1880:117;;;1916:79;;:::i;:::-;1880:117;2021:63;2076:7;2067:6;2056:9;2052:22;2021:63;:::i;:::-;2011:73;;1807:287;1592:509;;;;:::o;2107:115::-;2192:23;2209:5;2192:23;:::i;:::-;2187:3;2180:36;2107:115;;:::o;2228:364::-;2316:3;2344:39;2377:5;2344:39;:::i;:::-;2399:71;2463:6;2458:3;2399:71;:::i;:::-;2392:78;;2479:52;2524:6;2519:3;2512:4;2505:5;2501:16;2479:52;:::i;:::-;2556:29;2578:6;2556:29;:::i;:::-;2551:3;2547:39;2540:46;;2320:272;2228:364;;;;:::o;2598:218::-;2689:4;2727:2;2716:9;2712:18;2704:26;;2740:69;2806:1;2795:9;2791:17;2782:6;2740:69;:::i;:::-;2598:218;;;;:::o;2822:313::-;2935:4;2973:2;2962:9;2958:18;2950:26;;3022:9;3016:4;3012:20;3008:1;2997:9;2993:17;2986:47;3050:78;3123:4;3114:6;3050:78;:::i;:::-;3042:86;;2822:313;;;;:::o;3141:129::-;3175:6;3202:20;;:::i;:::-;3192:30;;3231:33;3259:4;3251:6;3231:33;:::i;:::-;3141:129;;;:::o;3276:75::-;3309:6;3342:2;3336:9;3326:19;;3276:75;:::o;3357:308::-;3419:4;3509:18;3501:6;3498:30;3495:56;;;3531:18;;:::i;:::-;3495:56;3569:29;3591:6;3569:29;:::i;:::-;3561:37;;3653:4;3647;3643:15;3635:23;;3357:308;;;:::o;3671:99::-;3723:6;3757:5;3751:12;3741:22;;3671:99;;;:::o;3776:169::-;3860:11;3894:6;3889:3;3882:19;3934:4;3929:3;3925:14;3910:29;;3776:169;;;;:::o;3951:76::-;3987:7;4016:5;4005:16;;3951:76;;;:::o;4033:77::-;4070:7;4099:5;4088:16;;4033:77;;;:::o;4116:154::-;4200:6;4195:3;4190;4177:30;4262:1;4253:6;4248:3;4244:16;4237:27;4116:154;;;:::o;4276:307::-;4344:1;4354:113;4368:6;4365:1;4362:13;4354:113;;;4453:1;4448:3;4444:11;4438:18;4434:1;4429:3;4425:11;4418:39;4390:2;4387:1;4383:10;4378:15;;4354:113;;;4485:6;4482:1;4479:13;4476:101;;;4565:1;4556:6;4551:3;4547:16;4540:27;4476:101;4325:258;4276:307;;;:::o;4589:281::-;4672:27;4694:4;4672:27;:::i;:::-;4664:6;4660:40;4802:6;4790:10;4787:22;4766:18;4754:10;4751:34;4748:62;4745:88;;;4813:18;;:::i;:::-;4745:88;4853:10;4849:2;4842:22;4632:238;4589:281;;:::o;4876:180::-;4924:77;4921:1;4914:88;5021:4;5018:1;5011:15;5045:4;5042:1;5035:15;5062:117;5171:1;5168;5161:12;5185:117;5294:1;5291;5284:12;5308:117;5417:1;5414;5407:12;5431:117;5540:1;5537;5530:12;5554:102;5595:6;5646:2;5642:7;5637:2;5630:5;5626:14;5622:28;5612:38;;5554:102;;;:::o;5662:120::-;5734:23;5751:5;5734:23;:::i;:::-;5727:5;5724:34;5714:62;;5772:1;5769;5762:12;5714:62;5662:120;:::o;5788:122::-;5861:24;5879:5;5861:24;:::i;:::-;5854:5;5851:35;5841:63;;5900:1;5897;5890:12;5841:63;5788:122;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"227200","executionCost":"24536","totalCost":"251736"},"external":{"getPrice(string)":"infinite"}},"methodIdentifiers":{"getPrice(string)":"524f3889"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"marketPair\",\"type\":\"string\"}],\"name\":\"getPrice\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/supra-oracles/SupraValueFeedExample.sol\":\"SupraValueFeedExample\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/supra-oracles/SupraValueFeedExample.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity ^0.8.7;\\n\\ninterface ISupraSValueFeed {\\n    function checkPrice(\\n        string memory marketPair\\n    ) external view returns (int256 price, uint256 timestamp);\\n}\\n\\ncontract SupraValueFeedExample {\\n    ISupraSValueFeed internal sValueFeed;\\n\\n    constructor() {\\n        sValueFeed = ISupraSValueFeed(0x7f003178060af3904b8b70fEa066AEE28e85043E);\\n    }\\n\\n    function getPrice(string memory marketPair) external view returns (int) {\\n        (int price /* uint timestamp */, ) = sValueFeed.checkPrice(marketPair);\\n        return price;\\n    }\\n}\\n\",\"keccak256\":\"0xd7e1f542005ee509739eab403d6cd74231adbee96c9f60a6b8ccb9a53fce766b\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":164,"contract":"contracts/supra-oracles/SupraValueFeedExample.sol:SupraValueFeedExample","label":"sValueFeed","offset":0,"slot":"0","type":"t_contract(ISupraSValueFeed)161"}],"types":{"t_contract(ISupraSValueFeed)161":{"encoding":"inplace","label":"contract ISupraSValueFeed","numberOfBytes":"20"}}},"userdoc":{"kind":"user","methods":{},"version":1}}},"contracts/test/MockWitnetRouter.sol":{"MockWitnetRouter":{"abi":[{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"}],"name":"valueFor","outputs":[{"internalType":"int256","name":"","type":"int256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"608060405234801561001057600080fd5b50610180806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f78eea8314610030575b600080fd5b61004a6004803603810190610045919061008e565b610062565b604051610059939291906100d9565b60405180910390f35b6000806000600a80600a9250925092509193909250565b60008135905061008881610133565b92915050565b6000602082840312156100a4576100a361012e565b5b60006100b284828501610079565b91505092915050565b6100c48161011a565b82525050565b6100d381610124565b82525050565b60006060820190506100ee60008301866100bb565b6100fb60208301856100ca565b61010860408301846100ca565b949350505050565b6000819050919050565b6000819050919050565b6000819050919050565b600080fd5b61013c81610110565b811461014757600080fd5b5056fea2646970667358221220cdeb165c8c186cc522bd7743426ea6ac7bd781e52f6590722e0ee195d94d25b864736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x180 DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xF78EEA83 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x8E JUMP JUMPDEST PUSH2 0x62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x59 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0xD9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA DUP1 PUSH1 0xA SWAP3 POP SWAP3 POP SWAP3 POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x88 DUP2 PUSH2 0x133 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xA4 JUMPI PUSH2 0xA3 PUSH2 0x12E JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xB2 DUP5 DUP3 DUP6 ADD PUSH2 0x79 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xC4 DUP2 PUSH2 0x11A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0xD3 DUP2 PUSH2 0x124 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0xEE PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0xBB JUMP JUMPDEST PUSH2 0xFB PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0xCA JUMP JUMPDEST PUSH2 0x108 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0xCA JUMP JUMPDEST SWAP5 SWAP4 POP 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 PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x13C DUP2 PUSH2 0x110 JUMP JUMPDEST DUP2 EQ PUSH2 0x147 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xCD 0xEB AND 0x5C DUP13 XOR PUSH13 0xC522BD7743426EA6AC7BD781E5 0x2F PUSH6 0x90722E0EE195 0xD9 0x4D 0x25 0xB8 PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"64:146:5:-:0;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@valueFor_214":{"entryPoint":98,"id":214,"parameterSlots":1,"returnSlots":3},"abi_decode_t_bytes32":{"entryPoint":121,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32":{"entryPoint":142,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_int256_to_t_int256_fromStack":{"entryPoint":187,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":202,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_t_int256_t_uint256_t_uint256__to_t_int256_t_uint256_t_uint256__fromStack_reversed":{"entryPoint":217,"id":null,"parameterSlots":4,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":272,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int256":{"entryPoint":282,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":292,"id":null,"parameterSlots":1,"returnSlots":1},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":302,"id":null,"parameterSlots":0,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":307,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:1876:46","statements":[{"body":{"nodeType":"YulBlock","src":"59:87:46","statements":[{"nodeType":"YulAssignment","src":"69:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"91:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"78:12:46"},"nodeType":"YulFunctionCall","src":"78:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"69:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"134:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"107:26:46"},"nodeType":"YulFunctionCall","src":"107:33:46"},"nodeType":"YulExpressionStatement","src":"107:33:46"}]},"name":"abi_decode_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"37:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"45:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"53:5:46","type":""}],"src":"7:139:46"},{"body":{"nodeType":"YulBlock","src":"218:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"264:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"266:77:46"},"nodeType":"YulFunctionCall","src":"266:79:46"},"nodeType":"YulExpressionStatement","src":"266:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"239:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"248:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"235:3:46"},"nodeType":"YulFunctionCall","src":"235:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"260:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"231:3:46"},"nodeType":"YulFunctionCall","src":"231:32:46"},"nodeType":"YulIf","src":"228:119:46"},{"nodeType":"YulBlock","src":"357:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"372:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"386:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"376:6:46","type":""}]},{"nodeType":"YulAssignment","src":"401:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"436:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"447:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"432:3:46"},"nodeType":"YulFunctionCall","src":"432:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"456:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"411:20:46"},"nodeType":"YulFunctionCall","src":"411:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"401:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"188:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"199:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"211:6:46","type":""}],"src":"152:329:46"},{"body":{"nodeType":"YulBlock","src":"550:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"567:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"589:5:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"572:16:46"},"nodeType":"YulFunctionCall","src":"572:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"560:6:46"},"nodeType":"YulFunctionCall","src":"560:36:46"},"nodeType":"YulExpressionStatement","src":"560:36:46"}]},"name":"abi_encode_t_int256_to_t_int256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"538:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"545:3:46","type":""}],"src":"487:115:46"},{"body":{"nodeType":"YulBlock","src":"673:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"690:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"713:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"695:17:46"},"nodeType":"YulFunctionCall","src":"695:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"683:6:46"},"nodeType":"YulFunctionCall","src":"683:37:46"},"nodeType":"YulExpressionStatement","src":"683:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"661:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"668:3:46","type":""}],"src":"608:118:46"},{"body":{"nodeType":"YulBlock","src":"884:286:46","statements":[{"nodeType":"YulAssignment","src":"894:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"906:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"917:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"902:3:46"},"nodeType":"YulFunctionCall","src":"902:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"894:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"972:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"985:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"996:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"981:3:46"},"nodeType":"YulFunctionCall","src":"981:17:46"}],"functionName":{"name":"abi_encode_t_int256_to_t_int256_fromStack","nodeType":"YulIdentifier","src":"930:41:46"},"nodeType":"YulFunctionCall","src":"930:69:46"},"nodeType":"YulExpressionStatement","src":"930:69:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"1053:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1066:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1077:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1062:3:46"},"nodeType":"YulFunctionCall","src":"1062:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"1009:43:46"},"nodeType":"YulFunctionCall","src":"1009:72:46"},"nodeType":"YulExpressionStatement","src":"1009:72:46"},{"expression":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"1135:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1148:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1159:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1144:3:46"},"nodeType":"YulFunctionCall","src":"1144:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"1091:43:46"},"nodeType":"YulFunctionCall","src":"1091:72:46"},"nodeType":"YulExpressionStatement","src":"1091:72:46"}]},"name":"abi_encode_tuple_t_int256_t_uint256_t_uint256__to_t_int256_t_uint256_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"840:9:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"852:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"860:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"868:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"879:4:46","type":""}],"src":"732:438:46"},{"body":{"nodeType":"YulBlock","src":"1216:35:46","statements":[{"nodeType":"YulAssignment","src":"1226:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1242:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1236:5:46"},"nodeType":"YulFunctionCall","src":"1236:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"1226:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"1209:6:46","type":""}],"src":"1176:75:46"},{"body":{"nodeType":"YulBlock","src":"1302:32:46","statements":[{"nodeType":"YulAssignment","src":"1312:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"1323:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"1312:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1284:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"1294:7:46","type":""}],"src":"1257:77:46"},{"body":{"nodeType":"YulBlock","src":"1384:32:46","statements":[{"nodeType":"YulAssignment","src":"1394:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"1405:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"1394:7:46"}]}]},"name":"cleanup_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1366:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"1376:7:46","type":""}],"src":"1340:76:46"},{"body":{"nodeType":"YulBlock","src":"1467:32:46","statements":[{"nodeType":"YulAssignment","src":"1477:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"1488:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"1477:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1449:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"1459:7:46","type":""}],"src":"1422:77:46"},{"body":{"nodeType":"YulBlock","src":"1594:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1611:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1614:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1604:6:46"},"nodeType":"YulFunctionCall","src":"1604:12:46"},"nodeType":"YulExpressionStatement","src":"1604:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"1505:117:46"},{"body":{"nodeType":"YulBlock","src":"1717:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1734:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1737:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1727:6:46"},"nodeType":"YulFunctionCall","src":"1727:12:46"},"nodeType":"YulExpressionStatement","src":"1727:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"1628:117:46"},{"body":{"nodeType":"YulBlock","src":"1794:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"1851:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1860:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1863:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1853:6:46"},"nodeType":"YulFunctionCall","src":"1853:12:46"},"nodeType":"YulExpressionStatement","src":"1853:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1817:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1842:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"1824:17:46"},"nodeType":"YulFunctionCall","src":"1824:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1814:2:46"},"nodeType":"YulFunctionCall","src":"1814:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1807:6:46"},"nodeType":"YulFunctionCall","src":"1807:43:46"},"nodeType":"YulIf","src":"1804:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1787:5:46","type":""}],"src":"1751:122:46"}]},"contents":"{\n\n    function abi_decode_t_bytes32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_int256_to_t_int256_fromStack(value, pos) {\n        mstore(pos, cleanup_t_int256(value))\n    }\n\n    function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint256(value))\n    }\n\n    function abi_encode_tuple_t_int256_t_uint256_t_uint256__to_t_int256_t_uint256_t_uint256__fromStack_reversed(headStart , value2, value1, value0) -> tail {\n        tail := add(headStart, 96)\n\n        abi_encode_t_int256_to_t_int256_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    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\n    }\n\n    function cleanup_t_bytes32(value) -> cleaned {\n        cleaned := value\n    }\n\n    function cleanup_t_int256(value) -> cleaned {\n        cleaned := value\n    }\n\n    function cleanup_t_uint256(value) -> cleaned {\n        cleaned := value\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function validator_revert_t_bytes32(value) {\n        if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"608060405234801561001057600080fd5b506004361061002b5760003560e01c8063f78eea8314610030575b600080fd5b61004a6004803603810190610045919061008e565b610062565b604051610059939291906100d9565b60405180910390f35b6000806000600a80600a9250925092509193909250565b60008135905061008881610133565b92915050565b6000602082840312156100a4576100a361012e565b5b60006100b284828501610079565b91505092915050565b6100c48161011a565b82525050565b6100d381610124565b82525050565b60006060820190506100ee60008301866100bb565b6100fb60208301856100ca565b61010860408301846100ca565b949350505050565b6000819050919050565b6000819050919050565b6000819050919050565b600080fd5b61013c81610110565b811461014757600080fd5b5056fea2646970667358221220cdeb165c8c186cc522bd7743426ea6ac7bd781e52f6590722e0ee195d94d25b864736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xF78EEA83 EQ PUSH2 0x30 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x4A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x45 SWAP2 SWAP1 PUSH2 0x8E JUMP JUMPDEST PUSH2 0x62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x59 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0xD9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA DUP1 PUSH1 0xA SWAP3 POP SWAP3 POP SWAP3 POP SWAP2 SWAP4 SWAP1 SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x88 DUP2 PUSH2 0x133 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xA4 JUMPI PUSH2 0xA3 PUSH2 0x12E JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xB2 DUP5 DUP3 DUP6 ADD PUSH2 0x79 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xC4 DUP2 PUSH2 0x11A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0xD3 DUP2 PUSH2 0x124 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 ADD SWAP1 POP PUSH2 0xEE PUSH1 0x0 DUP4 ADD DUP7 PUSH2 0xBB JUMP JUMPDEST PUSH2 0xFB PUSH1 0x20 DUP4 ADD DUP6 PUSH2 0xCA JUMP JUMPDEST PUSH2 0x108 PUSH1 0x40 DUP4 ADD DUP5 PUSH2 0xCA JUMP JUMPDEST SWAP5 SWAP4 POP 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 PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x13C DUP2 PUSH2 0x110 JUMP JUMPDEST DUP2 EQ PUSH2 0x147 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xCD 0xEB AND 0x5C DUP13 XOR PUSH13 0xC522BD7743426EA6AC7BD781E5 0x2F PUSH6 0x90722E0EE195 0xD9 0x4D 0x25 0xB8 PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"64:146:5:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;96:112;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;148:6;155:7;163;190:2;194;198;182:19;;;;;;96:112;;;;;:::o;7:139:46:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:329::-;211:6;260:2;248:9;239:7;235:23;231:32;228:119;;;266:79;;:::i;:::-;228:119;386:1;411:53;456:7;447:6;436:9;432:22;411:53;:::i;:::-;401:63;;357:117;152:329;;;;:::o;487:115::-;572:23;589:5;572:23;:::i;:::-;567:3;560:36;487:115;;:::o;608:118::-;695:24;713:5;695:24;:::i;:::-;690:3;683:37;608:118;;:::o;732:438::-;879:4;917:2;906:9;902:18;894:26;;930:69;996:1;985:9;981:17;972:6;930:69;:::i;:::-;1009:72;1077:2;1066:9;1062:18;1053:6;1009:72;:::i;:::-;1091;1159:2;1148:9;1144:18;1135:6;1091:72;:::i;:::-;732:438;;;;;;:::o;1257:77::-;1294:7;1323:5;1312:16;;1257:77;;;:::o;1340:76::-;1376:7;1405:5;1394:16;;1340:76;;;:::o;1422:77::-;1459:7;1488:5;1477:16;;1422:77;;;:::o;1628:117::-;1737:1;1734;1727:12;1751:122;1824:24;1842:5;1824:24;:::i;:::-;1817:5;1814:35;1804:63;;1863:1;1860;1853:12;1804:63;1751:122;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"76800","executionCost":"123","totalCost":"76923"},"external":{"valueFor(bytes32)":"infinite"}},"methodIdentifiers":{"valueFor(bytes32)":"f78eea83"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_id\",\"type\":\"bytes32\"}],\"name\":\"valueFor\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/test/MockWitnetRouter.sol\":\"MockWitnetRouter\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/test/MockWitnetRouter.sol\":{\"content\":\"//SPDX-License-Identifier: MIT\\npragma solidity >=0.5.0 <0.9.0;\\n\\ncontract MockWitnetRouter {\\n    function valueFor(bytes32 _id) public view returns (int256,uint256,uint256) {\\n        return (10, 10, 10);\\n    }\\n}\",\"keccak256\":\"0xadffe281651f6b20d892afa52998c96ce09053a80b5a53391db017741c3b7443\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"contracts/witnet-requests/coinPrice.sol":{"coinPriceRequest":{"abi":[{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_bytecode","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"608060405234801561001057600080fd5b50610840806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806309bd5a6014610051578063439fab911461006f5780638129fc1c1461008b578063f094000214610095575b600080fd5b6100596100b3565b604051610066919061048e565b60405180910390f35b61008960048036038101906100849190610392565b6100b9565b005b610093610132565b005b61009d610156565b6040516100aa91906104a9565b60405180910390f35b60015481565b60008080546100c7906105c5565b905014610109576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610100906104cb565b60405180910390fd5b806000908051906020019061011f92919061023d565b50610129816101e4565b60018190555050565b61015460405180610120016040528060f9815260200161071260f991396100b9565b565b60008054610163906105c5565b80601f016020809104026020016040519081016040528092919081815260200182805461018f906105c5565b80156101dc5780601f106101b1576101008083540402835291602001916101dc565b820191906000526020600020905b8154815290600101906020018083116101bf57829003601f168201915b505050505081565b60006002826040516101f69190610477565b602060405180830381855afa158015610213573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102369190610365565b9050919050565b828054610249906105c5565b90600052602060002090601f01602090048101928261026b57600085556102b2565b82601f1061028457805160ff19168380011785556102b2565b828001600101855582156102b2579182015b828111156102b1578251825591602001919060010190610296565b5b5090506102bf91906102c3565b5090565b5b808211156102dc5760008160009055506001016102c4565b5090565b60006102f36102ee84610510565b6104eb565b90508281526020810184848401111561030f5761030e61068b565b5b61031a848285610583565b509392505050565b600081519050610331816106fa565b92915050565b600082601f83011261034c5761034b610686565b5b813561035c8482602086016102e0565b91505092915050565b60006020828403121561037b5761037a610695565b5b600061038984828501610322565b91505092915050565b6000602082840312156103a8576103a7610695565b5b600082013567ffffffffffffffff8111156103c6576103c5610690565b5b6103d284828501610337565b91505092915050565b6103e481610579565b82525050565b60006103f582610541565b6103ff818561054c565b935061040f818560208601610592565b6104188161069a565b840191505092915050565b600061042e82610541565b610438818561055d565b9350610448818560208601610592565b80840191505092915050565b6000610461603683610568565b915061046c826106ab565b604082019050919050565b60006104838284610423565b915081905092915050565b60006020820190506104a360008301846103db565b92915050565b600060208201905081810360008301526104c381846103ea565b905092915050565b600060208201905081810360008301526104e481610454565b9050919050565b60006104f5610506565b905061050182826105f7565b919050565b6000604051905090565b600067ffffffffffffffff82111561052b5761052a610657565b5b6105348261069a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000819050919050565b82818337600083830152505050565b60005b838110156105b0578082015181840152602081019050610595565b838111156105bf576000848401525b50505050565b600060028204905060018216806105dd57607f821691505b602082108114156105f1576105f0610628565b5b50919050565b6106008261069a565b810181811067ffffffffffffffff8211171561061f5761061e610657565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f5769746e657452657175657374496e697469616c697a61626c65426173653a2060008201527f63616e6e6f74206368616e67652062797465636f646500000000000000000000602082015250565b61070381610579565b811461070e57600080fd5b5056fe0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01a2646970667358221220f601a4842b7780a1bd7cbd78f1b3314aee34ed123f86fc14da575a1ad2d6cebe64736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x840 DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x8129FC1C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x95 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x48E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x89 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x392 JUMP JUMPDEST PUSH2 0xB9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x93 PUSH2 0x132 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x9D PUSH2 0x156 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAA SWAP2 SWAP1 PUSH2 0x4A9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0xC7 SWAP1 PUSH2 0x5C5 JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x109 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x100 SWAP1 PUSH2 0x4CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x0 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x11F SWAP3 SWAP2 SWAP1 PUSH2 0x23D JUMP JUMPDEST POP PUSH2 0x129 DUP2 PUSH2 0x1E4 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH2 0x154 PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xF9 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x712 PUSH1 0xF9 SWAP2 CODECOPY PUSH2 0xB9 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x163 SWAP1 PUSH2 0x5C5 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 0x18F SWAP1 PUSH2 0x5C5 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1DC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1B1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1DC 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 0x1BF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F6 SWAP2 SWAP1 PUSH2 0x477 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x213 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0x236 SWAP2 SWAP1 PUSH2 0x365 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x249 SWAP1 PUSH2 0x5C5 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x26B JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x2B2 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x284 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x2B2 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x2B2 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x2B1 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x296 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2BF SWAP2 SWAP1 PUSH2 0x2C3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2DC JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2C4 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F3 PUSH2 0x2EE DUP5 PUSH2 0x510 JUMP JUMPDEST PUSH2 0x4EB JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x30F JUMPI PUSH2 0x30E PUSH2 0x68B JUMP JUMPDEST JUMPDEST PUSH2 0x31A DUP5 DUP3 DUP6 PUSH2 0x583 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x331 DUP2 PUSH2 0x6FA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x34C JUMPI PUSH2 0x34B PUSH2 0x686 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x35C DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x37B JUMPI PUSH2 0x37A PUSH2 0x695 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x389 DUP5 DUP3 DUP6 ADD PUSH2 0x322 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3A8 JUMPI PUSH2 0x3A7 PUSH2 0x695 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3C6 JUMPI PUSH2 0x3C5 PUSH2 0x690 JUMP JUMPDEST JUMPDEST PUSH2 0x3D2 DUP5 DUP3 DUP6 ADD PUSH2 0x337 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3E4 DUP2 PUSH2 0x579 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F5 DUP3 PUSH2 0x541 JUMP JUMPDEST PUSH2 0x3FF DUP2 DUP6 PUSH2 0x54C JUMP JUMPDEST SWAP4 POP PUSH2 0x40F DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x592 JUMP JUMPDEST PUSH2 0x418 DUP2 PUSH2 0x69A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42E DUP3 PUSH2 0x541 JUMP JUMPDEST PUSH2 0x438 DUP2 DUP6 PUSH2 0x55D JUMP JUMPDEST SWAP4 POP PUSH2 0x448 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x592 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x461 PUSH1 0x36 DUP4 PUSH2 0x568 JUMP JUMPDEST SWAP2 POP PUSH2 0x46C DUP3 PUSH2 0x6AB JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483 DUP3 DUP5 PUSH2 0x423 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4A3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3DB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4C3 DUP2 DUP5 PUSH2 0x3EA 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 0x4E4 DUP2 PUSH2 0x454 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F5 PUSH2 0x506 JUMP JUMPDEST SWAP1 POP PUSH2 0x501 DUP3 DUP3 PUSH2 0x5F7 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 0x52B JUMPI PUSH2 0x52A PUSH2 0x657 JUMP JUMPDEST JUMPDEST PUSH2 0x534 DUP3 PUSH2 0x69A 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 DUP2 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 DUP2 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 0x5B0 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x595 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x5BF 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 0x5DD JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x5F1 JUMPI PUSH2 0x5F0 PUSH2 0x628 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x600 DUP3 PUSH2 0x69A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x61F JUMPI PUSH2 0x61E PUSH2 0x657 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374496E697469616C697A61626C65426173653A20 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63616E6E6F74206368616E67652062797465636F646500000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x703 DUP2 PUSH2 0x579 JUMP JUMPDEST DUP2 EQ PUSH2 0x70E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID EXP 0xDF ADD SLT GAS ADDMOD ADD SLT BLOCKHASH PUSH9 0x747470733A2F2F6D69 PUSH15 0x2D6170692E63727970746F636F6D70 PUSH2 0x7265 0x2E PUSH4 0x6F6D2F64 PUSH2 0x7461 0x2F PUSH17 0x726963653F6673796D3D4B4C4159267473 PUSH26 0x6D733D5553441A14841877821864635553448218571A000F4240 XOR JUMPDEST SLT PUSH4 0x8011238 PUSH9 0x747470733A2F2F6170 PUSH10 0x2E636F696E626173652E PUSH4 0x6F6D2F76 ORIGIN 0x2F PUSH6 0x786368616E67 PUSH6 0x2D7261746573 EXTCODEHASH PUSH4 0x75727265 PUSH15 0x63793D4B4C41591A25861877821866 PUSH5 0x6461746182 XOR PUSH7 0x65726174657382 XOR PUSH5 0x6355534482 XOR JUMPI BYTE STOP 0xF TIMESTAMP BLOCKHASH XOR JUMPDEST BYTE 0xD EXP MULMOD ADDMOD SDIV SLT SDIV STATICCALL EXTCODEHASH 0xC0 STOP STOP LT SUB 0x22 0xD EXP MULMOD ADDMOD SDIV SLT SDIV STATICCALL BLOCKHASH KECCAK256 STOP STOP LT SUB LT DUP1 0xE4 SWAP8 0xD0 SLT XOR EXP KECCAK256 DUP1 SWAP5 0xEB 0xDC SUB 0x28 CALLER ADDRESS DUP1 0xE8 0xED LOG1 0xBA ADD LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xF6 ADD LOG4 DUP5 0x2B PUSH24 0x80A1BD7CBD78F1B3314AEE34ED123F86FC14DA575A1AD2D6 0xCE 0xBE PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"561:652:6:-:0;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@bytecode_8265":{"entryPoint":342,"id":8265,"parameterSlots":0,"returnSlots":0},"@hash_4301":{"entryPoint":484,"id":4301,"parameterSlots":1,"returnSlots":1},"@hash_8269":{"entryPoint":179,"id":8269,"parameterSlots":0,"returnSlots":0},"@initialize_231":{"entryPoint":306,"id":231,"parameterSlots":0,"returnSlots":0},"@initialize_8306":{"entryPoint":185,"id":8306,"parameterSlots":1,"returnSlots":0},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":736,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":802,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":823,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":869,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":914,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes32_to_t_bytes32_fromStack":{"entryPoint":987,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":1002,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":1059,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack":{"entryPoint":1108,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":1143,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed":{"entryPoint":1166,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":1193,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":1227,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_memory":{"entryPoint":1259,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":1286,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":1296,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":1345,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":1356,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":1373,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":1384,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":1401,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":1411,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":1426,"id":null,"parameterSlots":3,"returnSlots":0},"extract_byte_array_length":{"entryPoint":1477,"id":null,"parameterSlots":1,"returnSlots":1},"finalize_allocation":{"entryPoint":1527,"id":null,"parameterSlots":2,"returnSlots":0},"panic_error_0x22":{"entryPoint":1576,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":1623,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":1670,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":1675,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":1680,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":1685,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":1690,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5":{"entryPoint":1707,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":1786,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:7933:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"486:80:46","statements":[{"nodeType":"YulAssignment","src":"496:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"511:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"505:5:46"},"nodeType":"YulFunctionCall","src":"505:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"496:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"554:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"527:26:46"},"nodeType":"YulFunctionCall","src":"527:33:46"},"nodeType":"YulExpressionStatement","src":"527:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"464:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"472:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"480:5:46","type":""}],"src":"423:143:46"},{"body":{"nodeType":"YulBlock","src":"646:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"695:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"697:77:46"},"nodeType":"YulFunctionCall","src":"697:79:46"},"nodeType":"YulExpressionStatement","src":"697:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"674:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"682:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"670:3:46"},"nodeType":"YulFunctionCall","src":"670:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"689:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"666:3:46"},"nodeType":"YulFunctionCall","src":"666:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"659:6:46"},"nodeType":"YulFunctionCall","src":"659:35:46"},"nodeType":"YulIf","src":"656:122:46"},{"nodeType":"YulVariableDeclaration","src":"787:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"814:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"801:12:46"},"nodeType":"YulFunctionCall","src":"801:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"791:6:46","type":""}]},{"nodeType":"YulAssignment","src":"830:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"890:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"898:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"886:3:46"},"nodeType":"YulFunctionCall","src":"886:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"905:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"913:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"839:46:46"},"nodeType":"YulFunctionCall","src":"839:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"830:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"624:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"632:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"640:5:46","type":""}],"src":"585:338:46"},{"body":{"nodeType":"YulBlock","src":"1006:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"1052:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1054:77:46"},"nodeType":"YulFunctionCall","src":"1054:79:46"},"nodeType":"YulExpressionStatement","src":"1054:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1027:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1036:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1023:3:46"},"nodeType":"YulFunctionCall","src":"1023:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1048:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1019:3:46"},"nodeType":"YulFunctionCall","src":"1019:32:46"},"nodeType":"YulIf","src":"1016:119:46"},{"nodeType":"YulBlock","src":"1145:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1160:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1174:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1164:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1189:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1235:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1246:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1231:3:46"},"nodeType":"YulFunctionCall","src":"1231:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1255:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"1199:31:46"},"nodeType":"YulFunctionCall","src":"1199:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1189:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"976:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"987:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"999:6:46","type":""}],"src":"929:351:46"},{"body":{"nodeType":"YulBlock","src":"1361:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"1407:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1409:77:46"},"nodeType":"YulFunctionCall","src":"1409:79:46"},"nodeType":"YulExpressionStatement","src":"1409:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1382:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1391:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1378:3:46"},"nodeType":"YulFunctionCall","src":"1378:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1403:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1374:3:46"},"nodeType":"YulFunctionCall","src":"1374:32:46"},"nodeType":"YulIf","src":"1371:119:46"},{"nodeType":"YulBlock","src":"1500:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1515:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1546:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1557:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1542:3:46"},"nodeType":"YulFunctionCall","src":"1542:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1529:12:46"},"nodeType":"YulFunctionCall","src":"1529:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1519:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1607:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"1609:77:46"},"nodeType":"YulFunctionCall","src":"1609:79:46"},"nodeType":"YulExpressionStatement","src":"1609:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1579:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1587:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1576:2:46"},"nodeType":"YulFunctionCall","src":"1576:30:46"},"nodeType":"YulIf","src":"1573:117:46"},{"nodeType":"YulAssignment","src":"1704:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1748:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1759:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1744:3:46"},"nodeType":"YulFunctionCall","src":"1744:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1768:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1714:29:46"},"nodeType":"YulFunctionCall","src":"1714:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1704:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1331:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1342:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1354:6:46","type":""}],"src":"1286:507:46"},{"body":{"nodeType":"YulBlock","src":"1864:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1881:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1904:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"1886:17:46"},"nodeType":"YulFunctionCall","src":"1886:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1874:6:46"},"nodeType":"YulFunctionCall","src":"1874:37:46"},"nodeType":"YulExpressionStatement","src":"1874:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1852:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1859:3:46","type":""}],"src":"1799:118:46"},{"body":{"nodeType":"YulBlock","src":"2013:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2023:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2069:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"2037:31:46"},"nodeType":"YulFunctionCall","src":"2037:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2027:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2084:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2149:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2154:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2091:57:46"},"nodeType":"YulFunctionCall","src":"2091:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2084:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2196:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2203:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2192:3:46"},"nodeType":"YulFunctionCall","src":"2192:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"2210:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2215:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"2170:21:46"},"nodeType":"YulFunctionCall","src":"2170:52:46"},"nodeType":"YulExpressionStatement","src":"2170:52:46"},{"nodeType":"YulAssignment","src":"2231:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2242:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2269:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"2247:21:46"},"nodeType":"YulFunctionCall","src":"2247:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2238:3:46"},"nodeType":"YulFunctionCall","src":"2238:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2231:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1994:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2001:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2009:3:46","type":""}],"src":"1923:360:46"},{"body":{"nodeType":"YulBlock","src":"2397:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2407:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2453:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"2421:31:46"},"nodeType":"YulFunctionCall","src":"2421:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2411:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2468:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2551:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2556:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"2475:75:46"},"nodeType":"YulFunctionCall","src":"2475:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2468:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2598:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2605:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2594:3:46"},"nodeType":"YulFunctionCall","src":"2594:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"2612:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2617:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"2572:21:46"},"nodeType":"YulFunctionCall","src":"2572:52:46"},"nodeType":"YulExpressionStatement","src":"2572:52:46"},{"nodeType":"YulAssignment","src":"2633:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2644:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2649:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2640:3:46"},"nodeType":"YulFunctionCall","src":"2640:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2633:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2378:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2385:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2393:3:46","type":""}],"src":"2289:373:46"},{"body":{"nodeType":"YulBlock","src":"2814:220:46","statements":[{"nodeType":"YulAssignment","src":"2824:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2890:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2895:2:46","type":"","value":"54"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2831:58:46"},"nodeType":"YulFunctionCall","src":"2831:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2824:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2996:3:46"}],"functionName":{"name":"store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5","nodeType":"YulIdentifier","src":"2907:88:46"},"nodeType":"YulFunctionCall","src":"2907:93:46"},"nodeType":"YulExpressionStatement","src":"2907:93:46"},{"nodeType":"YulAssignment","src":"3009:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3020:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3025:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3016:3:46"},"nodeType":"YulFunctionCall","src":"3016:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3009:3:46"}]}]},"name":"abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"2802:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2810:3:46","type":""}],"src":"2668:366:46"},{"body":{"nodeType":"YulBlock","src":"3174:137:46","statements":[{"nodeType":"YulAssignment","src":"3185:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3272:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"3281:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"3192:79:46"},"nodeType":"YulFunctionCall","src":"3192:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"3185:3:46"}]},{"nodeType":"YulAssignment","src":"3295:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"3302:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3295:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3153:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3159:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3170:3:46","type":""}],"src":"3040:271:46"},{"body":{"nodeType":"YulBlock","src":"3415:124:46","statements":[{"nodeType":"YulAssignment","src":"3425:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3437:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3448:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3433:3:46"},"nodeType":"YulFunctionCall","src":"3433:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3425:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3505:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3518:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3529:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3514:3:46"},"nodeType":"YulFunctionCall","src":"3514:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"3461:43:46"},"nodeType":"YulFunctionCall","src":"3461:71:46"},"nodeType":"YulExpressionStatement","src":"3461:71:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3387:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3399:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"3410:4:46","type":""}],"src":"3317:222:46"},{"body":{"nodeType":"YulBlock","src":"3661:193:46","statements":[{"nodeType":"YulAssignment","src":"3671:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3683:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3694:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3679:3:46"},"nodeType":"YulFunctionCall","src":"3679:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3671:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3718:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3729:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3714:3:46"},"nodeType":"YulFunctionCall","src":"3714:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"3737:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3743:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3733:3:46"},"nodeType":"YulFunctionCall","src":"3733:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3707:6:46"},"nodeType":"YulFunctionCall","src":"3707:47:46"},"nodeType":"YulExpressionStatement","src":"3707:47:46"},{"nodeType":"YulAssignment","src":"3763:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3833:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"3842:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"3771:61:46"},"nodeType":"YulFunctionCall","src":"3771:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3763:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3633:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3645:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"3656:4:46","type":""}],"src":"3545:309:46"},{"body":{"nodeType":"YulBlock","src":"4031:248:46","statements":[{"nodeType":"YulAssignment","src":"4041:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4053:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"4064:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4049:3:46"},"nodeType":"YulFunctionCall","src":"4049:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"4041:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4088:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"4099:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4084:3:46"},"nodeType":"YulFunctionCall","src":"4084:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"4107:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"4113:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"4103:3:46"},"nodeType":"YulFunctionCall","src":"4103:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4077:6:46"},"nodeType":"YulFunctionCall","src":"4077:47:46"},"nodeType":"YulExpressionStatement","src":"4077:47:46"},{"nodeType":"YulAssignment","src":"4133:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"4267:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"4141:124:46"},"nodeType":"YulFunctionCall","src":"4141:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"4133:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4011:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"4026:4:46","type":""}],"src":"3860:419:46"},{"body":{"nodeType":"YulBlock","src":"4326:88:46","statements":[{"nodeType":"YulAssignment","src":"4336:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"4346:18:46"},"nodeType":"YulFunctionCall","src":"4346:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4336:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4395:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"4403:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"4375:19:46"},"nodeType":"YulFunctionCall","src":"4375:33:46"},"nodeType":"YulExpressionStatement","src":"4375:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"4310:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"4319:6:46","type":""}],"src":"4285:129:46"},{"body":{"nodeType":"YulBlock","src":"4460:35:46","statements":[{"nodeType":"YulAssignment","src":"4470:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4486:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4480:5:46"},"nodeType":"YulFunctionCall","src":"4480:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4470:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"4453:6:46","type":""}],"src":"4420:75:46"},{"body":{"nodeType":"YulBlock","src":"4567:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"4672:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"4674:16:46"},"nodeType":"YulFunctionCall","src":"4674:18:46"},"nodeType":"YulExpressionStatement","src":"4674:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4644:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4652:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4641:2:46"},"nodeType":"YulFunctionCall","src":"4641:30:46"},"nodeType":"YulIf","src":"4638:56:46"},{"nodeType":"YulAssignment","src":"4704:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4734:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"4712:21:46"},"nodeType":"YulFunctionCall","src":"4712:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"4704:4:46"}]},{"nodeType":"YulAssignment","src":"4778:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"4790:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"4796:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4786:3:46"},"nodeType":"YulFunctionCall","src":"4786:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"4778:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"4551:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"4562:4:46","type":""}],"src":"4501:307:46"},{"body":{"nodeType":"YulBlock","src":"4872:40:46","statements":[{"nodeType":"YulAssignment","src":"4883:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4899:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4893:5:46"},"nodeType":"YulFunctionCall","src":"4893:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"4883:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4855:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"4865:6:46","type":""}],"src":"4814:98:46"},{"body":{"nodeType":"YulBlock","src":"5013:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5030:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5035:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5023:6:46"},"nodeType":"YulFunctionCall","src":"5023:19:46"},"nodeType":"YulExpressionStatement","src":"5023:19:46"},{"nodeType":"YulAssignment","src":"5051:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5070:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5075:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5066:3:46"},"nodeType":"YulFunctionCall","src":"5066:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"5051:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"4985:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"4990:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"5001:11:46","type":""}],"src":"4918:168:46"},{"body":{"nodeType":"YulBlock","src":"5205:34:46","statements":[{"nodeType":"YulAssignment","src":"5215:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"5230:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"5215:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5177:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5182:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"5193:11:46","type":""}],"src":"5092:147:46"},{"body":{"nodeType":"YulBlock","src":"5341:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5358:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5363:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5351:6:46"},"nodeType":"YulFunctionCall","src":"5351:19:46"},"nodeType":"YulExpressionStatement","src":"5351:19:46"},{"nodeType":"YulAssignment","src":"5379:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5398:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5403:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5394:3:46"},"nodeType":"YulFunctionCall","src":"5394:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"5379:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5313:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5318:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"5329:11:46","type":""}],"src":"5245:169:46"},{"body":{"nodeType":"YulBlock","src":"5465:32:46","statements":[{"nodeType":"YulAssignment","src":"5475:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"5486:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"5475:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5447:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"5457:7:46","type":""}],"src":"5420:77:46"},{"body":{"nodeType":"YulBlock","src":"5554:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5577:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"5582:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5587:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"5564:12:46"},"nodeType":"YulFunctionCall","src":"5564:30:46"},"nodeType":"YulExpressionStatement","src":"5564:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5635:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5640:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5631:3:46"},"nodeType":"YulFunctionCall","src":"5631:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"5649:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5624:6:46"},"nodeType":"YulFunctionCall","src":"5624:27:46"},"nodeType":"YulExpressionStatement","src":"5624:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"5536:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"5541:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5546:6:46","type":""}],"src":"5503:154:46"},{"body":{"nodeType":"YulBlock","src":"5712:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5722:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5731:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"5726:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"5791:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5816:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"5821:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5812:3:46"},"nodeType":"YulFunctionCall","src":"5812:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"5835:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"5840:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5831:3:46"},"nodeType":"YulFunctionCall","src":"5831:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5825:5:46"},"nodeType":"YulFunctionCall","src":"5825:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5805:6:46"},"nodeType":"YulFunctionCall","src":"5805:39:46"},"nodeType":"YulExpressionStatement","src":"5805:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5752:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"5755:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"5749:2:46"},"nodeType":"YulFunctionCall","src":"5749:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"5763:19:46","statements":[{"nodeType":"YulAssignment","src":"5765:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5774:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"5777:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5770:3:46"},"nodeType":"YulFunctionCall","src":"5770:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"5765:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"5745:3:46","statements":[]},"src":"5741:113:46"},{"body":{"nodeType":"YulBlock","src":"5888:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5938:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5943:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5934:3:46"},"nodeType":"YulFunctionCall","src":"5934:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"5952:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5927:6:46"},"nodeType":"YulFunctionCall","src":"5927:27:46"},"nodeType":"YulExpressionStatement","src":"5927:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5869:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"5872:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"5866:2:46"},"nodeType":"YulFunctionCall","src":"5866:13:46"},"nodeType":"YulIf","src":"5863:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"5694:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"5699:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5704:6:46","type":""}],"src":"5663:307:46"},{"body":{"nodeType":"YulBlock","src":"6027:269:46","statements":[{"nodeType":"YulAssignment","src":"6037:22:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"6051:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"6057:1:46","type":"","value":"2"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"6047:3:46"},"nodeType":"YulFunctionCall","src":"6047:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"6037:6:46"}]},{"nodeType":"YulVariableDeclaration","src":"6068:38:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"6098:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"6104:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"6094:3:46"},"nodeType":"YulFunctionCall","src":"6094:12:46"},"variables":[{"name":"outOfPlaceEncoding","nodeType":"YulTypedName","src":"6072:18:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6145:51:46","statements":[{"nodeType":"YulAssignment","src":"6159:27:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6173:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6181:4:46","type":"","value":"0x7f"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"6169:3:46"},"nodeType":"YulFunctionCall","src":"6169:17:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"6159:6:46"}]}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"6125:18:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"6118:6:46"},"nodeType":"YulFunctionCall","src":"6118:26:46"},"nodeType":"YulIf","src":"6115:81:46"},{"body":{"nodeType":"YulBlock","src":"6248:42:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x22","nodeType":"YulIdentifier","src":"6262:16:46"},"nodeType":"YulFunctionCall","src":"6262:18:46"},"nodeType":"YulExpressionStatement","src":"6262:18:46"}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"6212:18:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6235:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6243:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6232:2:46"},"nodeType":"YulFunctionCall","src":"6232:14:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"6209:2:46"},"nodeType":"YulFunctionCall","src":"6209:38:46"},"nodeType":"YulIf","src":"6206:84:46"}]},"name":"extract_byte_array_length","nodeType":"YulFunctionDefinition","parameters":[{"name":"data","nodeType":"YulTypedName","src":"6011:4:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"6020:6:46","type":""}],"src":"5976:320:46"},{"body":{"nodeType":"YulBlock","src":"6345:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6355:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"6377:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"6407:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"6385:21:46"},"nodeType":"YulFunctionCall","src":"6385:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6373:3:46"},"nodeType":"YulFunctionCall","src":"6373:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"6359:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6524:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"6526:16:46"},"nodeType":"YulFunctionCall","src":"6526:18:46"},"nodeType":"YulExpressionStatement","src":"6526:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"6467:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"6479:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"6464:2:46"},"nodeType":"YulFunctionCall","src":"6464:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"6503:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"6515:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6500:2:46"},"nodeType":"YulFunctionCall","src":"6500:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"6461:2:46"},"nodeType":"YulFunctionCall","src":"6461:62:46"},"nodeType":"YulIf","src":"6458:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6562:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"6566:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6555:6:46"},"nodeType":"YulFunctionCall","src":"6555:22:46"},"nodeType":"YulExpressionStatement","src":"6555:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"6331:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"6339:4:46","type":""}],"src":"6302:281:46"},{"body":{"nodeType":"YulBlock","src":"6617:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6634:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6637:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6627:6:46"},"nodeType":"YulFunctionCall","src":"6627:88:46"},"nodeType":"YulExpressionStatement","src":"6627:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6731:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"6734:4:46","type":"","value":"0x22"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6724:6:46"},"nodeType":"YulFunctionCall","src":"6724:15:46"},"nodeType":"YulExpressionStatement","src":"6724:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6755:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6758:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"6748:6:46"},"nodeType":"YulFunctionCall","src":"6748:15:46"},"nodeType":"YulExpressionStatement","src":"6748:15:46"}]},"name":"panic_error_0x22","nodeType":"YulFunctionDefinition","src":"6589:180:46"},{"body":{"nodeType":"YulBlock","src":"6803:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6820:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6823:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6813:6:46"},"nodeType":"YulFunctionCall","src":"6813:88:46"},"nodeType":"YulExpressionStatement","src":"6813:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6917:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"6920:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6910:6:46"},"nodeType":"YulFunctionCall","src":"6910:15:46"},"nodeType":"YulExpressionStatement","src":"6910:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6941:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6944:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"6934:6:46"},"nodeType":"YulFunctionCall","src":"6934:15:46"},"nodeType":"YulExpressionStatement","src":"6934:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"6775:180:46"},{"body":{"nodeType":"YulBlock","src":"7050:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7067:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7070:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7060:6:46"},"nodeType":"YulFunctionCall","src":"7060:12:46"},"nodeType":"YulExpressionStatement","src":"7060:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"6961:117:46"},{"body":{"nodeType":"YulBlock","src":"7173:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7190:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7193:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7183:6:46"},"nodeType":"YulFunctionCall","src":"7183:12:46"},"nodeType":"YulExpressionStatement","src":"7183:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"7084:117:46"},{"body":{"nodeType":"YulBlock","src":"7296:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7313:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7316:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7306:6:46"},"nodeType":"YulFunctionCall","src":"7306:12:46"},"nodeType":"YulExpressionStatement","src":"7306:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"7207:117:46"},{"body":{"nodeType":"YulBlock","src":"7419:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7436:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7439:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7429:6:46"},"nodeType":"YulFunctionCall","src":"7429:12:46"},"nodeType":"YulExpressionStatement","src":"7429:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"7330:117:46"},{"body":{"nodeType":"YulBlock","src":"7501:54:46","statements":[{"nodeType":"YulAssignment","src":"7511:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7529:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"7536:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7525:3:46"},"nodeType":"YulFunctionCall","src":"7525:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7545:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"7541:3:46"},"nodeType":"YulFunctionCall","src":"7541:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"7521:3:46"},"nodeType":"YulFunctionCall","src":"7521:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"7511:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"7484:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"7494:6:46","type":""}],"src":"7453:102:46"},{"body":{"nodeType":"YulBlock","src":"7667:135:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"7689:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7697:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7685:3:46"},"nodeType":"YulFunctionCall","src":"7685:14:46"},{"hexValue":"5769746e657452657175657374496e697469616c697a61626c65426173653a20","kind":"string","nodeType":"YulLiteral","src":"7701:34:46","type":"","value":"WitnetRequestInitializableBase: "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7678:6:46"},"nodeType":"YulFunctionCall","src":"7678:58:46"},"nodeType":"YulExpressionStatement","src":"7678:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"7757:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7765:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7753:3:46"},"nodeType":"YulFunctionCall","src":"7753:15:46"},{"hexValue":"63616e6e6f74206368616e67652062797465636f6465","kind":"string","nodeType":"YulLiteral","src":"7770:24:46","type":"","value":"cannot change bytecode"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7746:6:46"},"nodeType":"YulFunctionCall","src":"7746:49:46"},"nodeType":"YulExpressionStatement","src":"7746:49:46"}]},"name":"store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"7659:6:46","type":""}],"src":"7561:241:46"},{"body":{"nodeType":"YulBlock","src":"7851:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"7908:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7917:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7920:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7910:6:46"},"nodeType":"YulFunctionCall","src":"7910:12:46"},"nodeType":"YulExpressionStatement","src":"7910:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7874:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7899:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"7881:17:46"},"nodeType":"YulFunctionCall","src":"7881:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"7871:2:46"},"nodeType":"YulFunctionCall","src":"7871:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"7864:6:46"},"nodeType":"YulFunctionCall","src":"7864:43:46"},"nodeType":"YulIf","src":"7861:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"7844:5:46","type":""}],"src":"7808:122:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\n    }\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\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_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_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    function abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 54)\n        store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        end := pos\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_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_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5__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_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack( tail)\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_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 array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\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 cleanup_t_bytes32(value) -> cleaned {\n        cleaned := value\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 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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestInitializableBase: \")\n\n        mstore(add(memPtr, 32), \"cannot change bytecode\")\n\n    }\n\n    function validator_revert_t_bytes32(value) {\n        if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"608060405234801561001057600080fd5b506004361061004c5760003560e01c806309bd5a6014610051578063439fab911461006f5780638129fc1c1461008b578063f094000214610095575b600080fd5b6100596100b3565b604051610066919061048e565b60405180910390f35b61008960048036038101906100849190610392565b6100b9565b005b610093610132565b005b61009d610156565b6040516100aa91906104a9565b60405180910390f35b60015481565b60008080546100c7906105c5565b905014610109576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610100906104cb565b60405180910390fd5b806000908051906020019061011f92919061023d565b50610129816101e4565b60018190555050565b61015460405180610120016040528060f9815260200161071260f991396100b9565b565b60008054610163906105c5565b80601f016020809104026020016040519081016040528092919081815260200182805461018f906105c5565b80156101dc5780601f106101b1576101008083540402835291602001916101dc565b820191906000526020600020905b8154815290600101906020018083116101bf57829003601f168201915b505050505081565b60006002826040516101f69190610477565b602060405180830381855afa158015610213573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102369190610365565b9050919050565b828054610249906105c5565b90600052602060002090601f01602090048101928261026b57600085556102b2565b82601f1061028457805160ff19168380011785556102b2565b828001600101855582156102b2579182015b828111156102b1578251825591602001919060010190610296565b5b5090506102bf91906102c3565b5090565b5b808211156102dc5760008160009055506001016102c4565b5090565b60006102f36102ee84610510565b6104eb565b90508281526020810184848401111561030f5761030e61068b565b5b61031a848285610583565b509392505050565b600081519050610331816106fa565b92915050565b600082601f83011261034c5761034b610686565b5b813561035c8482602086016102e0565b91505092915050565b60006020828403121561037b5761037a610695565b5b600061038984828501610322565b91505092915050565b6000602082840312156103a8576103a7610695565b5b600082013567ffffffffffffffff8111156103c6576103c5610690565b5b6103d284828501610337565b91505092915050565b6103e481610579565b82525050565b60006103f582610541565b6103ff818561054c565b935061040f818560208601610592565b6104188161069a565b840191505092915050565b600061042e82610541565b610438818561055d565b9350610448818560208601610592565b80840191505092915050565b6000610461603683610568565b915061046c826106ab565b604082019050919050565b60006104838284610423565b915081905092915050565b60006020820190506104a360008301846103db565b92915050565b600060208201905081810360008301526104c381846103ea565b905092915050565b600060208201905081810360008301526104e481610454565b9050919050565b60006104f5610506565b905061050182826105f7565b919050565b6000604051905090565b600067ffffffffffffffff82111561052b5761052a610657565b5b6105348261069a565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000819050919050565b82818337600083830152505050565b60005b838110156105b0578082015181840152602081019050610595565b838111156105bf576000848401525b50505050565b600060028204905060018216806105dd57607f821691505b602082108114156105f1576105f0610628565b5b50919050565b6106008261069a565b810181811067ffffffffffffffff8211171561061f5761061e610657565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f5769746e657452657175657374496e697469616c697a61626c65426173653a2060008201527f63616e6e6f74206368616e67652062797465636f646500000000000000000000602082015250565b61070381610579565b811461070e57600080fd5b5056fe0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01a2646970667358221220f601a4842b7780a1bd7cbd78f1b3314aee34ed123f86fc14da575a1ad2d6cebe64736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x8129FC1C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x95 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x48E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x89 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x392 JUMP JUMPDEST PUSH2 0xB9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x93 PUSH2 0x132 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x9D PUSH2 0x156 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAA SWAP2 SWAP1 PUSH2 0x4A9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0xC7 SWAP1 PUSH2 0x5C5 JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x109 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x100 SWAP1 PUSH2 0x4CB JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x0 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x11F SWAP3 SWAP2 SWAP1 PUSH2 0x23D JUMP JUMPDEST POP PUSH2 0x129 DUP2 PUSH2 0x1E4 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH2 0x154 PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xF9 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x712 PUSH1 0xF9 SWAP2 CODECOPY PUSH2 0xB9 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x163 SWAP1 PUSH2 0x5C5 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 0x18F SWAP1 PUSH2 0x5C5 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1DC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1B1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1DC 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 0x1BF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F6 SWAP2 SWAP1 PUSH2 0x477 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x213 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0x236 SWAP2 SWAP1 PUSH2 0x365 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x249 SWAP1 PUSH2 0x5C5 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x26B JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x2B2 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x284 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x2B2 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x2B2 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x2B1 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x296 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2BF SWAP2 SWAP1 PUSH2 0x2C3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2DC JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2C4 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F3 PUSH2 0x2EE DUP5 PUSH2 0x510 JUMP JUMPDEST PUSH2 0x4EB JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x30F JUMPI PUSH2 0x30E PUSH2 0x68B JUMP JUMPDEST JUMPDEST PUSH2 0x31A DUP5 DUP3 DUP6 PUSH2 0x583 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x331 DUP2 PUSH2 0x6FA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x34C JUMPI PUSH2 0x34B PUSH2 0x686 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x35C DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x37B JUMPI PUSH2 0x37A PUSH2 0x695 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x389 DUP5 DUP3 DUP6 ADD PUSH2 0x322 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3A8 JUMPI PUSH2 0x3A7 PUSH2 0x695 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3C6 JUMPI PUSH2 0x3C5 PUSH2 0x690 JUMP JUMPDEST JUMPDEST PUSH2 0x3D2 DUP5 DUP3 DUP6 ADD PUSH2 0x337 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3E4 DUP2 PUSH2 0x579 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F5 DUP3 PUSH2 0x541 JUMP JUMPDEST PUSH2 0x3FF DUP2 DUP6 PUSH2 0x54C JUMP JUMPDEST SWAP4 POP PUSH2 0x40F DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x592 JUMP JUMPDEST PUSH2 0x418 DUP2 PUSH2 0x69A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42E DUP3 PUSH2 0x541 JUMP JUMPDEST PUSH2 0x438 DUP2 DUP6 PUSH2 0x55D JUMP JUMPDEST SWAP4 POP PUSH2 0x448 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x592 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x461 PUSH1 0x36 DUP4 PUSH2 0x568 JUMP JUMPDEST SWAP2 POP PUSH2 0x46C DUP3 PUSH2 0x6AB JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483 DUP3 DUP5 PUSH2 0x423 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4A3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3DB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4C3 DUP2 DUP5 PUSH2 0x3EA 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 0x4E4 DUP2 PUSH2 0x454 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F5 PUSH2 0x506 JUMP JUMPDEST SWAP1 POP PUSH2 0x501 DUP3 DUP3 PUSH2 0x5F7 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 0x52B JUMPI PUSH2 0x52A PUSH2 0x657 JUMP JUMPDEST JUMPDEST PUSH2 0x534 DUP3 PUSH2 0x69A 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 DUP2 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 DUP2 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 0x5B0 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x595 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x5BF 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 0x5DD JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x5F1 JUMPI PUSH2 0x5F0 PUSH2 0x628 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x600 DUP3 PUSH2 0x69A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x61F JUMPI PUSH2 0x61E PUSH2 0x657 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374496E697469616C697A61626C65426173653A20 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63616E6E6F74206368616E67652062797465636F646500000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x703 DUP2 PUSH2 0x579 JUMP JUMPDEST DUP2 EQ PUSH2 0x70E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID EXP 0xDF ADD SLT GAS ADDMOD ADD SLT BLOCKHASH PUSH9 0x747470733A2F2F6D69 PUSH15 0x2D6170692E63727970746F636F6D70 PUSH2 0x7265 0x2E PUSH4 0x6F6D2F64 PUSH2 0x7461 0x2F PUSH17 0x726963653F6673796D3D4B4C4159267473 PUSH26 0x6D733D5553441A14841877821864635553448218571A000F4240 XOR JUMPDEST SLT PUSH4 0x8011238 PUSH9 0x747470733A2F2F6170 PUSH10 0x2E636F696E626173652E PUSH4 0x6F6D2F76 ORIGIN 0x2F PUSH6 0x786368616E67 PUSH6 0x2D7261746573 EXTCODEHASH PUSH4 0x75727265 PUSH15 0x63793D4B4C41591A25861877821866 PUSH5 0x6461746182 XOR PUSH7 0x65726174657382 XOR PUSH5 0x6355534482 XOR JUMPI BYTE STOP 0xF TIMESTAMP BLOCKHASH XOR JUMPDEST BYTE 0xD EXP MULMOD ADDMOD SDIV SLT SDIV STATICCALL EXTCODEHASH 0xC0 STOP STOP LT SUB 0x22 0xD EXP MULMOD ADDMOD SDIV SLT SDIV STATICCALL BLOCKHASH KECCAK256 STOP STOP LT SUB LT DUP1 0xE4 SWAP8 0xD0 SLT XOR EXP KECCAK256 DUP1 SWAP5 0xEB 0xDC SUB 0x28 CALLER ADDRESS DUP1 0xE8 0xED LOG1 0xBA ADD LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xF6 ADD LOG4 DUP5 0x2B PUSH24 0x80A1BD7CBD78F1B3314AEE34ED123F86FC14DA575A1AD2D6 0xCE 0xBE PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"561:652:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;363:28:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;280:289:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;625:586:6;;;:::i;:::-;;252:30:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;363:28;;;;:::o;280:289:43:-;418:1;399:8;:15;;;;;:::i;:::-;;;:20;378:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;520:9;509:8;:20;;;;;;;;;;;;:::i;:::-;;546:16;:9;:14;:16::i;:::-;539:4;:23;;;;280:289;:::o;625:586:6:-;660:546;;;;;;;;;;;;;;;;;;:41;:546::i;:::-;625:586::o;252:30:42:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;298:111:29:-;359:7;385:17;392:9;385:17;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;378:24;;298:111;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;423:143::-;480:5;511:6;505:13;496:22;;527:33;554:5;527:33;:::i;:::-;423:143;;;;:::o;585:338::-;640:5;689:3;682:4;674:6;670:17;666:27;656:122;;697:79;;:::i;:::-;656:122;814:6;801:20;839:78;913:3;905:6;898:4;890:6;886:17;839:78;:::i;:::-;830:87;;646:277;585:338;;;;:::o;929:351::-;999:6;1048:2;1036:9;1027:7;1023:23;1019:32;1016:119;;;1054:79;;:::i;:::-;1016:119;1174:1;1199:64;1255:7;1246:6;1235:9;1231:22;1199:64;:::i;:::-;1189:74;;1145:128;929:351;;;;:::o;1286:507::-;1354:6;1403:2;1391:9;1382:7;1378:23;1374:32;1371:119;;;1409:79;;:::i;:::-;1371:119;1557:1;1546:9;1542:17;1529:31;1587:18;1579:6;1576:30;1573:117;;;1609:79;;:::i;:::-;1573:117;1714:62;1768:7;1759:6;1748:9;1744:22;1714:62;:::i;:::-;1704:72;;1500:286;1286:507;;;;:::o;1799:118::-;1886:24;1904:5;1886:24;:::i;:::-;1881:3;1874:37;1799:118;;:::o;1923:360::-;2009:3;2037:38;2069:5;2037:38;:::i;:::-;2091:70;2154:6;2149:3;2091:70;:::i;:::-;2084:77;;2170:52;2215:6;2210:3;2203:4;2196:5;2192:16;2170:52;:::i;:::-;2247:29;2269:6;2247:29;:::i;:::-;2242:3;2238:39;2231:46;;2013:270;1923:360;;;;:::o;2289:373::-;2393:3;2421:38;2453:5;2421:38;:::i;:::-;2475:88;2556:6;2551:3;2475:88;:::i;:::-;2468:95;;2572:52;2617:6;2612:3;2605:4;2598:5;2594:16;2572:52;:::i;:::-;2649:6;2644:3;2640:16;2633:23;;2397:265;2289:373;;;;:::o;2668:366::-;2810:3;2831:67;2895:2;2890:3;2831:67;:::i;:::-;2824:74;;2907:93;2996:3;2907:93;:::i;:::-;3025:2;3020:3;3016:12;3009:19;;2668:366;;;:::o;3040:271::-;3170:3;3192:93;3281:3;3272:6;3192:93;:::i;:::-;3185:100;;3302:3;3295:10;;3040:271;;;;:::o;3317:222::-;3410:4;3448:2;3437:9;3433:18;3425:26;;3461:71;3529:1;3518:9;3514:17;3505:6;3461:71;:::i;:::-;3317:222;;;;:::o;3545:309::-;3656:4;3694:2;3683:9;3679:18;3671:26;;3743:9;3737:4;3733:20;3729:1;3718:9;3714:17;3707:47;3771:76;3842:4;3833:6;3771:76;:::i;:::-;3763:84;;3545:309;;;;:::o;3860:419::-;4026:4;4064:2;4053:9;4049:18;4041:26;;4113:9;4107:4;4103:20;4099:1;4088:9;4084:17;4077:47;4141:131;4267:4;4141:131;:::i;:::-;4133:139;;3860:419;;;:::o;4285:129::-;4319:6;4346:20;;:::i;:::-;4336:30;;4375:33;4403:4;4395:6;4375:33;:::i;:::-;4285:129;;;:::o;4420:75::-;4453:6;4486:2;4480:9;4470:19;;4420:75;:::o;4501:307::-;4562:4;4652:18;4644:6;4641:30;4638:56;;;4674:18;;:::i;:::-;4638:56;4712:29;4734:6;4712:29;:::i;:::-;4704:37;;4796:4;4790;4786:15;4778:23;;4501:307;;;:::o;4814:98::-;4865:6;4899:5;4893:12;4883:22;;4814:98;;;:::o;4918:168::-;5001:11;5035:6;5030:3;5023:19;5075:4;5070:3;5066:14;5051:29;;4918:168;;;;:::o;5092:147::-;5193:11;5230:3;5215:18;;5092:147;;;;:::o;5245:169::-;5329:11;5363:6;5358:3;5351:19;5403:4;5398:3;5394:14;5379:29;;5245:169;;;;:::o;5420:77::-;5457:7;5486:5;5475:16;;5420:77;;;:::o;5503:154::-;5587:6;5582:3;5577;5564:30;5649:1;5640:6;5635:3;5631:16;5624:27;5503:154;;;:::o;5663:307::-;5731:1;5741:113;5755:6;5752:1;5749:13;5741:113;;;5840:1;5835:3;5831:11;5825:18;5821:1;5816:3;5812:11;5805:39;5777:2;5774:1;5770:10;5765:15;;5741:113;;;5872:6;5869:1;5866:13;5863:101;;;5952:1;5943:6;5938:3;5934:16;5927:27;5863:101;5712:258;5663:307;;;:::o;5976:320::-;6020:6;6057:1;6051:4;6047:12;6037:22;;6104:1;6098:4;6094:12;6125:18;6115:81;;6181:4;6173:6;6169:17;6159:27;;6115:81;6243:2;6235:6;6232:14;6212:18;6209:38;6206:84;;;6262:18;;:::i;:::-;6206:84;6027:269;5976:320;;;:::o;6302:281::-;6385:27;6407:4;6385:27;:::i;:::-;6377:6;6373:40;6515:6;6503:10;6500:22;6479:18;6467:10;6464:34;6461:62;6458:88;;;6526:18;;:::i;:::-;6458:88;6566:10;6562:2;6555:22;6345:238;6302:281;;:::o;6589:180::-;6637:77;6634:1;6627:88;6734:4;6731:1;6724:15;6758:4;6755:1;6748:15;6775:180;6823:77;6820:1;6813:88;6920:4;6917:1;6910:15;6944:4;6941:1;6934:15;6961:117;7070:1;7067;7060:12;7084:117;7193:1;7190;7183:12;7207:117;7316:1;7313;7306:12;7330:117;7439:1;7436;7429:12;7453:102;7494:6;7545:2;7541:7;7536:2;7529:5;7525:14;7521:28;7511:38;;7453:102;;;:::o;7561:241::-;7701:34;7697:1;7689:6;7685:14;7678:58;7770:24;7765:2;7757:6;7753:15;7746:49;7561:241;:::o;7808:122::-;7881:24;7899:5;7881:24;:::i;:::-;7874:5;7871:35;7861:63;;7920:1;7917;7910:12;7861:63;7808:122;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"422400","executionCost":"455","totalCost":"422855"},"external":{"bytecode()":"infinite","hash()":"2407","initialize()":"infinite","initialize(bytes)":"infinite"}},"methodIdentifiers":{"bytecode()":"f0940002","hash()":"09bd5a60","initialize()":"8129fc1c","initialize(bytes)":"439fab91"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_bytecode\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/witnet-requests/coinPrice.sol\":\"coinPriceRequest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/witnet-requests/coinPrice.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n// For the Witnet Request Board OVM-compatible (Optimism) \\\"trustable\\\" implementation (e.g. BOBA network),\\n// replace the next import line with:\\n// import \\\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBoba.sol\\\";\\nimport \\\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\\\";\\nimport \\\"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\\\";\\n\\n// The bytecode of the klayPrice query that will be sent to Witnet\\ncontract coinPriceRequest is WitnetRequestInitializableBase {\\n  function initialize() public {\\n    WitnetRequestInitializableBase.initialize(hex\\\"0adf01125a0801124068747470733a2f2f6d696e2d6170692e63727970746f636f6d706172652e636f6d2f646174612f70726963653f6673796d3d4b4c4159267473796d733d5553441a14841877821864635553448218571a000f4240185b12630801123868747470733a2f2f6170692e636f696e626173652e636f6d2f76322f65786368616e67652d72617465733f63757272656e63793d4b4c41591a258618778218666464617461821866657261746573821864635553448218571a000f4240185b1a0d0a0908051205fa3fc000001003220d0a0908051205fa4020000010031080e497d012180a208094ebdc0328333080e8eda1ba01\\\");\\n  }\\n}\\n\",\"keccak256\":\"0x733a8b7976fb7fcf4dd97cef81215267268a23fa17d301a747c13771cf825824\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board base data model. \\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardData {  \\n\\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data\\\") */\\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\\n\\n    struct WitnetBoardState {\\n        address base;\\n        address owner;    \\n        uint256 numQueries;\\n        mapping (uint => Witnet.Query) queries;\\n    }\\n\\n    constructor() {\\n        _state().owner = msg.sender;\\n    }\\n\\n    /// Asserts the given query is currently in the given status.\\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\\n      require(\\n          _getQueryStatus(_queryId) == _status,\\n          _getQueryStatusRevertMessage(_status)\\n        );\\n      _;\\n    }\\n\\n    /// Asserts the given query was previously posted and that it was not yet deleted.\\n    modifier notDeleted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        require(_getRequester(_queryId) != address(0), \\\"WitnetBoardData: deleted\\\");\\n        _;\\n    }\\n\\n    /// Asserts caller corresponds to the current owner. \\n    modifier onlyOwner {\\n        require(msg.sender == _state().owner, \\\"WitnetBoardData: only owner\\\");\\n        _;    \\n    }\\n\\n    /// Asserts the give query was actually posted before calling this method.\\n    modifier wasPosted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        _;\\n    }\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    /// Gets current status of given query.\\n    function _getQueryStatus(uint256 _queryId)\\n      internal view\\n      returns (Witnet.QueryStatus)\\n    {\\n      if (_queryId == 0 || _queryId > _state().numQueries) {\\n        // \\\"Unknown\\\" status if queryId is out of range:\\n        return Witnet.QueryStatus.Unknown;\\n      }\\n      else {\\n        Witnet.Query storage _query = _state().queries[_queryId];\\n        if (_query.response.drTxHash != 0) {\\n          // Query is in \\\"Reported\\\" status as soon as the hash of the\\n          // Witnet transaction that solved the query is reported\\n          // back from a Witnet bridge:\\n          return Witnet.QueryStatus.Reported;\\n        }\\n        else if (_query.from != address(0)) {\\n          // Otherwise, while address from which the query was posted\\n          // is kept in storage, the query remains in \\\"Posted\\\" status:\\n          return Witnet.QueryStatus.Posted;\\n        }\\n        else {\\n          // Requester's address is removed from storage only if\\n          // the query gets \\\"Deleted\\\" by its requester.\\n          return Witnet.QueryStatus.Deleted;\\n        }\\n      }\\n    }\\n\\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\\n      internal pure\\n      returns (string memory)\\n    {\\n      if (_status == Witnet.QueryStatus.Posted) {\\n        return \\\"WitnetBoardData: not in Posted status\\\";\\n      } else if (_status == Witnet.QueryStatus.Reported) {\\n        return \\\"WitnetBoardData: not in Reported status\\\";\\n      } else if (_status == Witnet.QueryStatus.Deleted) {\\n        return \\\"WitnetBoardData: not in Deleted status\\\";\\n      } else {\\n        return \\\"WitnetBoardData: bad mood\\\";\\n      }\\n    }\\n\\n    /// Gets from of a given query.\\n    function _getRequester(uint256 _queryId)\\n      internal view\\n      returns (address)\\n    {\\n      return _state().queries[_queryId].from;\\n    }\\n\\n    /// Gets the Witnet.Request part of a given query.\\n    function _getRequestData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Request storage)\\n    {\\n        return _state().queries[_queryId].request;\\n    }\\n\\n    /// Gets the Witnet.Result part of a given query.\\n    function _getResponseData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Response storage)\\n    {\\n        return _state().queries[_queryId].response;\\n    }\\n\\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\\n    function _state()\\n      internal pure\\n      returns (WitnetBoardState storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0c78c9981103e9ed35ace4e5f886a848f9dfe2aa26928adc0d37dabeff6a19db\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetBoardData.sol\\\";\\n\\n/// @title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardDataACLs\\n    is\\n        WitnetBoardData\\n{\\n    bytes32 internal constant _WITNET_BOARD_ACLS_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data.acls\\\") */\\n        0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd;\\n\\n    struct WitnetBoardACLs {\\n        mapping (address => bool) isReporter_;\\n    }\\n\\n    constructor() {\\n        _acls().isReporter_[msg.sender] = true;\\n    }\\n\\n    modifier onlyReporters {\\n        require(\\n            _acls().isReporter_[msg.sender],\\n            \\\"WitnetBoardDataACLs: unauthorized reporter\\\"\\n        );\\n        _;\\n    } \\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function _acls() internal pure returns (WitnetBoardACLs storage _struct) {\\n        assembly {\\n            _struct.slot := _WITNET_BOARD_ACLS_SLOTHASH\\n        }\\n    }\\n}\\n\",\"keccak256\":\"0x558f28fc690d2f7180da9393bc49083da4857aa8480f044f68355a61ebf21257\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \\n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \\n/// @author The Witnet Foundation.\\ncontract WitnetProxy {\\n\\n    struct WitnetProxySlot {\\n        address implementation;\\n    }\\n\\n    /// Event emitted every time the implementation gets updated.\\n    event Upgraded(address indexed implementation);  \\n\\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\\n    constructor () {}\\n\\n    /// WitnetProxies will never accept direct transfer of ETHs.\\n    receive() external payable {\\n        revert(\\\"WitnetProxy: no transfers accepted\\\");\\n    }\\n\\n    /// Payable fallback accepts delegating calls to payable functions.  \\n    fallback() external payable { /* solhint-disable no-complex-fallback */\\n        address _implementation = implementation();\\n\\n        assembly { /* solhint-disable avoid-low-level-calls */\\n            // Gas optimized delegate call to 'implementation' contract.\\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \\n            //       to actual implementation of `msg.sig` within `implementation` contract.\\n            let ptr := mload(0x40)\\n            calldatacopy(ptr, 0, calldatasize())\\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\\n            let size := returndatasize()\\n            returndatacopy(ptr, 0, size)\\n            switch result\\n                case 0  { \\n                    // pass back revert message:\\n                    revert(ptr, size) \\n                }\\n                default {\\n                  // pass back same data as returned by 'implementation' contract:\\n                  return(ptr, size) \\n                }\\n        }\\n    }\\n\\n    /// Returns proxy's current implementation address.\\n    function implementation() public view returns (address) {\\n        return _proxySlot().implementation;\\n    }\\n\\n    /// Upgrades the `implementation` address.\\n    /// @param _newImplementation New implementation address.\\n    /// @param _initData Raw data with which new implementation will be initialized.\\n    /// @return Returns whether new implementation would be further upgradable, or not.\\n    function upgradeTo(address _newImplementation, bytes memory _initData)\\n        public returns (bool)\\n    {\\n        // New implementation cannot be null:\\n        require(_newImplementation != address(0), \\\"WitnetProxy: null implementation\\\");\\n\\n        address _oldImplementation = implementation();\\n        if (_oldImplementation != address(0)) {\\n            // New implementation address must differ from current one:\\n            require(_newImplementation != _oldImplementation, \\\"WitnetProxy: nothing to upgrade\\\");\\n\\n            // Assert whether current implementation is intrinsically upgradable:\\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\\n                require(_isUpgradable, \\\"WitnetProxy: not upgradable\\\");\\n            } catch {\\n                revert(\\\"WitnetProxy: unable to check upgradability\\\");\\n            }\\n\\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\\n                abi.encodeWithSignature(\\n                    \\\"isUpgradableFrom(address)\\\",\\n                    msg.sender\\n                )\\n            );\\n            require(_wasCalled, \\\"WitnetProxy: not compliant\\\");\\n            require(abi.decode(_result, (bool)), \\\"WitnetProxy: not authorized\\\");\\n            require(\\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\\n                \\\"WitnetProxy: proxiableUUIDs mismatch\\\"\\n            );\\n        }\\n\\n        // Initialize new implementation within proxy-context storage:\\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\\n            abi.encodeWithSignature(\\n                \\\"initialize(bytes)\\\",\\n                _initData\\n            )\\n        );\\n        require(_wasInitialized, \\\"WitnetProxy: unable to initialize\\\");\\n\\n        // If all checks and initialization pass, update implementation address:\\n        _proxySlot().implementation = _newImplementation;\\n        emit Upgraded(_newImplementation);\\n\\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\\n            return _isUpgradable;\\n        }\\n        catch {\\n            revert (\\\"WitnetProxy: not compliant\\\");\\n        }\\n    }\\n\\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\\n        assembly {\\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0xcfdb698b63b9300631b046ecd8e16dbff90e8b4e84fdf1d629195ad17c8234d0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\n/* solhint-disable var-name-mixedcase */\\n\\n// Inherits from:\\nimport \\\"../WitnetRequestBoard.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n// Eventual deployment dependencies:\\nimport \\\"./WitnetProxy.sol\\\";\\n\\n/// @title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoardUpgradableBase\\n    is\\n        Proxiable,\\n        Upgradable,\\n        WitnetRequestBoard\\n{\\n    bytes32 internal immutable _VERSION;\\n\\n    constructor(\\n            bool _upgradable,\\n            bytes32 _versionTag\\n        )\\n        Upgradable(_upgradable)\\n    {\\n        _VERSION = _versionTag;\\n    }\\n\\n    /// @dev Reverts if proxy delegatecalls to unexistent method.\\n    fallback() external payable {\\n        revert(\\\"WitnetRequestBoardUpgradableBase: not implemented\\\");\\n    }\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Proxiable' --------------------------------------------------------------------------------------\\n\\n    /// @dev Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\\n    ///      If implemented as an Upgradable touch, upgrading this contract to another one with a different \\n    ///      `proxiableUUID()` value should fail.\\n    function proxiableUUID() external pure override returns (bytes32) {\\n        return (\\n            /* keccak256(\\\"io.witnet.proxiable.board\\\") */\\n            0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018\\n        );\\n    }   \\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' --------------------------------------------------------------------------------------\\n\\n    /// Retrieves human-readable version tag of current implementation.\\n    function version() public view override returns (bytes32) {\\n        return _VERSION;\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0930557dfafb03730e716e0af67ba7637a562f304ead6f2cedfa2c0eee91a65c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../WitnetRequestBoardUpgradableBase.sol\\\";\\nimport \\\"../../data/WitnetBoardDataACLs.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdmin.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdminACLs.sol\\\";\\nimport \\\"../../libs/WitnetParserLib.sol\\\";\\nimport \\\"../../patterns/Payable.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" base implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\nabstract contract WitnetRequestBoardTrustableBase\\n    is \\n        Payable,\\n        IWitnetRequestBoardAdmin,\\n        IWitnetRequestBoardAdminACLs,        \\n        WitnetBoardDataACLs,\\n        WitnetRequestBoardUpgradableBase        \\n{\\n    using Witnet for bytes;\\n    using WitnetParserLib for Witnet.Result;\\n    \\n    constructor(bool _upgradable, bytes32 _versionTag, address _currency)\\n        Payable(_currency)\\n        WitnetRequestBoardUpgradableBase(_upgradable, _versionTag)\\n    {}\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' -------------------------------------------------------------------------------------\\n\\n    /// Initialize storage-context when invoked as delegatecall. \\n    /// @dev Must fail when trying to initialize same instance more than once.\\n    function initialize(bytes memory _initData) virtual external override {\\n        address _owner = _state().owner;\\n        if (_owner == address(0)) {\\n            // set owner if none set yet\\n            _owner = msg.sender;\\n            _state().owner = _owner;\\n        } else {\\n            // only owner can initialize:\\n            require(msg.sender == _owner, \\\"WitnetRequestBoardTrustableBase: only owner\\\");\\n        }        \\n\\n        if (_state().base != address(0)) {\\n            // current implementation cannot be initialized more than once:\\n            require(_state().base != base(), \\\"WitnetRequestBoardTrustableBase: already initialized\\\");\\n        }        \\n        _state().base = base();\\n\\n        emit Upgraded(msg.sender, base(), codehash(), version());\\n\\n        // Do actual base initialization:\\n        setReporters(abi.decode(_initData, (address[])));\\n    }\\n\\n    /// Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address _from) external view override returns (bool) {\\n        address _owner = _state().owner;\\n        return (\\n            // false if the WRB is intrinsically not upgradable, or `_from` is no owner\\n            isUpgradable()\\n                && _owner == _from\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdmin' ----------------------------------------------------------\\n\\n    /// Gets admin/owner address.\\n    function owner()\\n        public view\\n        override\\n        returns (address)\\n    {\\n        return _state().owner;\\n    }\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address _newOwner)\\n        external\\n        virtual override\\n        onlyOwner\\n    {\\n        address _owner = _state().owner;\\n        if (_newOwner != _owner) {\\n            _state().owner = _newOwner;\\n            emit OwnershipTransferred(_owner, _newOwner);\\n        }\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdminACLs' ------------------------------------------------------\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    /// @param _reporter The address to be checked.\\n    function isReporter(address _reporter) public view override returns (bool) {\\n        return _acls().isReporter_[_reporter];\\n    }\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    /// @param _reporters List of addresses to be added to the active reporters control list.\\n    function setReporters(address[] memory _reporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _reporters.length; ix ++) {\\n            address _reporter = _reporters[ix];\\n            _acls().isReporter_[_reporter] = true;\\n        }\\n        emit ReportersSet(_reporters);\\n    }\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    /// @param _exReporters List of addresses to be added to the active reporters control list.\\n    function unsetReporters(address[] memory _exReporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _exReporters.length; ix ++) {\\n            address _reporter = _exReporters[ix];\\n            _acls().isReporter_[_reporter] = false;\\n        }\\n        emit ReportersUnset(_exReporters);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardReporter' -------------------------------------------------------\\n\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        // solhint-disable not-rely-on-time\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                block.timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_timestamp <= block.timestamp, \\\"WitnetRequestBoardTrustableDefault: bad timestamp\\\");\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                _timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Fails if called from unauthorized address.\\n    /// @dev Emits a PostedResult event for every succesfully reported result, if any.\\n    /// @param _batchResults Array of BatchedResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, emits a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(\\n            BatchResult[] memory _batchResults,\\n            bool _verbose\\n        )\\n        external\\n        override\\n        onlyReporters\\n    {\\n        uint _batchReward;\\n        uint _batchSize = _batchResults.length;\\n        for ( uint _i = 0; _i < _batchSize; _i ++) {\\n            BatchResult memory _result = _batchResults[_i];\\n            if (_getQueryStatus(_result.queryId) != Witnet.QueryStatus.Posted) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad queryId\\\"\\n                    );\\n                }\\n            } else if (_result.drTxHash == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad drTxHash\\\"\\n                    );\\n                }\\n            } else if (_result.cborBytes.length == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId, \\n                        \\\"WitnetRequestBoardTrustableBase: bad cborBytes\\\"\\n                    );\\n                }\\n            } else if (_result.timestamp > 0 && _result.timestamp > block.timestamp) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad timestamp\\\"\\n                    );\\n                }\\n            } else {\\n                _batchReward += __reportResult(\\n                    _result.queryId,\\n                    _result.timestamp == 0 ? block.timestamp : _result.timestamp,\\n                    _result.drTxHash,\\n                    _result.cborBytes\\n                );\\n                emit PostedResult(\\n                    _result.queryId,\\n                    msg.sender\\n                );\\n            }\\n        }   \\n        // Transfer all successful rewards in one single shot to the authorized reporter, if any:\\n        if (_batchReward > 0) {\\n            _safeTransferTo(\\n                payable(msg.sender),\\n                _batchReward\\n            );\\n        }\\n    }\\n    \\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardRequestor' ------------------------------------------------------\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId)\\n        public\\n        virtual override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        require(\\n            msg.sender == __query.from,\\n            \\\"WitnetRequestBoardTrustableBase: only requester\\\"\\n        );\\n        _response = __query.response;\\n        delete _state().queries[_queryId];\\n        emit DeletedQuery(_queryId, msg.sender);\\n    }\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr)\\n        public payable\\n        virtual override\\n        returns (uint256 _queryId)\\n    {\\n        uint256 _value = _getMsgValue();\\n        uint256 _gasPrice = _getGasPrice();\\n\\n        // Checks the tally reward is covering gas cost\\n        uint256 minResultReward = estimateReward(_gasPrice);\\n        require(_value >= minResultReward, \\\"WitnetRequestBoardTrustableBase: reward too low\\\");\\n\\n        // Validates provided script:\\n        require(address(_addr) != address(0), \\\"WitnetRequestBoardTrustableBase: null script\\\");\\n        bytes memory _bytecode = _addr.bytecode();\\n        require(_bytecode.length > 0, \\\"WitnetRequestBoardTrustableBase: empty script\\\");\\n\\n        _queryId = ++ _state().numQueries;\\n        _state().queries[_queryId].from = msg.sender;\\n\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        _request.addr = _addr;\\n        _request.hash = _bytecode.hash();\\n        _request.gasprice = _gasPrice;\\n        _request.reward = _value;\\n\\n        // Let observers know that a new request has been posted\\n        emit PostedRequest(_queryId, msg.sender);\\n    }\\n    \\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId)\\n        public payable\\n        virtual override      \\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n\\n        uint256 _newReward = _request.reward + _getMsgValue();\\n        uint256 _newGasPrice = _getGasPrice();\\n\\n        // If gas price is increased, then check if new rewards cover gas costs\\n        if (_newGasPrice > _request.gasprice) {\\n            // Checks the reward is covering gas cost\\n            uint256 _minResultReward = estimateReward(_newGasPrice);\\n            require(\\n                _newReward >= _minResultReward,\\n                \\\"WitnetRequestBoardTrustableBase: reward too low\\\"\\n            );\\n            _request.gasprice = _newGasPrice;\\n        }\\n        _request.reward = _newReward;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardView' -----------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256);\\n\\n    /// Returns next request id to be generated by the Witnet Request Board.\\n    function getNextQueryId()\\n        external view \\n        override\\n        returns (uint256)\\n    {\\n        return _state().numQueries + 1;\\n    }\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId)\\n      external view\\n      override\\n      returns (Witnet.Query memory)\\n    {\\n        return _state().queries[_queryId];\\n    }\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId)\\n        external view\\n        override\\n        returns (Witnet.QueryStatus)\\n    {\\n        return _getQueryStatus(_queryId);\\n\\n    }\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (Witnet.Request memory _request)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        _request = __query.request;\\n        if (__query.from != address(0)) {\\n            _request.requester = __query.from;\\n        }\\n    }\\n    \\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId)\\n        external view\\n        override\\n        returns (bytes memory _bytecode)\\n    {\\n        require(\\n            _getQueryStatus(_queryId) != Witnet.QueryStatus.Unknown,\\n            \\\"WitnetRequestBoardTrustableBase: not yet posted\\\"\\n        );\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        if (address(_request.addr) != address(0)) {\\n            // if DR's request contract address is not zero,\\n            // we assume the DR has not been deleted, so\\n            // DR's bytecode can still be fetched:\\n            _bytecode = _request.addr.bytecode();\\n            require(\\n                _bytecode.hash() == _request.hash,\\n                \\\"WitnetRequestBoardTrustableBase: bytecode changed after posting\\\"\\n            );\\n        } \\n    }\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestGasPrice(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.gasprice;\\n    }\\n\\n    /// Retrieves the reward currently set for a previously posted request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestReward(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.reward;\\n    }\\n\\n    /// Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponse(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        return _getResponseData(_queryId);\\n    }\\n\\n    /// Retrieves the hash of the Witnet transaction that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId)\\n        external view        \\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (bytes32)\\n    {\\n        return _getResponseData(_queryId).drTxHash;\\n    }\\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseReporter(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (address)\\n    {\\n        return _getResponseData(_queryId).reporter;\\n    }\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseResult(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.Response storage _response = _getResponseData(_queryId);\\n        return WitnetParserLib.resultFromCborBytes(_response.cborBytes);\\n    }\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (uint256)\\n    {\\n        return _getResponseData(_queryId).timestamp;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestParser' interface ----------------------------------------------------\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborBytes(_cborBytes);\\n    }\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborValue(_cborValue);\\n    }\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isOk();\\n    }\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isError();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes memory)\\n    {\\n        return _result.asBytes();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes32)\\n    {\\n        return _result.asBytes32();\\n    }\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return _result.asErrorCode();\\n    }\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes, string memory)\\n    {\\n        try _result.asErrorMessage() returns (Witnet.ErrorCodes _code, string memory _message) {\\n            return (_code, _message);\\n        } \\n        catch Error(string memory _reason) {\\n            return (Witnet.ErrorCodes.Unknown, _reason);\\n        }\\n        catch (bytes memory) {\\n            return (Witnet.ErrorCodes.UnhandledIntercept, \\\"WitnetRequestBoardTrustableBase: failing assert\\\");\\n        }\\n    }\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns(uint64[] memory)\\n    {\\n        return _result.asRawError();\\n    }\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.asBool();\\n    }\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32)\\n    {\\n        return _result.asFixed16();\\n    }\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32[] memory)\\n    {\\n        return _result.asFixed16Array();\\n    }\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128)\\n    {\\n        return _result.asInt128();\\n    }\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128[] memory)\\n    {\\n        return _result.asInt128Array();\\n    }\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string memory)\\n    {\\n        return _result.asString();\\n    }\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string[] memory)\\n    {\\n        return _result.asStringArray();\\n    }\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure \\n        override\\n        returns(uint64)\\n    {\\n        return _result.asUint64();\\n    }\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (uint64[] memory)\\n    {\\n        return _result.asUint64Array();\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function __reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes memory _cborBytes\\n        )\\n        internal\\n        returns (uint256 _reward)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        Witnet.Request storage __request = __query.request;\\n        Witnet.Response storage __response = __query.response;\\n\\n        // solhint-disable not-rely-on-time\\n        __response.timestamp = _timestamp;\\n        __response.drTxHash = _drTxHash;\\n        __response.reporter = msg.sender;\\n        __response.cborBytes = _cborBytes;\\n\\n        // return request latest reward\\n        _reward = __request.reward;\\n\\n        // Request data won't be needed anymore, so it can just get deleted right now:  \\n        delete __query.request;\\n    }\\n}\\n\",\"keccak256\":\"0x6b6ccba7e686a69bf0847b9c541e3997f14f3f91246c63fbadd412ba78c4a8d4\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetRequestBoardTrustableBase.sol\\\";\\nimport \\\"../../patterns/Destructible.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\ncontract WitnetRequestBoardTrustableDefault\\n    is \\n        Destructible,\\n        WitnetRequestBoardTrustableBase\\n{  \\n    uint256 internal immutable _ESTIMATED_REPORT_RESULT_GAS;\\n\\n    constructor(\\n        bool _upgradable,\\n        bytes32 _versionTag,\\n        uint256 _reportResultGasLimit\\n    )\\n        WitnetRequestBoardTrustableBase(_upgradable, _versionTag, address(0))\\n    {\\n        _ESTIMATED_REPORT_RESULT_GAS = _reportResultGasLimit;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides implementation of 'IWitnetRequestBoardView' ------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return _gasPrice * _ESTIMATED_REPORT_RESULT_GAS;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Destructible' -----------------------------------------------------------------------------------\\n\\n    /// Destroys current instance. Only callable by the owner.\\n    function destruct() external override onlyOwner {\\n        selfdestruct(payable(msg.sender));\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Payable' ----------------------------------------------------------------------------------------\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice()\\n        internal view\\n        override\\n        returns (uint256)\\n    {\\n        return tx.gasprice;\\n    }\\n\\n    /// Gets current payment value.\\n    function _getMsgValue()\\n        internal view\\n        override\\n        returns (uint256)\\n    {\\n        return msg.value;\\n    }\\n\\n    /// Transfers ETHs to given address.\\n    /// @param _to Recipient address.\\n    /// @param _amount Amount of ETHs to transfer.\\n    function _safeTransferTo(address payable _to, uint256 _amount)\\n        internal\\n        override\\n    {\\n        payable(_to).transfer(_amount);\\n    }   \\n}\\n\",\"keccak256\":\"0xc89e1a65e9045323dda045c8552adc0a329697e2f144911b4059c68673999f9c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC20 standard as defined in the EIP.\\n */\\ninterface IERC20 {\\n    /// Returns the amount of tokens in existence.\\n    function totalSupply() external view returns (uint256);\\n\\n    /// Returns the amount of tokens owned by `_account`.\\n    function balanceOf(address _account) external view returns (uint256);\\n\\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event.\\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\\n\\n    /// Returns the remaining number of tokens that `_spender` will be\\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\\n    /// zero by default.\\n    /// This value changes when {approve} or {transferFrom} are called.\\n    function allowance(address _owner, address _spender) external view returns (uint256);\\n\\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// \\n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\\n    /// that someone may use both the old and the new allowance by unfortunate\\n    /// transaction ordering. One possible solution to mitigate this race\\n    /// condition is to first reduce the spender's allowance to 0 and set the\\n    /// desired value afterwards:\\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\\n    ///\\n    /// Emits an {Approval} event.     \\n    function approve(address _spender, uint256 _amount) external returns (bool);\\n\\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\\n    /// allowance mechanism. `amount` is then deducted from the caller's\\n    /// allowance.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event. \\n    function transferFrom(\\n        address _sender,\\n        address _recipient,\\n        uint256 _amount\\n    ) external returns (bool);\\n\\n    /// Emitted when `value` tokens are moved from one account (`from`) to\\n    /// another (`to`).\\n    /// Note that `:value` may be zero.\\n    event Transfer(address indexed from, address indexed to, uint256 value);\\n\\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\\n    /// a call to {approve}. `value` is the new allowance.\\n    event Approval(address indexed owner, address indexed spender, uint256 value);\\n}\\n\",\"keccak256\":\"0xd6b25613fab1f6172ca58e377371a0b708f1af8982961364fecf9da196213f48\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board basic administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdmin {\\n    event OwnershipTransferred(address indexed from, address indexed to);\\n\\n    /// Gets admin/owner address.\\n    function owner() external view returns (address);\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address) external;\\n}\\n\",\"keccak256\":\"0xa88e828c55cb4e2c1ef02c9204e367d3034fc2e35cc881581d898942b9715d50\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board ACLs administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdminACLs {\\n    event ReportersSet(address[] reporters);\\n    event ReportersUnset(address[] reporters);\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    function isReporter(address) external view returns (bool);\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    function setReporters(address[] calldata reporters) external;\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    function unsetReporters(address[] calldata reporters) external;\\n}\\n\",\"keccak256\":\"0xafcd6f01a977d597032b341fec291ea7e26b1dac3eb13eced8b37d89eb76e4ff\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetBuffer.sol\\\";\\n\\n/// @title A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\\n/// the gas cost of decoding them into a useful native type.\\n/// @dev Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\\n/// @author The Witnet Foundation.\\n/// \\n/// TODO: add support for Array (majorType = 4)\\n/// TODO: add support for Map (majorType = 5)\\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \\n\\nlibrary WitnetDecoderLib {\\n\\n  using WitnetBuffer for Witnet.Buffer;\\n\\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bool` value.\\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\\\");\\n    if (_cborValue.len == 20) {\\n      return false;\\n    } else if (_cborValue.len == 21) {\\n      return true;\\n    } else {\\n      revert(\\\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\\\");\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bytes` value.   \\n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT32_MAX) {\\n      bytes memory bytesData;\\n\\n      // These checks look repetitive but the equivalent loop would be more expensive.\\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n      if (itemLength < _UINT32_MAX) {\\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n        if (itemLength < _UINT32_MAX) {\\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        }\\n      }\\n      return bytesData;\\n    } else {\\n      return _cborValue.buffer.read(uint32(_cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\\n    bytes memory _bb = decodeBytes(_cborValue);\\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\\n    for (uint _i = 0; _i < _len; _i ++) {\\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\\\");\\n    require(_cborValue.additionalInformation == 25, \\\"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\\\");\\n    return _cborValue.buffer.readFloat16();\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\\n  /// as explained in `decodeFixed16`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int32[] memory array = new int32[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeFixed16(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\\n    if (_cborValue.majorType == 1) {\\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n      return int128(-1) - int128(uint128(length));\\n    } else if (_cborValue.majorType == 0) {\\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\\n      // a uniform API for positive and negative numbers\\n      return int128(uint128(decodeUint64(_cborValue)));\\n    }\\n    revert(\\\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\\\");\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int128[] memory array = new int128[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeInt128(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `string` value.\\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT64_MAX) {\\n      bytes memory textData;\\n      bool done;\\n      while (!done) {\\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\\n        if (itemLength < _UINT64_MAX) {\\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\\n        } else {\\n          done = true;\\n        }\\n      }\\n      return string(textData);\\n    } else {\\n      return string(readText(_cborValue.buffer, _cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `string[]` value.\\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    string[] memory array = new string[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeString(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64` value.\\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\\n    require(_cborValue.majorType == 0, \\\"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\\\");\\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64[]` value.\\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    uint64[] memory array = new uint64[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeUint64(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\\n\\n    return valueFromBuffer(buffer);\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\\n    require(_buffer.data.length > 0, \\\"WitnetDecoderLib: Found empty buffer when parsing CBOR value\\\");\\n\\n    uint8 initialByte;\\n    uint8 majorType = 255;\\n    uint8 additionalInformation;\\n    uint64 tag = _UINT64_MAX;\\n\\n    bool isTagged = true;\\n    while (isTagged) {\\n      // Extract basic CBOR properties from input bytes\\n      initialByte = _buffer.readUint8();\\n      majorType = initialByte >> 5;\\n      additionalInformation = initialByte & 0x1f;\\n\\n      // Early CBOR tag parsing.\\n      if (majorType == 6) {\\n        tag = readLength(_buffer, additionalInformation);\\n      } else {\\n        isTagged = false;\\n      }\\n    }\\n\\n    require(majorType <= 7, \\\"WitnetDecoderLib: Invalid CBOR major type\\\");\\n\\n    return Witnet.CBOR(\\n      _buffer,\\n      initialByte,\\n      majorType,\\n      additionalInformation,\\n      0,\\n      tag);\\n  }\\n\\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\\n  /// value of the `additionalInformation` argument.\\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\\n    if (additionalInformation < 24) {\\n      return additionalInformation;\\n    }\\n    if (additionalInformation == 24) {\\n      return _buffer.readUint8();\\n    }\\n    if (additionalInformation == 25) {\\n      return _buffer.readUint16();\\n    }\\n    if (additionalInformation == 26) {\\n      return _buffer.readUint32();\\n    }\\n    if (additionalInformation == 27) {\\n      return _buffer.readUint64();\\n    }\\n    if (additionalInformation == 31) {\\n      return _UINT64_MAX;\\n    }\\n    revert(\\\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\\\");\\n  }\\n\\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\\n  /// as many bytes as specified by the first byte.\\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\\n    uint8 initialByte = _buffer.readUint8();\\n    if (initialByte == 0xff) {\\n      return _UINT64_MAX;\\n    }\\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \\\"WitnetDecoderLib: Invalid indefinite length\\\");\\n    return length;\\n  }\\n\\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\\n  /// but it can be easily casted into a string with `string(result)`.\\n  // solium-disable-next-line security/no-assign-params\\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\\n    bytes memory result;\\n    for (uint64 index = 0; index < _length; index++) {\\n      uint8 value = _buffer.readUint8();\\n      if (value & 0x80 != 0) {\\n        if (value < 0xe0) {\\n          value = (value & 0x1f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 1;\\n        } else if (value < 0xf0) {\\n          value = (value & 0x0f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 2;\\n        } else {\\n          value = (value & 0x0f) << 18 |\\n            (_buffer.readUint8() & 0x3f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6  |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 3;\\n        }\\n      }\\n      result = abi.encodePacked(result, value);\\n    }\\n    return result;\\n  }\\n}\\n\",\"keccak256\":\"0xb8f5b618ebae15a7f5d21870ac8ba7034afe5dce876b53a1a81572378a817c32\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetDecoderLib.sol\\\";\\n\\n/// @title A library for decoding Witnet request results\\n/// @notice The library exposes functions to check the Witnet request success.\\n/// and retrieve Witnet results from CBOR values into solidity types.\\n/// @author The Witnet Foundation.\\nlibrary WitnetParserLib {\\n\\n    using WitnetDecoderLib for bytes;\\n    using WitnetDecoderLib for Witnet.CBOR;\\n\\n    /// @notice Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes calldata _cborBytes)\\n        external pure\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.CBOR memory cborValue = _cborBytes.valueFromBytes();\\n        return resultFromCborValue(cborValue);\\n    }\\n\\n    /// @notice Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.Value`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        public pure\\n        returns (Witnet.Result memory)    \\n    {\\n        // Witnet uses CBOR tag 39 to represent RADON error code identifiers.\\n        // [CBOR tag 39] Identifiers for CBOR: https://github.com/lucas-clemente/cbor-specs/blob/master/id.md\\n        bool success = _cborValue.tag != 39;\\n        return Witnet.Result(success, _cborValue);\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        return _result.success;\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n      external pure\\n      returns (bool)\\n    {\\n        return !_result.success;\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes();\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes32();\\n    }\\n\\n    /// @notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return Witnet.ErrorCodes.Unknown;\\n        }\\n        return _supportedErrorOrElseUnknown(error[0]);\\n    }\\n\\n    /// @notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n      public pure\\n      returns (Witnet.ErrorCodes, string memory)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return (Witnet.ErrorCodes.Unknown, \\\"Unknown error (no error code)\\\");\\n        }\\n        Witnet.ErrorCodes errorCode = _supportedErrorOrElseUnknown(error[0]);\\n        bytes memory errorMessage;\\n\\n        if (errorCode == Witnet.ErrorCodes.SourceScriptNotCBOR && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid CBOR value\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotArray && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not an Array of calls\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotRADON && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid Data Request\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RequestTooManySources && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The request contained too many sources (\\\", \\n                _utoa(error[1]), \\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.ScriptTooManyCalls && error.length >= 4) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Script #\\\",\\n                _utoa(error[2]),\\n                \\\" from the \\\",\\n                stageName(error[1]),\\n                \\\" stage contained too many calls (\\\",\\n                _utoa(error[3]),\\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.UnsupportedOperator && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage is not supported\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.HTTP && error.length >= 3) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved. Failed with HTTP error code: \\\",\\n                _utoa(error[2] / 100),\\n                _utoa(error[2] % 100 / 10),\\n                _utoa(error[2] % 10)\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RetrievalTimeout && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved because of a timeout\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Underflow && error.length >= 5) {\\n              errorMessage = abi.encodePacked(\\n                \\\"Underflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Overflow && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Overflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.DivisionByZero && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Division by zero at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeMalformedRequest) {\\n            errorMessage = \\\"The structure of the request is invalid and it cannot be parsed\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgePoorIncentives) {\\n            errorMessage = \\\"The request has been rejected by the bridge node due to poor incentives\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeOversizedResult) {\\n            errorMessage = \\\"The request result length exceeds a bridge contract defined limit\\\";\\n        } else {\\n            errorMessage = abi.encodePacked(\\\"Unknown error (0x\\\", _utohex(error[0]), \\\")\\\");\\n        }\\n        return (errorCode, string(errorMessage));\\n    }\\n\\n    /// @notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        public pure\\n        returns(uint64[] memory)\\n    {\\n        require(\\n            !_result.success,\\n            \\\"WitnetParserLib: Tried to read error code from successful Witnet.Result\\\"\\n        );\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\\\");\\n        return _result.value.decodeBool();\\n    }\\n\\n    /// @notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        returns (int32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16();\\n    }\\n\\n    /// @notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int32[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16Array();\\n    }\\n\\n    /// @notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n      external pure\\n      returns (int128)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128();\\n    }\\n\\n    /// @notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int128[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128Array();\\n    }\\n\\n    /// @notice Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        returns(string memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\\\");\\n        return _result.value.decodeString();\\n    }\\n\\n    /// @notice Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        returns (string[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeStringArray();\\n    }\\n\\n    /// @notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure\\n        returns(uint64)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64();\\n    }\\n\\n    /// @notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        returns (uint64[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Convert a stage index number into the name of the matching Witnet request stage.\\n    /// @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\\n    /// @return The name of the matching stage.\\n    function stageName(uint64 _stageIndex)\\n        public pure\\n        returns (string memory)\\n    {\\n        if (_stageIndex == 0) {\\n            return \\\"retrieval\\\";\\n        } else if (_stageIndex == 1) {\\n            return \\\"aggregation\\\";\\n        } else if (_stageIndex == 2) {\\n            return \\\"tally\\\";\\n        } else {\\n            return \\\"unknown\\\";\\n        }\\n    }\\n\\n    /// @notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\\n    /// @param _discriminant The numeric identifier of an error.\\n    /// @return A member of `Witnet.ErrorCodes`.\\n    function _supportedErrorOrElseUnknown(uint64 _discriminant)\\n        private pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return Witnet.ErrorCodes(_discriminant);\\n    }\\n\\n    /// @notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\\n    /// three less significant decimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its decimal value.\\n    function _utoa(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        if (_u < 10) {\\n            bytes memory b1 = new bytes(1);\\n            b1[0] = bytes1(uint8(_u) + 48);\\n            return string(b1);\\n        } else if (_u < 100) {\\n            bytes memory b2 = new bytes(2);\\n            b2[0] = bytes1(uint8(_u / 10) + 48);\\n            b2[1] = bytes1(uint8(_u % 10) + 48);\\n            return string(b2);\\n        } else {\\n            bytes memory b3 = new bytes(3);\\n            b3[0] = bytes1(uint8(_u / 100) + 48);\\n            b3[1] = bytes1(uint8(_u % 100 / 10) + 48);\\n            b3[2] = bytes1(uint8(_u % 10) + 48);\\n            return string(b3);\\n        }\\n    }\\n\\n    /// @notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its hexadecimal value.\\n    function _utohex(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        bytes memory b2 = new bytes(2);\\n        uint8 d0 = uint8(_u / 16) + 48;\\n        uint8 d1 = uint8(_u % 16) + 48;\\n        if (d0 > 57)\\n            d0 += 7;\\n        if (d1 > 57)\\n            d1 += 7;\\n        b2[0] = bytes1(d0);\\n        b2[1] = bytes1(d1);\\n        return string(b2);\\n    }\\n}\\n\",\"keccak256\":\"0x250634a50e7ad8aaa9f3dde002ca3718de06a65b93be86896011331b996403f0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Destructible.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Destructible {\\n    /// @dev Self-destruct the whole contract.\\n    function destruct() external;\\n}\\n\",\"keccak256\":\"0x58c9296ad2920fd26779933226ac807a70d6d70963965b781780e53f69625c87\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Payable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"../interfaces/IERC20.sol\\\";\\n\\nabstract contract Payable {\\n    IERC20 public immutable currency;\\n\\n    event Received(address from, uint256 amount);\\n    event Transfer(address to, uint256 amount);\\n\\n    constructor(address _currency) {\\n        currency = IERC20(_currency);\\n    }\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice() internal view virtual returns (uint256);\\n\\n    /// Gets current payment value.\\n    function _getMsgValue() internal view virtual returns (uint256);\\n\\n    /// Perform safe transfer or whatever token is used for paying rewards.\\n    function _safeTransferTo(address payable, uint256) internal virtual;\\n}\\n\",\"keccak256\":\"0xc7f50e489030643b7f061512ad0d8430abc87351941a77589f6b06376c5831b9\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\nabstract contract WitnetRequestBase\\n    is\\n        IWitnetRequest\\n{\\n    /// Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\\n    bytes public override bytecode;\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    bytes32 public override hash;\\n}\\n\",\"keccak256\":\"0x1a3220346005ca91601a89896523f67bdd0fd3dc79b6e684d3e5dbf20f11c5ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetRequestBase.sol\\\";\\nimport \\\"../patterns/Initializable.sol\\\";\\n\\nabstract contract WitnetRequestInitializableBase\\n    is\\n        Initializable,\\n        WitnetRequestBase\\n{\\n    using Witnet for bytes;\\n    function initialize(bytes memory _bytecode)\\n        public\\n        virtual override\\n    {\\n        require(\\n            bytecode.length == 0,\\n            \\\"WitnetRequestInitializableBase: cannot change bytecode\\\"\\n        );\\n        bytecode = _bytecode;\\n        hash = _bytecode.hash();\\n    }\\n}\\n\",\"keccak256\":\"0x9d2956ca1e83989996c70e5419130dc95168cf6cfeee39f4896b13d0505f78b0\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8265,"contract":"contracts/witnet-requests/coinPrice.sol:coinPriceRequest","label":"bytecode","offset":0,"slot":"0","type":"t_bytes_storage"},{"astId":8269,"contract":"contracts/witnet-requests/coinPrice.sol:coinPriceRequest","label":"hash","offset":0,"slot":"1","type":"t_bytes32"}],"types":{"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"}}},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers."},"hash()":{"notice":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."}},"version":1}}},"contracts/witnet-requests/postAPI.sol":{"postAPIRequest":{"abi":[{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_bytecode","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"608060405234801561001057600080fd5b506107ea806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806309bd5a6014610051578063439fab911461006f5780638129fc1c1461008b578063f094000214610095575b600080fd5b6100596100b3565b604051610066919061048d565b60405180910390f35b61008960048036038101906100849190610391565b6100b9565b005b610093610132565b005b61009d610155565b6040516100aa91906104a8565b60405180910390f35b60015481565b60008080546100c7906105c4565b905014610109576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610100906104ca565b60405180910390fd5b806000908051906020019061011f92919061023c565b50610129816101e3565b60018190555050565b6101536040518060e0016040528060a4815260200161071160a491396100b9565b565b60008054610162906105c4565b80601f016020809104026020016040519081016040528092919081815260200182805461018e906105c4565b80156101db5780601f106101b0576101008083540402835291602001916101db565b820191906000526020600020905b8154815290600101906020018083116101be57829003601f168201915b505050505081565b60006002826040516101f59190610476565b602060405180830381855afa158015610212573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102359190610364565b9050919050565b828054610248906105c4565b90600052602060002090601f01602090048101928261026a57600085556102b1565b82601f1061028357805160ff19168380011785556102b1565b828001600101855582156102b1579182015b828111156102b0578251825591602001919060010190610295565b5b5090506102be91906102c2565b5090565b5b808211156102db5760008160009055506001016102c3565b5090565b60006102f26102ed8461050f565b6104ea565b90508281526020810184848401111561030e5761030d61068a565b5b610319848285610582565b509392505050565b600081519050610330816106f9565b92915050565b600082601f83011261034b5761034a610685565b5b813561035b8482602086016102df565b91505092915050565b60006020828403121561037a57610379610694565b5b600061038884828501610321565b91505092915050565b6000602082840312156103a7576103a6610694565b5b600082013567ffffffffffffffff8111156103c5576103c461068f565b5b6103d184828501610336565b91505092915050565b6103e381610578565b82525050565b60006103f482610540565b6103fe818561054b565b935061040e818560208601610591565b61041781610699565b840191505092915050565b600061042d82610540565b610437818561055c565b9350610447818560208601610591565b80840191505092915050565b6000610460603683610567565b915061046b826106aa565b604082019050919050565b60006104828284610422565b915081905092915050565b60006020820190506104a260008301846103da565b92915050565b600060208201905081810360008301526104c281846103e9565b905092915050565b600060208201905081810360008301526104e381610453565b9050919050565b60006104f4610505565b905061050082826105f6565b919050565b6000604051905090565b600067ffffffffffffffff82111561052a57610529610656565b5b61053382610699565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000819050919050565b82818337600083830152505050565b60005b838110156105af578082015181840152602081019050610594565b838111156105be576000848401525b50505050565b600060028204905060018216806105dc57607f821691505b602082108114156105f0576105ef610627565b5b50919050565b6105ff82610699565b810181811067ffffffffffffffff8211171561061e5761061d610656565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f5769746e657452657175657374496e697469616c697a61626c65426173653a2060008201527f63616e6e6f74206368616e67652062797465636f646500000000000000000000602082015250565b61070281610578565b811461070d57600080fd5b5056fe0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01a26469706673582212209196489b848acb482ff004f2548277b6814cf6e132615f00045b6fb6b79decef64736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x7EA DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x8129FC1C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x95 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x48D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x89 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x391 JUMP JUMPDEST PUSH2 0xB9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x93 PUSH2 0x132 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x9D PUSH2 0x155 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAA SWAP2 SWAP1 PUSH2 0x4A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0xC7 SWAP1 PUSH2 0x5C4 JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x109 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x100 SWAP1 PUSH2 0x4CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x0 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x11F SWAP3 SWAP2 SWAP1 PUSH2 0x23C JUMP JUMPDEST POP PUSH2 0x129 DUP2 PUSH2 0x1E3 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH2 0x153 PUSH1 0x40 MLOAD DUP1 PUSH1 0xE0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xA4 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x711 PUSH1 0xA4 SWAP2 CODECOPY PUSH2 0xB9 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x162 SWAP1 PUSH2 0x5C4 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 0x18E SWAP1 PUSH2 0x5C4 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1DB JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1B0 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1DB 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 0x1BE JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F5 SWAP2 SWAP1 PUSH2 0x476 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x212 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0x235 SWAP2 SWAP1 PUSH2 0x364 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x248 SWAP1 PUSH2 0x5C4 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x26A JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x2B1 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x283 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x2B1 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x2B1 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x2B0 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x295 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2BE SWAP2 SWAP1 PUSH2 0x2C2 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2DB JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2C3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F2 PUSH2 0x2ED DUP5 PUSH2 0x50F JUMP JUMPDEST PUSH2 0x4EA JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x30E JUMPI PUSH2 0x30D PUSH2 0x68A JUMP JUMPDEST JUMPDEST PUSH2 0x319 DUP5 DUP3 DUP6 PUSH2 0x582 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x330 DUP2 PUSH2 0x6F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x34B JUMPI PUSH2 0x34A PUSH2 0x685 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x35B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x37A JUMPI PUSH2 0x379 PUSH2 0x694 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x388 DUP5 DUP3 DUP6 ADD PUSH2 0x321 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3A7 JUMPI PUSH2 0x3A6 PUSH2 0x694 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3C5 JUMPI PUSH2 0x3C4 PUSH2 0x68F JUMP JUMPDEST JUMPDEST PUSH2 0x3D1 DUP5 DUP3 DUP6 ADD PUSH2 0x336 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3E3 DUP2 PUSH2 0x578 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F4 DUP3 PUSH2 0x540 JUMP JUMPDEST PUSH2 0x3FE DUP2 DUP6 PUSH2 0x54B JUMP JUMPDEST SWAP4 POP PUSH2 0x40E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x591 JUMP JUMPDEST PUSH2 0x417 DUP2 PUSH2 0x699 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42D DUP3 PUSH2 0x540 JUMP JUMPDEST PUSH2 0x437 DUP2 DUP6 PUSH2 0x55C JUMP JUMPDEST SWAP4 POP PUSH2 0x447 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x591 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x460 PUSH1 0x36 DUP4 PUSH2 0x567 JUMP JUMPDEST SWAP2 POP PUSH2 0x46B DUP3 PUSH2 0x6AA JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x482 DUP3 DUP5 PUSH2 0x422 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4A2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3DA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4C2 DUP2 DUP5 PUSH2 0x3E9 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 0x4E3 DUP2 PUSH2 0x453 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F4 PUSH2 0x505 JUMP JUMPDEST SWAP1 POP PUSH2 0x500 DUP3 DUP3 PUSH2 0x5F6 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 0x52A JUMPI PUSH2 0x529 PUSH2 0x656 JUMP JUMPDEST JUMPDEST PUSH2 0x533 DUP3 PUSH2 0x699 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 DUP2 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 DUP2 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 0x5AF JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x594 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x5BE 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 0x5DC JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x5F0 JUMPI PUSH2 0x5EF PUSH2 0x627 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5FF DUP3 PUSH2 0x699 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x61E JUMPI PUSH2 0x61D PUSH2 0x656 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374496E697469616C697A61626C65426173653A20 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63616E6E6F74206368616E67652062797465636F646500000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x702 DUP2 PUSH2 0x578 JUMP JUMPDEST DUP2 EQ PUSH2 0x70D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID EXP DUP11 ADD SLT PUSH19 0x803121868747470733A2F2F6874747062696E 0x2E PUSH16 0x72672F706F73741A1D83187782186667 PUSH9 0x656164657273821867 PUSH12 0x4865616465722D4E616D6522 XOR SLOAD PUSH9 0x697320697320746865 KECCAK256 PUSH19 0x65717565737420626F64792A1B0A0B48656164 PUSH6 0x722D4E616D65 SLT 0xC BASEFEE PUSH6 0x616465722D56 PUSH2 0x6C75 PUSH6 0x1A090A050808 SLT ADD DUP1 LT MUL 0x22 MULMOD EXP SDIV ADDMOD ADDMOD SLT ADD DUP1 LT MUL LT DUP1 0xE4 SWAP8 0xD0 SLT XOR EXP KECCAK256 DUP1 SWAP5 0xEB 0xDC SUB 0x28 CALLER ADDRESS DUP1 0xE8 0xED LOG1 0xBA ADD LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP2 SWAP7 BASEFEE SWAP12 DUP5 DUP11 0xCB BASEFEE 0x2F CREATE DIV CALLCODE SLOAD DUP3 PUSH24 0xB6814CF6E132615F00045B6FB6B79DECEF64736F6C634300 ADDMOD SMOD STOP CALLER ","sourceMap":"566:480:7:-:0;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@bytecode_8265":{"entryPoint":341,"id":8265,"parameterSlots":0,"returnSlots":0},"@hash_4301":{"entryPoint":483,"id":4301,"parameterSlots":1,"returnSlots":1},"@hash_8269":{"entryPoint":179,"id":8269,"parameterSlots":0,"returnSlots":0},"@initialize_248":{"entryPoint":306,"id":248,"parameterSlots":0,"returnSlots":0},"@initialize_8306":{"entryPoint":185,"id":8306,"parameterSlots":1,"returnSlots":0},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":735,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":801,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":822,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":868,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":913,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes32_to_t_bytes32_fromStack":{"entryPoint":986,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":1001,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":1058,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack":{"entryPoint":1107,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":1142,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed":{"entryPoint":1165,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":1192,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":1226,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_memory":{"entryPoint":1258,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":1285,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":1295,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":1344,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":1355,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":1372,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":1383,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":1400,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":1410,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":1425,"id":null,"parameterSlots":3,"returnSlots":0},"extract_byte_array_length":{"entryPoint":1476,"id":null,"parameterSlots":1,"returnSlots":1},"finalize_allocation":{"entryPoint":1526,"id":null,"parameterSlots":2,"returnSlots":0},"panic_error_0x22":{"entryPoint":1575,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":1622,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":1669,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":1674,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":1679,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":1684,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":1689,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5":{"entryPoint":1706,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":1785,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:7933:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"486:80:46","statements":[{"nodeType":"YulAssignment","src":"496:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"511:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"505:5:46"},"nodeType":"YulFunctionCall","src":"505:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"496:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"554:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"527:26:46"},"nodeType":"YulFunctionCall","src":"527:33:46"},"nodeType":"YulExpressionStatement","src":"527:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"464:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"472:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"480:5:46","type":""}],"src":"423:143:46"},{"body":{"nodeType":"YulBlock","src":"646:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"695:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"697:77:46"},"nodeType":"YulFunctionCall","src":"697:79:46"},"nodeType":"YulExpressionStatement","src":"697:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"674:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"682:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"670:3:46"},"nodeType":"YulFunctionCall","src":"670:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"689:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"666:3:46"},"nodeType":"YulFunctionCall","src":"666:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"659:6:46"},"nodeType":"YulFunctionCall","src":"659:35:46"},"nodeType":"YulIf","src":"656:122:46"},{"nodeType":"YulVariableDeclaration","src":"787:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"814:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"801:12:46"},"nodeType":"YulFunctionCall","src":"801:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"791:6:46","type":""}]},{"nodeType":"YulAssignment","src":"830:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"890:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"898:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"886:3:46"},"nodeType":"YulFunctionCall","src":"886:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"905:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"913:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"839:46:46"},"nodeType":"YulFunctionCall","src":"839:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"830:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"624:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"632:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"640:5:46","type":""}],"src":"585:338:46"},{"body":{"nodeType":"YulBlock","src":"1006:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"1052:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1054:77:46"},"nodeType":"YulFunctionCall","src":"1054:79:46"},"nodeType":"YulExpressionStatement","src":"1054:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1027:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1036:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1023:3:46"},"nodeType":"YulFunctionCall","src":"1023:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1048:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1019:3:46"},"nodeType":"YulFunctionCall","src":"1019:32:46"},"nodeType":"YulIf","src":"1016:119:46"},{"nodeType":"YulBlock","src":"1145:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1160:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1174:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1164:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1189:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1235:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1246:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1231:3:46"},"nodeType":"YulFunctionCall","src":"1231:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1255:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"1199:31:46"},"nodeType":"YulFunctionCall","src":"1199:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1189:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"976:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"987:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"999:6:46","type":""}],"src":"929:351:46"},{"body":{"nodeType":"YulBlock","src":"1361:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"1407:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1409:77:46"},"nodeType":"YulFunctionCall","src":"1409:79:46"},"nodeType":"YulExpressionStatement","src":"1409:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1382:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1391:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1378:3:46"},"nodeType":"YulFunctionCall","src":"1378:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1403:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1374:3:46"},"nodeType":"YulFunctionCall","src":"1374:32:46"},"nodeType":"YulIf","src":"1371:119:46"},{"nodeType":"YulBlock","src":"1500:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1515:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1546:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1557:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1542:3:46"},"nodeType":"YulFunctionCall","src":"1542:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1529:12:46"},"nodeType":"YulFunctionCall","src":"1529:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1519:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1607:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"1609:77:46"},"nodeType":"YulFunctionCall","src":"1609:79:46"},"nodeType":"YulExpressionStatement","src":"1609:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1579:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1587:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1576:2:46"},"nodeType":"YulFunctionCall","src":"1576:30:46"},"nodeType":"YulIf","src":"1573:117:46"},{"nodeType":"YulAssignment","src":"1704:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1748:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1759:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1744:3:46"},"nodeType":"YulFunctionCall","src":"1744:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1768:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1714:29:46"},"nodeType":"YulFunctionCall","src":"1714:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1704:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1331:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1342:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1354:6:46","type":""}],"src":"1286:507:46"},{"body":{"nodeType":"YulBlock","src":"1864:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1881:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1904:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"1886:17:46"},"nodeType":"YulFunctionCall","src":"1886:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1874:6:46"},"nodeType":"YulFunctionCall","src":"1874:37:46"},"nodeType":"YulExpressionStatement","src":"1874:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1852:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1859:3:46","type":""}],"src":"1799:118:46"},{"body":{"nodeType":"YulBlock","src":"2013:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2023:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2069:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"2037:31:46"},"nodeType":"YulFunctionCall","src":"2037:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2027:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2084:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2149:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2154:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2091:57:46"},"nodeType":"YulFunctionCall","src":"2091:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2084:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2196:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2203:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2192:3:46"},"nodeType":"YulFunctionCall","src":"2192:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"2210:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2215:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"2170:21:46"},"nodeType":"YulFunctionCall","src":"2170:52:46"},"nodeType":"YulExpressionStatement","src":"2170:52:46"},{"nodeType":"YulAssignment","src":"2231:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2242:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2269:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"2247:21:46"},"nodeType":"YulFunctionCall","src":"2247:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2238:3:46"},"nodeType":"YulFunctionCall","src":"2238:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2231:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1994:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2001:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2009:3:46","type":""}],"src":"1923:360:46"},{"body":{"nodeType":"YulBlock","src":"2397:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2407:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2453:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"2421:31:46"},"nodeType":"YulFunctionCall","src":"2421:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2411:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2468:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2551:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2556:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"2475:75:46"},"nodeType":"YulFunctionCall","src":"2475:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2468:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2598:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2605:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2594:3:46"},"nodeType":"YulFunctionCall","src":"2594:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"2612:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2617:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"2572:21:46"},"nodeType":"YulFunctionCall","src":"2572:52:46"},"nodeType":"YulExpressionStatement","src":"2572:52:46"},{"nodeType":"YulAssignment","src":"2633:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2644:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2649:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2640:3:46"},"nodeType":"YulFunctionCall","src":"2640:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2633:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2378:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2385:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2393:3:46","type":""}],"src":"2289:373:46"},{"body":{"nodeType":"YulBlock","src":"2814:220:46","statements":[{"nodeType":"YulAssignment","src":"2824:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2890:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2895:2:46","type":"","value":"54"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2831:58:46"},"nodeType":"YulFunctionCall","src":"2831:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2824:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2996:3:46"}],"functionName":{"name":"store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5","nodeType":"YulIdentifier","src":"2907:88:46"},"nodeType":"YulFunctionCall","src":"2907:93:46"},"nodeType":"YulExpressionStatement","src":"2907:93:46"},{"nodeType":"YulAssignment","src":"3009:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3020:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3025:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3016:3:46"},"nodeType":"YulFunctionCall","src":"3016:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3009:3:46"}]}]},"name":"abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"2802:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2810:3:46","type":""}],"src":"2668:366:46"},{"body":{"nodeType":"YulBlock","src":"3174:137:46","statements":[{"nodeType":"YulAssignment","src":"3185:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3272:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"3281:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"3192:79:46"},"nodeType":"YulFunctionCall","src":"3192:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"3185:3:46"}]},{"nodeType":"YulAssignment","src":"3295:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"3302:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3295:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3153:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3159:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3170:3:46","type":""}],"src":"3040:271:46"},{"body":{"nodeType":"YulBlock","src":"3415:124:46","statements":[{"nodeType":"YulAssignment","src":"3425:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3437:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3448:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3433:3:46"},"nodeType":"YulFunctionCall","src":"3433:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3425:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3505:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3518:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3529:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3514:3:46"},"nodeType":"YulFunctionCall","src":"3514:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"3461:43:46"},"nodeType":"YulFunctionCall","src":"3461:71:46"},"nodeType":"YulExpressionStatement","src":"3461:71:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3387:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3399:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"3410:4:46","type":""}],"src":"3317:222:46"},{"body":{"nodeType":"YulBlock","src":"3661:193:46","statements":[{"nodeType":"YulAssignment","src":"3671:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3683:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3694:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3679:3:46"},"nodeType":"YulFunctionCall","src":"3679:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3671:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3718:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3729:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3714:3:46"},"nodeType":"YulFunctionCall","src":"3714:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"3737:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3743:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3733:3:46"},"nodeType":"YulFunctionCall","src":"3733:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3707:6:46"},"nodeType":"YulFunctionCall","src":"3707:47:46"},"nodeType":"YulExpressionStatement","src":"3707:47:46"},{"nodeType":"YulAssignment","src":"3763:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"3833:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"3842:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"3771:61:46"},"nodeType":"YulFunctionCall","src":"3771:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"3763:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3633:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3645:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"3656:4:46","type":""}],"src":"3545:309:46"},{"body":{"nodeType":"YulBlock","src":"4031:248:46","statements":[{"nodeType":"YulAssignment","src":"4041:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4053:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"4064:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4049:3:46"},"nodeType":"YulFunctionCall","src":"4049:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"4041:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4088:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"4099:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4084:3:46"},"nodeType":"YulFunctionCall","src":"4084:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"4107:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"4113:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"4103:3:46"},"nodeType":"YulFunctionCall","src":"4103:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4077:6:46"},"nodeType":"YulFunctionCall","src":"4077:47:46"},"nodeType":"YulExpressionStatement","src":"4077:47:46"},{"nodeType":"YulAssignment","src":"4133:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"4267:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"4141:124:46"},"nodeType":"YulFunctionCall","src":"4141:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"4133:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4011:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"4026:4:46","type":""}],"src":"3860:419:46"},{"body":{"nodeType":"YulBlock","src":"4326:88:46","statements":[{"nodeType":"YulAssignment","src":"4336:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"4346:18:46"},"nodeType":"YulFunctionCall","src":"4346:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4336:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4395:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"4403:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"4375:19:46"},"nodeType":"YulFunctionCall","src":"4375:33:46"},"nodeType":"YulExpressionStatement","src":"4375:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"4310:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"4319:6:46","type":""}],"src":"4285:129:46"},{"body":{"nodeType":"YulBlock","src":"4460:35:46","statements":[{"nodeType":"YulAssignment","src":"4470:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"4486:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4480:5:46"},"nodeType":"YulFunctionCall","src":"4480:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"4470:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"4453:6:46","type":""}],"src":"4420:75:46"},{"body":{"nodeType":"YulBlock","src":"4567:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"4672:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"4674:16:46"},"nodeType":"YulFunctionCall","src":"4674:18:46"},"nodeType":"YulExpressionStatement","src":"4674:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4644:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4652:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4641:2:46"},"nodeType":"YulFunctionCall","src":"4641:30:46"},"nodeType":"YulIf","src":"4638:56:46"},{"nodeType":"YulAssignment","src":"4704:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4734:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"4712:21:46"},"nodeType":"YulFunctionCall","src":"4712:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"4704:4:46"}]},{"nodeType":"YulAssignment","src":"4778:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"4790:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"4796:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4786:3:46"},"nodeType":"YulFunctionCall","src":"4786:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"4778:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"4551:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"4562:4:46","type":""}],"src":"4501:307:46"},{"body":{"nodeType":"YulBlock","src":"4872:40:46","statements":[{"nodeType":"YulAssignment","src":"4883:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4899:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4893:5:46"},"nodeType":"YulFunctionCall","src":"4893:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"4883:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4855:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"4865:6:46","type":""}],"src":"4814:98:46"},{"body":{"nodeType":"YulBlock","src":"5013:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5030:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5035:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5023:6:46"},"nodeType":"YulFunctionCall","src":"5023:19:46"},"nodeType":"YulExpressionStatement","src":"5023:19:46"},{"nodeType":"YulAssignment","src":"5051:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5070:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5075:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5066:3:46"},"nodeType":"YulFunctionCall","src":"5066:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"5051:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"4985:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"4990:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"5001:11:46","type":""}],"src":"4918:168:46"},{"body":{"nodeType":"YulBlock","src":"5205:34:46","statements":[{"nodeType":"YulAssignment","src":"5215:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"5230:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"5215:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5177:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5182:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"5193:11:46","type":""}],"src":"5092:147:46"},{"body":{"nodeType":"YulBlock","src":"5341:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5358:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5363:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5351:6:46"},"nodeType":"YulFunctionCall","src":"5351:19:46"},"nodeType":"YulExpressionStatement","src":"5351:19:46"},{"nodeType":"YulAssignment","src":"5379:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5398:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5403:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5394:3:46"},"nodeType":"YulFunctionCall","src":"5394:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"5379:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5313:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5318:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"5329:11:46","type":""}],"src":"5245:169:46"},{"body":{"nodeType":"YulBlock","src":"5465:32:46","statements":[{"nodeType":"YulAssignment","src":"5475:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"5486:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"5475:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5447:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"5457:7:46","type":""}],"src":"5420:77:46"},{"body":{"nodeType":"YulBlock","src":"5554:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5577:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"5582:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5587:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"5564:12:46"},"nodeType":"YulFunctionCall","src":"5564:30:46"},"nodeType":"YulExpressionStatement","src":"5564:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5635:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5640:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5631:3:46"},"nodeType":"YulFunctionCall","src":"5631:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"5649:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5624:6:46"},"nodeType":"YulFunctionCall","src":"5624:27:46"},"nodeType":"YulExpressionStatement","src":"5624:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"5536:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"5541:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5546:6:46","type":""}],"src":"5503:154:46"},{"body":{"nodeType":"YulBlock","src":"5712:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5722:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5731:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"5726:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"5791:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5816:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"5821:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5812:3:46"},"nodeType":"YulFunctionCall","src":"5812:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"5835:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"5840:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5831:3:46"},"nodeType":"YulFunctionCall","src":"5831:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5825:5:46"},"nodeType":"YulFunctionCall","src":"5825:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5805:6:46"},"nodeType":"YulFunctionCall","src":"5805:39:46"},"nodeType":"YulExpressionStatement","src":"5805:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5752:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"5755:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"5749:2:46"},"nodeType":"YulFunctionCall","src":"5749:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"5763:19:46","statements":[{"nodeType":"YulAssignment","src":"5765:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5774:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"5777:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5770:3:46"},"nodeType":"YulFunctionCall","src":"5770:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"5765:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"5745:3:46","statements":[]},"src":"5741:113:46"},{"body":{"nodeType":"YulBlock","src":"5888:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5938:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5943:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5934:3:46"},"nodeType":"YulFunctionCall","src":"5934:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"5952:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5927:6:46"},"nodeType":"YulFunctionCall","src":"5927:27:46"},"nodeType":"YulExpressionStatement","src":"5927:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5869:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"5872:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"5866:2:46"},"nodeType":"YulFunctionCall","src":"5866:13:46"},"nodeType":"YulIf","src":"5863:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"5694:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"5699:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5704:6:46","type":""}],"src":"5663:307:46"},{"body":{"nodeType":"YulBlock","src":"6027:269:46","statements":[{"nodeType":"YulAssignment","src":"6037:22:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"6051:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"6057:1:46","type":"","value":"2"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"6047:3:46"},"nodeType":"YulFunctionCall","src":"6047:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"6037:6:46"}]},{"nodeType":"YulVariableDeclaration","src":"6068:38:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"6098:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"6104:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"6094:3:46"},"nodeType":"YulFunctionCall","src":"6094:12:46"},"variables":[{"name":"outOfPlaceEncoding","nodeType":"YulTypedName","src":"6072:18:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6145:51:46","statements":[{"nodeType":"YulAssignment","src":"6159:27:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6173:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6181:4:46","type":"","value":"0x7f"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"6169:3:46"},"nodeType":"YulFunctionCall","src":"6169:17:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"6159:6:46"}]}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"6125:18:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"6118:6:46"},"nodeType":"YulFunctionCall","src":"6118:26:46"},"nodeType":"YulIf","src":"6115:81:46"},{"body":{"nodeType":"YulBlock","src":"6248:42:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x22","nodeType":"YulIdentifier","src":"6262:16:46"},"nodeType":"YulFunctionCall","src":"6262:18:46"},"nodeType":"YulExpressionStatement","src":"6262:18:46"}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"6212:18:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6235:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6243:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6232:2:46"},"nodeType":"YulFunctionCall","src":"6232:14:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"6209:2:46"},"nodeType":"YulFunctionCall","src":"6209:38:46"},"nodeType":"YulIf","src":"6206:84:46"}]},"name":"extract_byte_array_length","nodeType":"YulFunctionDefinition","parameters":[{"name":"data","nodeType":"YulTypedName","src":"6011:4:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"6020:6:46","type":""}],"src":"5976:320:46"},{"body":{"nodeType":"YulBlock","src":"6345:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6355:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"6377:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"6407:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"6385:21:46"},"nodeType":"YulFunctionCall","src":"6385:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6373:3:46"},"nodeType":"YulFunctionCall","src":"6373:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"6359:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6524:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"6526:16:46"},"nodeType":"YulFunctionCall","src":"6526:18:46"},"nodeType":"YulExpressionStatement","src":"6526:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"6467:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"6479:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"6464:2:46"},"nodeType":"YulFunctionCall","src":"6464:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"6503:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"6515:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6500:2:46"},"nodeType":"YulFunctionCall","src":"6500:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"6461:2:46"},"nodeType":"YulFunctionCall","src":"6461:62:46"},"nodeType":"YulIf","src":"6458:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6562:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"6566:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6555:6:46"},"nodeType":"YulFunctionCall","src":"6555:22:46"},"nodeType":"YulExpressionStatement","src":"6555:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"6331:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"6339:4:46","type":""}],"src":"6302:281:46"},{"body":{"nodeType":"YulBlock","src":"6617:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6634:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6637:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6627:6:46"},"nodeType":"YulFunctionCall","src":"6627:88:46"},"nodeType":"YulExpressionStatement","src":"6627:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6731:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"6734:4:46","type":"","value":"0x22"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6724:6:46"},"nodeType":"YulFunctionCall","src":"6724:15:46"},"nodeType":"YulExpressionStatement","src":"6724:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6755:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6758:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"6748:6:46"},"nodeType":"YulFunctionCall","src":"6748:15:46"},"nodeType":"YulExpressionStatement","src":"6748:15:46"}]},"name":"panic_error_0x22","nodeType":"YulFunctionDefinition","src":"6589:180:46"},{"body":{"nodeType":"YulBlock","src":"6803:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6820:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6823:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6813:6:46"},"nodeType":"YulFunctionCall","src":"6813:88:46"},"nodeType":"YulExpressionStatement","src":"6813:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6917:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"6920:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6910:6:46"},"nodeType":"YulFunctionCall","src":"6910:15:46"},"nodeType":"YulExpressionStatement","src":"6910:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6941:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"6944:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"6934:6:46"},"nodeType":"YulFunctionCall","src":"6934:15:46"},"nodeType":"YulExpressionStatement","src":"6934:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"6775:180:46"},{"body":{"nodeType":"YulBlock","src":"7050:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7067:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7070:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7060:6:46"},"nodeType":"YulFunctionCall","src":"7060:12:46"},"nodeType":"YulExpressionStatement","src":"7060:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"6961:117:46"},{"body":{"nodeType":"YulBlock","src":"7173:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7190:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7193:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7183:6:46"},"nodeType":"YulFunctionCall","src":"7183:12:46"},"nodeType":"YulExpressionStatement","src":"7183:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"7084:117:46"},{"body":{"nodeType":"YulBlock","src":"7296:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7313:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7316:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7306:6:46"},"nodeType":"YulFunctionCall","src":"7306:12:46"},"nodeType":"YulExpressionStatement","src":"7306:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"7207:117:46"},{"body":{"nodeType":"YulBlock","src":"7419:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7436:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7439:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7429:6:46"},"nodeType":"YulFunctionCall","src":"7429:12:46"},"nodeType":"YulExpressionStatement","src":"7429:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"7330:117:46"},{"body":{"nodeType":"YulBlock","src":"7501:54:46","statements":[{"nodeType":"YulAssignment","src":"7511:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7529:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"7536:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7525:3:46"},"nodeType":"YulFunctionCall","src":"7525:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7545:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"7541:3:46"},"nodeType":"YulFunctionCall","src":"7541:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"7521:3:46"},"nodeType":"YulFunctionCall","src":"7521:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"7511:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"7484:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"7494:6:46","type":""}],"src":"7453:102:46"},{"body":{"nodeType":"YulBlock","src":"7667:135:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"7689:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7697:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7685:3:46"},"nodeType":"YulFunctionCall","src":"7685:14:46"},{"hexValue":"5769746e657452657175657374496e697469616c697a61626c65426173653a20","kind":"string","nodeType":"YulLiteral","src":"7701:34:46","type":"","value":"WitnetRequestInitializableBase: "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7678:6:46"},"nodeType":"YulFunctionCall","src":"7678:58:46"},"nodeType":"YulExpressionStatement","src":"7678:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"7757:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7765:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7753:3:46"},"nodeType":"YulFunctionCall","src":"7753:15:46"},{"hexValue":"63616e6e6f74206368616e67652062797465636f6465","kind":"string","nodeType":"YulLiteral","src":"7770:24:46","type":"","value":"cannot change bytecode"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7746:6:46"},"nodeType":"YulFunctionCall","src":"7746:49:46"},"nodeType":"YulExpressionStatement","src":"7746:49:46"}]},"name":"store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"7659:6:46","type":""}],"src":"7561:241:46"},{"body":{"nodeType":"YulBlock","src":"7851:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"7908:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"7917:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"7920:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"7910:6:46"},"nodeType":"YulFunctionCall","src":"7910:12:46"},"nodeType":"YulExpressionStatement","src":"7910:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7874:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7899:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"7881:17:46"},"nodeType":"YulFunctionCall","src":"7881:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"7871:2:46"},"nodeType":"YulFunctionCall","src":"7871:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"7864:6:46"},"nodeType":"YulFunctionCall","src":"7864:43:46"},"nodeType":"YulIf","src":"7861:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"7844:5:46","type":""}],"src":"7808:122:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\n    }\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\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_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_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    function abi_encode_t_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 54)\n        store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        end := pos\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_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_stringliteral_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5__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_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5_to_t_string_memory_ptr_fromStack( tail)\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_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 array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\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 cleanup_t_bytes32(value) -> cleaned {\n        cleaned := value\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 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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function store_literal_in_memory_0d39d36c7c71d44913933a4ad4dea37491fe7c6615a490264518dcc96a8cedc5(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestInitializableBase: \")\n\n        mstore(add(memPtr, 32), \"cannot change bytecode\")\n\n    }\n\n    function validator_revert_t_bytes32(value) {\n        if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"608060405234801561001057600080fd5b506004361061004c5760003560e01c806309bd5a6014610051578063439fab911461006f5780638129fc1c1461008b578063f094000214610095575b600080fd5b6100596100b3565b604051610066919061048d565b60405180910390f35b61008960048036038101906100849190610391565b6100b9565b005b610093610132565b005b61009d610155565b6040516100aa91906104a8565b60405180910390f35b60015481565b60008080546100c7906105c4565b905014610109576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610100906104ca565b60405180910390fd5b806000908051906020019061011f92919061023c565b50610129816101e3565b60018190555050565b6101536040518060e0016040528060a4815260200161071160a491396100b9565b565b60008054610162906105c4565b80601f016020809104026020016040519081016040528092919081815260200182805461018e906105c4565b80156101db5780601f106101b0576101008083540402835291602001916101db565b820191906000526020600020905b8154815290600101906020018083116101be57829003601f168201915b505050505081565b60006002826040516101f59190610476565b602060405180830381855afa158015610212573d6000803e3d6000fd5b5050506040513d601f19601f820116820180604052508101906102359190610364565b9050919050565b828054610248906105c4565b90600052602060002090601f01602090048101928261026a57600085556102b1565b82601f1061028357805160ff19168380011785556102b1565b828001600101855582156102b1579182015b828111156102b0578251825591602001919060010190610295565b5b5090506102be91906102c2565b5090565b5b808211156102db5760008160009055506001016102c3565b5090565b60006102f26102ed8461050f565b6104ea565b90508281526020810184848401111561030e5761030d61068a565b5b610319848285610582565b509392505050565b600081519050610330816106f9565b92915050565b600082601f83011261034b5761034a610685565b5b813561035b8482602086016102df565b91505092915050565b60006020828403121561037a57610379610694565b5b600061038884828501610321565b91505092915050565b6000602082840312156103a7576103a6610694565b5b600082013567ffffffffffffffff8111156103c5576103c461068f565b5b6103d184828501610336565b91505092915050565b6103e381610578565b82525050565b60006103f482610540565b6103fe818561054b565b935061040e818560208601610591565b61041781610699565b840191505092915050565b600061042d82610540565b610437818561055c565b9350610447818560208601610591565b80840191505092915050565b6000610460603683610567565b915061046b826106aa565b604082019050919050565b60006104828284610422565b915081905092915050565b60006020820190506104a260008301846103da565b92915050565b600060208201905081810360008301526104c281846103e9565b905092915050565b600060208201905081810360008301526104e381610453565b9050919050565b60006104f4610505565b905061050082826105f6565b919050565b6000604051905090565b600067ffffffffffffffff82111561052a57610529610656565b5b61053382610699565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000819050919050565b82818337600083830152505050565b60005b838110156105af578082015181840152602081019050610594565b838111156105be576000848401525b50505050565b600060028204905060018216806105dc57607f821691505b602082108114156105f0576105ef610627565b5b50919050565b6105ff82610699565b810181811067ffffffffffffffff8211171561061e5761061d610656565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f5769746e657452657175657374496e697469616c697a61626c65426173653a2060008201527f63616e6e6f74206368616e67652062797465636f646500000000000000000000602082015250565b61070281610578565b811461070d57600080fd5b5056fe0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01a26469706673582212209196489b848acb482ff004f2548277b6814cf6e132615f00045b6fb6b79decef64736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x4C JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x51 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x6F JUMPI DUP1 PUSH4 0x8129FC1C EQ PUSH2 0x8B JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x95 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x59 PUSH2 0xB3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x66 SWAP2 SWAP1 PUSH2 0x48D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x89 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x84 SWAP2 SWAP1 PUSH2 0x391 JUMP JUMPDEST PUSH2 0xB9 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x93 PUSH2 0x132 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x9D PUSH2 0x155 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xAA SWAP2 SWAP1 PUSH2 0x4A8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 SLOAD PUSH2 0xC7 SWAP1 PUSH2 0x5C4 JUMP JUMPDEST SWAP1 POP EQ PUSH2 0x109 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x100 SWAP1 PUSH2 0x4CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x0 SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x11F SWAP3 SWAP2 SWAP1 PUSH2 0x23C JUMP JUMPDEST POP PUSH2 0x129 DUP2 PUSH2 0x1E3 JUMP JUMPDEST PUSH1 0x1 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH2 0x153 PUSH1 0x40 MLOAD DUP1 PUSH1 0xE0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xA4 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x711 PUSH1 0xA4 SWAP2 CODECOPY PUSH2 0xB9 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD PUSH2 0x162 SWAP1 PUSH2 0x5C4 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 0x18E SWAP1 PUSH2 0x5C4 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1DB JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1B0 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1DB 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 0x1BE JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x1F5 SWAP2 SWAP1 PUSH2 0x476 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x212 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0x235 SWAP2 SWAP1 PUSH2 0x364 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x248 SWAP1 PUSH2 0x5C4 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x26A JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x2B1 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x283 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x2B1 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x2B1 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x2B0 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x295 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x2BE SWAP2 SWAP1 PUSH2 0x2C2 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2DB JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x2C3 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F2 PUSH2 0x2ED DUP5 PUSH2 0x50F JUMP JUMPDEST PUSH2 0x4EA JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x30E JUMPI PUSH2 0x30D PUSH2 0x68A JUMP JUMPDEST JUMPDEST PUSH2 0x319 DUP5 DUP3 DUP6 PUSH2 0x582 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x330 DUP2 PUSH2 0x6F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x34B JUMPI PUSH2 0x34A PUSH2 0x685 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x35B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x37A JUMPI PUSH2 0x379 PUSH2 0x694 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x388 DUP5 DUP3 DUP6 ADD PUSH2 0x321 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x3A7 JUMPI PUSH2 0x3A6 PUSH2 0x694 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3C5 JUMPI PUSH2 0x3C4 PUSH2 0x68F JUMP JUMPDEST JUMPDEST PUSH2 0x3D1 DUP5 DUP3 DUP6 ADD PUSH2 0x336 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3E3 DUP2 PUSH2 0x578 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3F4 DUP3 PUSH2 0x540 JUMP JUMPDEST PUSH2 0x3FE DUP2 DUP6 PUSH2 0x54B JUMP JUMPDEST SWAP4 POP PUSH2 0x40E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x591 JUMP JUMPDEST PUSH2 0x417 DUP2 PUSH2 0x699 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x42D DUP3 PUSH2 0x540 JUMP JUMPDEST PUSH2 0x437 DUP2 DUP6 PUSH2 0x55C JUMP JUMPDEST SWAP4 POP PUSH2 0x447 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x591 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x460 PUSH1 0x36 DUP4 PUSH2 0x567 JUMP JUMPDEST SWAP2 POP PUSH2 0x46B DUP3 PUSH2 0x6AA JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x482 DUP3 DUP5 PUSH2 0x422 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x4A2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3DA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x4C2 DUP2 DUP5 PUSH2 0x3E9 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 0x4E3 DUP2 PUSH2 0x453 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4F4 PUSH2 0x505 JUMP JUMPDEST SWAP1 POP PUSH2 0x500 DUP3 DUP3 PUSH2 0x5F6 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 0x52A JUMPI PUSH2 0x529 PUSH2 0x656 JUMP JUMPDEST JUMPDEST PUSH2 0x533 DUP3 PUSH2 0x699 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 DUP2 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 DUP2 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 0x5AF JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x594 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x5BE 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 0x5DC JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x5F0 JUMPI PUSH2 0x5EF PUSH2 0x627 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x5FF DUP3 PUSH2 0x699 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x61E JUMPI PUSH2 0x61D PUSH2 0x656 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374496E697469616C697A61626C65426173653A20 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x63616E6E6F74206368616E67652062797465636F646500000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x702 DUP2 PUSH2 0x578 JUMP JUMPDEST DUP2 EQ PUSH2 0x70D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID EXP DUP11 ADD SLT PUSH19 0x803121868747470733A2F2F6874747062696E 0x2E PUSH16 0x72672F706F73741A1D83187782186667 PUSH9 0x656164657273821867 PUSH12 0x4865616465722D4E616D6522 XOR SLOAD PUSH9 0x697320697320746865 KECCAK256 PUSH19 0x65717565737420626F64792A1B0A0B48656164 PUSH6 0x722D4E616D65 SLT 0xC BASEFEE PUSH6 0x616465722D56 PUSH2 0x6C75 PUSH6 0x1A090A050808 SLT ADD DUP1 LT MUL 0x22 MULMOD EXP SDIV ADDMOD ADDMOD SLT ADD DUP1 LT MUL LT DUP1 0xE4 SWAP8 0xD0 SLT XOR EXP KECCAK256 DUP1 SWAP5 0xEB 0xDC SUB 0x28 CALLER ADDRESS DUP1 0xE8 0xED LOG1 0xBA ADD LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SWAP2 SWAP7 BASEFEE SWAP12 DUP5 DUP11 0xCB BASEFEE 0x2F CREATE DIV CALLCODE SLOAD DUP3 PUSH24 0xB6814CF6E132615F00045B6FB6B79DECEF64736F6C634300 ADDMOD SMOD STOP CALLER ","sourceMap":"566:480:7:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;363:28:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;280:289:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;628:416:7;;;:::i;:::-;;252:30:42;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;363:28;;;;:::o;280:289:43:-;418:1;399:8;:15;;;;;:::i;:::-;;;:20;378:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;520:9;509:8;:20;;;;;;;;;;;;:::i;:::-;;546:16;:9;:14;:16::i;:::-;539:4;:23;;;;280:289;:::o;628:416:7:-;663:376;;;;;;;;;;;;;;;;;;:41;:376::i;:::-;628:416::o;252:30:42:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;298:111:29:-;359:7;385:17;392:9;385:17;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;378:24;;298:111;;;:::o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;423:143::-;480:5;511:6;505:13;496:22;;527:33;554:5;527:33;:::i;:::-;423:143;;;;:::o;585:338::-;640:5;689:3;682:4;674:6;670:17;666:27;656:122;;697:79;;:::i;:::-;656:122;814:6;801:20;839:78;913:3;905:6;898:4;890:6;886:17;839:78;:::i;:::-;830:87;;646:277;585:338;;;;:::o;929:351::-;999:6;1048:2;1036:9;1027:7;1023:23;1019:32;1016:119;;;1054:79;;:::i;:::-;1016:119;1174:1;1199:64;1255:7;1246:6;1235:9;1231:22;1199:64;:::i;:::-;1189:74;;1145:128;929:351;;;;:::o;1286:507::-;1354:6;1403:2;1391:9;1382:7;1378:23;1374:32;1371:119;;;1409:79;;:::i;:::-;1371:119;1557:1;1546:9;1542:17;1529:31;1587:18;1579:6;1576:30;1573:117;;;1609:79;;:::i;:::-;1573:117;1714:62;1768:7;1759:6;1748:9;1744:22;1714:62;:::i;:::-;1704:72;;1500:286;1286:507;;;;:::o;1799:118::-;1886:24;1904:5;1886:24;:::i;:::-;1881:3;1874:37;1799:118;;:::o;1923:360::-;2009:3;2037:38;2069:5;2037:38;:::i;:::-;2091:70;2154:6;2149:3;2091:70;:::i;:::-;2084:77;;2170:52;2215:6;2210:3;2203:4;2196:5;2192:16;2170:52;:::i;:::-;2247:29;2269:6;2247:29;:::i;:::-;2242:3;2238:39;2231:46;;2013:270;1923:360;;;;:::o;2289:373::-;2393:3;2421:38;2453:5;2421:38;:::i;:::-;2475:88;2556:6;2551:3;2475:88;:::i;:::-;2468:95;;2572:52;2617:6;2612:3;2605:4;2598:5;2594:16;2572:52;:::i;:::-;2649:6;2644:3;2640:16;2633:23;;2397:265;2289:373;;;;:::o;2668:366::-;2810:3;2831:67;2895:2;2890:3;2831:67;:::i;:::-;2824:74;;2907:93;2996:3;2907:93;:::i;:::-;3025:2;3020:3;3016:12;3009:19;;2668:366;;;:::o;3040:271::-;3170:3;3192:93;3281:3;3272:6;3192:93;:::i;:::-;3185:100;;3302:3;3295:10;;3040:271;;;;:::o;3317:222::-;3410:4;3448:2;3437:9;3433:18;3425:26;;3461:71;3529:1;3518:9;3514:17;3505:6;3461:71;:::i;:::-;3317:222;;;;:::o;3545:309::-;3656:4;3694:2;3683:9;3679:18;3671:26;;3743:9;3737:4;3733:20;3729:1;3718:9;3714:17;3707:47;3771:76;3842:4;3833:6;3771:76;:::i;:::-;3763:84;;3545:309;;;;:::o;3860:419::-;4026:4;4064:2;4053:9;4049:18;4041:26;;4113:9;4107:4;4103:20;4099:1;4088:9;4084:17;4077:47;4141:131;4267:4;4141:131;:::i;:::-;4133:139;;3860:419;;;:::o;4285:129::-;4319:6;4346:20;;:::i;:::-;4336:30;;4375:33;4403:4;4395:6;4375:33;:::i;:::-;4285:129;;;:::o;4420:75::-;4453:6;4486:2;4480:9;4470:19;;4420:75;:::o;4501:307::-;4562:4;4652:18;4644:6;4641:30;4638:56;;;4674:18;;:::i;:::-;4638:56;4712:29;4734:6;4712:29;:::i;:::-;4704:37;;4796:4;4790;4786:15;4778:23;;4501:307;;;:::o;4814:98::-;4865:6;4899:5;4893:12;4883:22;;4814:98;;;:::o;4918:168::-;5001:11;5035:6;5030:3;5023:19;5075:4;5070:3;5066:14;5051:29;;4918:168;;;;:::o;5092:147::-;5193:11;5230:3;5215:18;;5092:147;;;;:::o;5245:169::-;5329:11;5363:6;5358:3;5351:19;5403:4;5398:3;5394:14;5379:29;;5245:169;;;;:::o;5420:77::-;5457:7;5486:5;5475:16;;5420:77;;;:::o;5503:154::-;5587:6;5582:3;5577;5564:30;5649:1;5640:6;5635:3;5631:16;5624:27;5503:154;;;:::o;5663:307::-;5731:1;5741:113;5755:6;5752:1;5749:13;5741:113;;;5840:1;5835:3;5831:11;5825:18;5821:1;5816:3;5812:11;5805:39;5777:2;5774:1;5770:10;5765:15;;5741:113;;;5872:6;5869:1;5866:13;5863:101;;;5952:1;5943:6;5938:3;5934:16;5927:27;5863:101;5712:258;5663:307;;;:::o;5976:320::-;6020:6;6057:1;6051:4;6047:12;6037:22;;6104:1;6098:4;6094:12;6125:18;6115:81;;6181:4;6173:6;6169:17;6159:27;;6115:81;6243:2;6235:6;6232:14;6212:18;6209:38;6206:84;;;6262:18;;:::i;:::-;6206:84;6027:269;5976:320;;;:::o;6302:281::-;6385:27;6407:4;6385:27;:::i;:::-;6377:6;6373:40;6515:6;6503:10;6500:22;6479:18;6467:10;6464:34;6461:62;6458:88;;;6526:18;;:::i;:::-;6458:88;6566:10;6562:2;6555:22;6345:238;6302:281;;:::o;6589:180::-;6637:77;6634:1;6627:88;6734:4;6731:1;6724:15;6758:4;6755:1;6748:15;6775:180;6823:77;6820:1;6813:88;6920:4;6917:1;6910:15;6944:4;6941:1;6934:15;6961:117;7070:1;7067;7060:12;7084:117;7193:1;7190;7183:12;7207:117;7316:1;7313;7306:12;7330:117;7439:1;7436;7429:12;7453:102;7494:6;7545:2;7541:7;7536:2;7529:5;7525:14;7521:28;7511:38;;7453:102;;;:::o;7561:241::-;7701:34;7697:1;7689:6;7685:14;7678:58;7770:24;7765:2;7757:6;7753:15;7746:49;7561:241;:::o;7808:122::-;7881:24;7899:5;7881:24;:::i;:::-;7874:5;7871:35;7861:63;;7920:1;7917;7910:12;7861:63;7808:122;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"405200","executionCost":"443","totalCost":"405643"},"external":{"bytecode()":"infinite","hash()":"2407","initialize()":"infinite","initialize(bytes)":"infinite"}},"methodIdentifiers":{"bytecode()":"f0940002","hash()":"09bd5a60","initialize()":"8129fc1c","initialize(bytes)":"439fab91"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_bytecode\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"contracts/witnet-requests/postAPI.sol\":\"postAPIRequest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"contracts/witnet-requests/postAPI.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n// For the Witnet Request Board OVM-compatible (Optimism) \\\"trustable\\\" implementation (e.g. BOBA network),\\n// replace the next import line with:\\n// import \\\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBoba.sol\\\";\\nimport \\\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\\\";\\nimport \\\"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\\\";\\n\\n// The bytecode of the postAPIExample query that will be sent to Witnet\\ncontract postAPIRequest is WitnetRequestInitializableBase {\\n  function initialize() public {\\n    WitnetRequestInitializableBase.initialize(hex\\\"0a8a0112720803121868747470733a2f2f6874747062696e2e6f72672f706f73741a1d83187782186667686561646572738218676b4865616465722d4e616d6522185468697320697320746865207265717565737420626f64792a1b0a0b4865616465722d4e616d65120c4865616465722d56616c75651a090a050808120180100222090a05080812018010021080e497d012180a208094ebdc0328333080e8eda1ba01\\\");\\n  }\\n}\\n\",\"keccak256\":\"0xd4a1d9078d027e200d3aac537ed01f42ecea665840e96c6756d5ed6954bcab50\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board base data model. \\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardData {  \\n\\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data\\\") */\\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\\n\\n    struct WitnetBoardState {\\n        address base;\\n        address owner;    \\n        uint256 numQueries;\\n        mapping (uint => Witnet.Query) queries;\\n    }\\n\\n    constructor() {\\n        _state().owner = msg.sender;\\n    }\\n\\n    /// Asserts the given query is currently in the given status.\\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\\n      require(\\n          _getQueryStatus(_queryId) == _status,\\n          _getQueryStatusRevertMessage(_status)\\n        );\\n      _;\\n    }\\n\\n    /// Asserts the given query was previously posted and that it was not yet deleted.\\n    modifier notDeleted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        require(_getRequester(_queryId) != address(0), \\\"WitnetBoardData: deleted\\\");\\n        _;\\n    }\\n\\n    /// Asserts caller corresponds to the current owner. \\n    modifier onlyOwner {\\n        require(msg.sender == _state().owner, \\\"WitnetBoardData: only owner\\\");\\n        _;    \\n    }\\n\\n    /// Asserts the give query was actually posted before calling this method.\\n    modifier wasPosted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        _;\\n    }\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    /// Gets current status of given query.\\n    function _getQueryStatus(uint256 _queryId)\\n      internal view\\n      returns (Witnet.QueryStatus)\\n    {\\n      if (_queryId == 0 || _queryId > _state().numQueries) {\\n        // \\\"Unknown\\\" status if queryId is out of range:\\n        return Witnet.QueryStatus.Unknown;\\n      }\\n      else {\\n        Witnet.Query storage _query = _state().queries[_queryId];\\n        if (_query.response.drTxHash != 0) {\\n          // Query is in \\\"Reported\\\" status as soon as the hash of the\\n          // Witnet transaction that solved the query is reported\\n          // back from a Witnet bridge:\\n          return Witnet.QueryStatus.Reported;\\n        }\\n        else if (_query.from != address(0)) {\\n          // Otherwise, while address from which the query was posted\\n          // is kept in storage, the query remains in \\\"Posted\\\" status:\\n          return Witnet.QueryStatus.Posted;\\n        }\\n        else {\\n          // Requester's address is removed from storage only if\\n          // the query gets \\\"Deleted\\\" by its requester.\\n          return Witnet.QueryStatus.Deleted;\\n        }\\n      }\\n    }\\n\\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\\n      internal pure\\n      returns (string memory)\\n    {\\n      if (_status == Witnet.QueryStatus.Posted) {\\n        return \\\"WitnetBoardData: not in Posted status\\\";\\n      } else if (_status == Witnet.QueryStatus.Reported) {\\n        return \\\"WitnetBoardData: not in Reported status\\\";\\n      } else if (_status == Witnet.QueryStatus.Deleted) {\\n        return \\\"WitnetBoardData: not in Deleted status\\\";\\n      } else {\\n        return \\\"WitnetBoardData: bad mood\\\";\\n      }\\n    }\\n\\n    /// Gets from of a given query.\\n    function _getRequester(uint256 _queryId)\\n      internal view\\n      returns (address)\\n    {\\n      return _state().queries[_queryId].from;\\n    }\\n\\n    /// Gets the Witnet.Request part of a given query.\\n    function _getRequestData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Request storage)\\n    {\\n        return _state().queries[_queryId].request;\\n    }\\n\\n    /// Gets the Witnet.Result part of a given query.\\n    function _getResponseData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Response storage)\\n    {\\n        return _state().queries[_queryId].response;\\n    }\\n\\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\\n    function _state()\\n      internal pure\\n      returns (WitnetBoardState storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0c78c9981103e9ed35ace4e5f886a848f9dfe2aa26928adc0d37dabeff6a19db\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetBoardData.sol\\\";\\n\\n/// @title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardDataACLs\\n    is\\n        WitnetBoardData\\n{\\n    bytes32 internal constant _WITNET_BOARD_ACLS_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data.acls\\\") */\\n        0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd;\\n\\n    struct WitnetBoardACLs {\\n        mapping (address => bool) isReporter_;\\n    }\\n\\n    constructor() {\\n        _acls().isReporter_[msg.sender] = true;\\n    }\\n\\n    modifier onlyReporters {\\n        require(\\n            _acls().isReporter_[msg.sender],\\n            \\\"WitnetBoardDataACLs: unauthorized reporter\\\"\\n        );\\n        _;\\n    } \\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function _acls() internal pure returns (WitnetBoardACLs storage _struct) {\\n        assembly {\\n            _struct.slot := _WITNET_BOARD_ACLS_SLOTHASH\\n        }\\n    }\\n}\\n\",\"keccak256\":\"0x558f28fc690d2f7180da9393bc49083da4857aa8480f044f68355a61ebf21257\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \\n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \\n/// @author The Witnet Foundation.\\ncontract WitnetProxy {\\n\\n    struct WitnetProxySlot {\\n        address implementation;\\n    }\\n\\n    /// Event emitted every time the implementation gets updated.\\n    event Upgraded(address indexed implementation);  \\n\\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\\n    constructor () {}\\n\\n    /// WitnetProxies will never accept direct transfer of ETHs.\\n    receive() external payable {\\n        revert(\\\"WitnetProxy: no transfers accepted\\\");\\n    }\\n\\n    /// Payable fallback accepts delegating calls to payable functions.  \\n    fallback() external payable { /* solhint-disable no-complex-fallback */\\n        address _implementation = implementation();\\n\\n        assembly { /* solhint-disable avoid-low-level-calls */\\n            // Gas optimized delegate call to 'implementation' contract.\\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \\n            //       to actual implementation of `msg.sig` within `implementation` contract.\\n            let ptr := mload(0x40)\\n            calldatacopy(ptr, 0, calldatasize())\\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\\n            let size := returndatasize()\\n            returndatacopy(ptr, 0, size)\\n            switch result\\n                case 0  { \\n                    // pass back revert message:\\n                    revert(ptr, size) \\n                }\\n                default {\\n                  // pass back same data as returned by 'implementation' contract:\\n                  return(ptr, size) \\n                }\\n        }\\n    }\\n\\n    /// Returns proxy's current implementation address.\\n    function implementation() public view returns (address) {\\n        return _proxySlot().implementation;\\n    }\\n\\n    /// Upgrades the `implementation` address.\\n    /// @param _newImplementation New implementation address.\\n    /// @param _initData Raw data with which new implementation will be initialized.\\n    /// @return Returns whether new implementation would be further upgradable, or not.\\n    function upgradeTo(address _newImplementation, bytes memory _initData)\\n        public returns (bool)\\n    {\\n        // New implementation cannot be null:\\n        require(_newImplementation != address(0), \\\"WitnetProxy: null implementation\\\");\\n\\n        address _oldImplementation = implementation();\\n        if (_oldImplementation != address(0)) {\\n            // New implementation address must differ from current one:\\n            require(_newImplementation != _oldImplementation, \\\"WitnetProxy: nothing to upgrade\\\");\\n\\n            // Assert whether current implementation is intrinsically upgradable:\\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\\n                require(_isUpgradable, \\\"WitnetProxy: not upgradable\\\");\\n            } catch {\\n                revert(\\\"WitnetProxy: unable to check upgradability\\\");\\n            }\\n\\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\\n                abi.encodeWithSignature(\\n                    \\\"isUpgradableFrom(address)\\\",\\n                    msg.sender\\n                )\\n            );\\n            require(_wasCalled, \\\"WitnetProxy: not compliant\\\");\\n            require(abi.decode(_result, (bool)), \\\"WitnetProxy: not authorized\\\");\\n            require(\\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\\n                \\\"WitnetProxy: proxiableUUIDs mismatch\\\"\\n            );\\n        }\\n\\n        // Initialize new implementation within proxy-context storage:\\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\\n            abi.encodeWithSignature(\\n                \\\"initialize(bytes)\\\",\\n                _initData\\n            )\\n        );\\n        require(_wasInitialized, \\\"WitnetProxy: unable to initialize\\\");\\n\\n        // If all checks and initialization pass, update implementation address:\\n        _proxySlot().implementation = _newImplementation;\\n        emit Upgraded(_newImplementation);\\n\\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\\n            return _isUpgradable;\\n        }\\n        catch {\\n            revert (\\\"WitnetProxy: not compliant\\\");\\n        }\\n    }\\n\\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\\n        assembly {\\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0xcfdb698b63b9300631b046ecd8e16dbff90e8b4e84fdf1d629195ad17c8234d0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\n/* solhint-disable var-name-mixedcase */\\n\\n// Inherits from:\\nimport \\\"../WitnetRequestBoard.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n// Eventual deployment dependencies:\\nimport \\\"./WitnetProxy.sol\\\";\\n\\n/// @title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoardUpgradableBase\\n    is\\n        Proxiable,\\n        Upgradable,\\n        WitnetRequestBoard\\n{\\n    bytes32 internal immutable _VERSION;\\n\\n    constructor(\\n            bool _upgradable,\\n            bytes32 _versionTag\\n        )\\n        Upgradable(_upgradable)\\n    {\\n        _VERSION = _versionTag;\\n    }\\n\\n    /// @dev Reverts if proxy delegatecalls to unexistent method.\\n    fallback() external payable {\\n        revert(\\\"WitnetRequestBoardUpgradableBase: not implemented\\\");\\n    }\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Proxiable' --------------------------------------------------------------------------------------\\n\\n    /// @dev Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\\n    ///      If implemented as an Upgradable touch, upgrading this contract to another one with a different \\n    ///      `proxiableUUID()` value should fail.\\n    function proxiableUUID() external pure override returns (bytes32) {\\n        return (\\n            /* keccak256(\\\"io.witnet.proxiable.board\\\") */\\n            0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018\\n        );\\n    }   \\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' --------------------------------------------------------------------------------------\\n\\n    /// Retrieves human-readable version tag of current implementation.\\n    function version() public view override returns (bytes32) {\\n        return _VERSION;\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0930557dfafb03730e716e0af67ba7637a562f304ead6f2cedfa2c0eee91a65c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../WitnetRequestBoardUpgradableBase.sol\\\";\\nimport \\\"../../data/WitnetBoardDataACLs.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdmin.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdminACLs.sol\\\";\\nimport \\\"../../libs/WitnetParserLib.sol\\\";\\nimport \\\"../../patterns/Payable.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" base implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\nabstract contract WitnetRequestBoardTrustableBase\\n    is \\n        Payable,\\n        IWitnetRequestBoardAdmin,\\n        IWitnetRequestBoardAdminACLs,        \\n        WitnetBoardDataACLs,\\n        WitnetRequestBoardUpgradableBase        \\n{\\n    using Witnet for bytes;\\n    using WitnetParserLib for Witnet.Result;\\n    \\n    constructor(bool _upgradable, bytes32 _versionTag, address _currency)\\n        Payable(_currency)\\n        WitnetRequestBoardUpgradableBase(_upgradable, _versionTag)\\n    {}\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' -------------------------------------------------------------------------------------\\n\\n    /// Initialize storage-context when invoked as delegatecall. \\n    /// @dev Must fail when trying to initialize same instance more than once.\\n    function initialize(bytes memory _initData) virtual external override {\\n        address _owner = _state().owner;\\n        if (_owner == address(0)) {\\n            // set owner if none set yet\\n            _owner = msg.sender;\\n            _state().owner = _owner;\\n        } else {\\n            // only owner can initialize:\\n            require(msg.sender == _owner, \\\"WitnetRequestBoardTrustableBase: only owner\\\");\\n        }        \\n\\n        if (_state().base != address(0)) {\\n            // current implementation cannot be initialized more than once:\\n            require(_state().base != base(), \\\"WitnetRequestBoardTrustableBase: already initialized\\\");\\n        }        \\n        _state().base = base();\\n\\n        emit Upgraded(msg.sender, base(), codehash(), version());\\n\\n        // Do actual base initialization:\\n        setReporters(abi.decode(_initData, (address[])));\\n    }\\n\\n    /// Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address _from) external view override returns (bool) {\\n        address _owner = _state().owner;\\n        return (\\n            // false if the WRB is intrinsically not upgradable, or `_from` is no owner\\n            isUpgradable()\\n                && _owner == _from\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdmin' ----------------------------------------------------------\\n\\n    /// Gets admin/owner address.\\n    function owner()\\n        public view\\n        override\\n        returns (address)\\n    {\\n        return _state().owner;\\n    }\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address _newOwner)\\n        external\\n        virtual override\\n        onlyOwner\\n    {\\n        address _owner = _state().owner;\\n        if (_newOwner != _owner) {\\n            _state().owner = _newOwner;\\n            emit OwnershipTransferred(_owner, _newOwner);\\n        }\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdminACLs' ------------------------------------------------------\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    /// @param _reporter The address to be checked.\\n    function isReporter(address _reporter) public view override returns (bool) {\\n        return _acls().isReporter_[_reporter];\\n    }\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    /// @param _reporters List of addresses to be added to the active reporters control list.\\n    function setReporters(address[] memory _reporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _reporters.length; ix ++) {\\n            address _reporter = _reporters[ix];\\n            _acls().isReporter_[_reporter] = true;\\n        }\\n        emit ReportersSet(_reporters);\\n    }\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    /// @param _exReporters List of addresses to be added to the active reporters control list.\\n    function unsetReporters(address[] memory _exReporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _exReporters.length; ix ++) {\\n            address _reporter = _exReporters[ix];\\n            _acls().isReporter_[_reporter] = false;\\n        }\\n        emit ReportersUnset(_exReporters);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardReporter' -------------------------------------------------------\\n\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        // solhint-disable not-rely-on-time\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                block.timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_timestamp <= block.timestamp, \\\"WitnetRequestBoardTrustableDefault: bad timestamp\\\");\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                _timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Fails if called from unauthorized address.\\n    /// @dev Emits a PostedResult event for every succesfully reported result, if any.\\n    /// @param _batchResults Array of BatchedResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, emits a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(\\n            BatchResult[] memory _batchResults,\\n            bool _verbose\\n        )\\n        external\\n        override\\n        onlyReporters\\n    {\\n        uint _batchReward;\\n        uint _batchSize = _batchResults.length;\\n        for ( uint _i = 0; _i < _batchSize; _i ++) {\\n            BatchResult memory _result = _batchResults[_i];\\n            if (_getQueryStatus(_result.queryId) != Witnet.QueryStatus.Posted) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad queryId\\\"\\n                    );\\n                }\\n            } else if (_result.drTxHash == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad drTxHash\\\"\\n                    );\\n                }\\n            } else if (_result.cborBytes.length == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId, \\n                        \\\"WitnetRequestBoardTrustableBase: bad cborBytes\\\"\\n                    );\\n                }\\n            } else if (_result.timestamp > 0 && _result.timestamp > block.timestamp) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad timestamp\\\"\\n                    );\\n                }\\n            } else {\\n                _batchReward += __reportResult(\\n                    _result.queryId,\\n                    _result.timestamp == 0 ? block.timestamp : _result.timestamp,\\n                    _result.drTxHash,\\n                    _result.cborBytes\\n                );\\n                emit PostedResult(\\n                    _result.queryId,\\n                    msg.sender\\n                );\\n            }\\n        }   \\n        // Transfer all successful rewards in one single shot to the authorized reporter, if any:\\n        if (_batchReward > 0) {\\n            _safeTransferTo(\\n                payable(msg.sender),\\n                _batchReward\\n            );\\n        }\\n    }\\n    \\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardRequestor' ------------------------------------------------------\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId)\\n        public\\n        virtual override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        require(\\n            msg.sender == __query.from,\\n            \\\"WitnetRequestBoardTrustableBase: only requester\\\"\\n        );\\n        _response = __query.response;\\n        delete _state().queries[_queryId];\\n        emit DeletedQuery(_queryId, msg.sender);\\n    }\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr)\\n        public payable\\n        virtual override\\n        returns (uint256 _queryId)\\n    {\\n        uint256 _value = _getMsgValue();\\n        uint256 _gasPrice = _getGasPrice();\\n\\n        // Checks the tally reward is covering gas cost\\n        uint256 minResultReward = estimateReward(_gasPrice);\\n        require(_value >= minResultReward, \\\"WitnetRequestBoardTrustableBase: reward too low\\\");\\n\\n        // Validates provided script:\\n        require(address(_addr) != address(0), \\\"WitnetRequestBoardTrustableBase: null script\\\");\\n        bytes memory _bytecode = _addr.bytecode();\\n        require(_bytecode.length > 0, \\\"WitnetRequestBoardTrustableBase: empty script\\\");\\n\\n        _queryId = ++ _state().numQueries;\\n        _state().queries[_queryId].from = msg.sender;\\n\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        _request.addr = _addr;\\n        _request.hash = _bytecode.hash();\\n        _request.gasprice = _gasPrice;\\n        _request.reward = _value;\\n\\n        // Let observers know that a new request has been posted\\n        emit PostedRequest(_queryId, msg.sender);\\n    }\\n    \\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId)\\n        public payable\\n        virtual override      \\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n\\n        uint256 _newReward = _request.reward + _getMsgValue();\\n        uint256 _newGasPrice = _getGasPrice();\\n\\n        // If gas price is increased, then check if new rewards cover gas costs\\n        if (_newGasPrice > _request.gasprice) {\\n            // Checks the reward is covering gas cost\\n            uint256 _minResultReward = estimateReward(_newGasPrice);\\n            require(\\n                _newReward >= _minResultReward,\\n                \\\"WitnetRequestBoardTrustableBase: reward too low\\\"\\n            );\\n            _request.gasprice = _newGasPrice;\\n        }\\n        _request.reward = _newReward;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardView' -----------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256);\\n\\n    /// Returns next request id to be generated by the Witnet Request Board.\\n    function getNextQueryId()\\n        external view \\n        override\\n        returns (uint256)\\n    {\\n        return _state().numQueries + 1;\\n    }\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId)\\n      external view\\n      override\\n      returns (Witnet.Query memory)\\n    {\\n        return _state().queries[_queryId];\\n    }\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId)\\n        external view\\n        override\\n        returns (Witnet.QueryStatus)\\n    {\\n        return _getQueryStatus(_queryId);\\n\\n    }\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (Witnet.Request memory _request)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        _request = __query.request;\\n        if (__query.from != address(0)) {\\n            _request.requester = __query.from;\\n        }\\n    }\\n    \\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId)\\n        external view\\n        override\\n        returns (bytes memory _bytecode)\\n    {\\n        require(\\n            _getQueryStatus(_queryId) != Witnet.QueryStatus.Unknown,\\n            \\\"WitnetRequestBoardTrustableBase: not yet posted\\\"\\n        );\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        if (address(_request.addr) != address(0)) {\\n            // if DR's request contract address is not zero,\\n            // we assume the DR has not been deleted, so\\n            // DR's bytecode can still be fetched:\\n            _bytecode = _request.addr.bytecode();\\n            require(\\n                _bytecode.hash() == _request.hash,\\n                \\\"WitnetRequestBoardTrustableBase: bytecode changed after posting\\\"\\n            );\\n        } \\n    }\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestGasPrice(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.gasprice;\\n    }\\n\\n    /// Retrieves the reward currently set for a previously posted request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestReward(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.reward;\\n    }\\n\\n    /// Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponse(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        return _getResponseData(_queryId);\\n    }\\n\\n    /// Retrieves the hash of the Witnet transaction that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId)\\n        external view        \\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (bytes32)\\n    {\\n        return _getResponseData(_queryId).drTxHash;\\n    }\\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseReporter(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (address)\\n    {\\n        return _getResponseData(_queryId).reporter;\\n    }\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseResult(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.Response storage _response = _getResponseData(_queryId);\\n        return WitnetParserLib.resultFromCborBytes(_response.cborBytes);\\n    }\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (uint256)\\n    {\\n        return _getResponseData(_queryId).timestamp;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestParser' interface ----------------------------------------------------\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborBytes(_cborBytes);\\n    }\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborValue(_cborValue);\\n    }\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isOk();\\n    }\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isError();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes memory)\\n    {\\n        return _result.asBytes();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes32)\\n    {\\n        return _result.asBytes32();\\n    }\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return _result.asErrorCode();\\n    }\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes, string memory)\\n    {\\n        try _result.asErrorMessage() returns (Witnet.ErrorCodes _code, string memory _message) {\\n            return (_code, _message);\\n        } \\n        catch Error(string memory _reason) {\\n            return (Witnet.ErrorCodes.Unknown, _reason);\\n        }\\n        catch (bytes memory) {\\n            return (Witnet.ErrorCodes.UnhandledIntercept, \\\"WitnetRequestBoardTrustableBase: failing assert\\\");\\n        }\\n    }\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns(uint64[] memory)\\n    {\\n        return _result.asRawError();\\n    }\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.asBool();\\n    }\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32)\\n    {\\n        return _result.asFixed16();\\n    }\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32[] memory)\\n    {\\n        return _result.asFixed16Array();\\n    }\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128)\\n    {\\n        return _result.asInt128();\\n    }\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128[] memory)\\n    {\\n        return _result.asInt128Array();\\n    }\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string memory)\\n    {\\n        return _result.asString();\\n    }\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string[] memory)\\n    {\\n        return _result.asStringArray();\\n    }\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure \\n        override\\n        returns(uint64)\\n    {\\n        return _result.asUint64();\\n    }\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (uint64[] memory)\\n    {\\n        return _result.asUint64Array();\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function __reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes memory _cborBytes\\n        )\\n        internal\\n        returns (uint256 _reward)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        Witnet.Request storage __request = __query.request;\\n        Witnet.Response storage __response = __query.response;\\n\\n        // solhint-disable not-rely-on-time\\n        __response.timestamp = _timestamp;\\n        __response.drTxHash = _drTxHash;\\n        __response.reporter = msg.sender;\\n        __response.cborBytes = _cborBytes;\\n\\n        // return request latest reward\\n        _reward = __request.reward;\\n\\n        // Request data won't be needed anymore, so it can just get deleted right now:  \\n        delete __query.request;\\n    }\\n}\\n\",\"keccak256\":\"0x6b6ccba7e686a69bf0847b9c541e3997f14f3f91246c63fbadd412ba78c4a8d4\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetRequestBoardTrustableBase.sol\\\";\\nimport \\\"../../patterns/Destructible.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\ncontract WitnetRequestBoardTrustableDefault\\n    is \\n        Destructible,\\n        WitnetRequestBoardTrustableBase\\n{  \\n    uint256 internal immutable _ESTIMATED_REPORT_RESULT_GAS;\\n\\n    constructor(\\n        bool _upgradable,\\n        bytes32 _versionTag,\\n        uint256 _reportResultGasLimit\\n    )\\n        WitnetRequestBoardTrustableBase(_upgradable, _versionTag, address(0))\\n    {\\n        _ESTIMATED_REPORT_RESULT_GAS = _reportResultGasLimit;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides implementation of 'IWitnetRequestBoardView' ------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return _gasPrice * _ESTIMATED_REPORT_RESULT_GAS;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Destructible' -----------------------------------------------------------------------------------\\n\\n    /// Destroys current instance. Only callable by the owner.\\n    function destruct() external override onlyOwner {\\n        selfdestruct(payable(msg.sender));\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Payable' ----------------------------------------------------------------------------------------\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice()\\n        internal view\\n        override\\n        returns (uint256)\\n    {\\n        return tx.gasprice;\\n    }\\n\\n    /// Gets current payment value.\\n    function _getMsgValue()\\n        internal view\\n        override\\n        returns (uint256)\\n    {\\n        return msg.value;\\n    }\\n\\n    /// Transfers ETHs to given address.\\n    /// @param _to Recipient address.\\n    /// @param _amount Amount of ETHs to transfer.\\n    function _safeTransferTo(address payable _to, uint256 _amount)\\n        internal\\n        override\\n    {\\n        payable(_to).transfer(_amount);\\n    }   \\n}\\n\",\"keccak256\":\"0xc89e1a65e9045323dda045c8552adc0a329697e2f144911b4059c68673999f9c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC20 standard as defined in the EIP.\\n */\\ninterface IERC20 {\\n    /// Returns the amount of tokens in existence.\\n    function totalSupply() external view returns (uint256);\\n\\n    /// Returns the amount of tokens owned by `_account`.\\n    function balanceOf(address _account) external view returns (uint256);\\n\\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event.\\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\\n\\n    /// Returns the remaining number of tokens that `_spender` will be\\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\\n    /// zero by default.\\n    /// This value changes when {approve} or {transferFrom} are called.\\n    function allowance(address _owner, address _spender) external view returns (uint256);\\n\\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// \\n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\\n    /// that someone may use both the old and the new allowance by unfortunate\\n    /// transaction ordering. One possible solution to mitigate this race\\n    /// condition is to first reduce the spender's allowance to 0 and set the\\n    /// desired value afterwards:\\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\\n    ///\\n    /// Emits an {Approval} event.     \\n    function approve(address _spender, uint256 _amount) external returns (bool);\\n\\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\\n    /// allowance mechanism. `amount` is then deducted from the caller's\\n    /// allowance.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event. \\n    function transferFrom(\\n        address _sender,\\n        address _recipient,\\n        uint256 _amount\\n    ) external returns (bool);\\n\\n    /// Emitted when `value` tokens are moved from one account (`from`) to\\n    /// another (`to`).\\n    /// Note that `:value` may be zero.\\n    event Transfer(address indexed from, address indexed to, uint256 value);\\n\\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\\n    /// a call to {approve}. `value` is the new allowance.\\n    event Approval(address indexed owner, address indexed spender, uint256 value);\\n}\\n\",\"keccak256\":\"0xd6b25613fab1f6172ca58e377371a0b708f1af8982961364fecf9da196213f48\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board basic administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdmin {\\n    event OwnershipTransferred(address indexed from, address indexed to);\\n\\n    /// Gets admin/owner address.\\n    function owner() external view returns (address);\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address) external;\\n}\\n\",\"keccak256\":\"0xa88e828c55cb4e2c1ef02c9204e367d3034fc2e35cc881581d898942b9715d50\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board ACLs administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdminACLs {\\n    event ReportersSet(address[] reporters);\\n    event ReportersUnset(address[] reporters);\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    function isReporter(address) external view returns (bool);\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    function setReporters(address[] calldata reporters) external;\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    function unsetReporters(address[] calldata reporters) external;\\n}\\n\",\"keccak256\":\"0xafcd6f01a977d597032b341fec291ea7e26b1dac3eb13eced8b37d89eb76e4ff\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetBuffer.sol\\\";\\n\\n/// @title A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\\n/// the gas cost of decoding them into a useful native type.\\n/// @dev Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\\n/// @author The Witnet Foundation.\\n/// \\n/// TODO: add support for Array (majorType = 4)\\n/// TODO: add support for Map (majorType = 5)\\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \\n\\nlibrary WitnetDecoderLib {\\n\\n  using WitnetBuffer for Witnet.Buffer;\\n\\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bool` value.\\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\\\");\\n    if (_cborValue.len == 20) {\\n      return false;\\n    } else if (_cborValue.len == 21) {\\n      return true;\\n    } else {\\n      revert(\\\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\\\");\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bytes` value.   \\n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT32_MAX) {\\n      bytes memory bytesData;\\n\\n      // These checks look repetitive but the equivalent loop would be more expensive.\\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n      if (itemLength < _UINT32_MAX) {\\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n        if (itemLength < _UINT32_MAX) {\\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        }\\n      }\\n      return bytesData;\\n    } else {\\n      return _cborValue.buffer.read(uint32(_cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\\n    bytes memory _bb = decodeBytes(_cborValue);\\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\\n    for (uint _i = 0; _i < _len; _i ++) {\\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\\\");\\n    require(_cborValue.additionalInformation == 25, \\\"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\\\");\\n    return _cborValue.buffer.readFloat16();\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\\n  /// as explained in `decodeFixed16`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int32[] memory array = new int32[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeFixed16(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\\n    if (_cborValue.majorType == 1) {\\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n      return int128(-1) - int128(uint128(length));\\n    } else if (_cborValue.majorType == 0) {\\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\\n      // a uniform API for positive and negative numbers\\n      return int128(uint128(decodeUint64(_cborValue)));\\n    }\\n    revert(\\\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\\\");\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int128[] memory array = new int128[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeInt128(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `string` value.\\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT64_MAX) {\\n      bytes memory textData;\\n      bool done;\\n      while (!done) {\\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\\n        if (itemLength < _UINT64_MAX) {\\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\\n        } else {\\n          done = true;\\n        }\\n      }\\n      return string(textData);\\n    } else {\\n      return string(readText(_cborValue.buffer, _cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `string[]` value.\\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    string[] memory array = new string[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeString(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64` value.\\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\\n    require(_cborValue.majorType == 0, \\\"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\\\");\\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64[]` value.\\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    uint64[] memory array = new uint64[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeUint64(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\\n\\n    return valueFromBuffer(buffer);\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\\n    require(_buffer.data.length > 0, \\\"WitnetDecoderLib: Found empty buffer when parsing CBOR value\\\");\\n\\n    uint8 initialByte;\\n    uint8 majorType = 255;\\n    uint8 additionalInformation;\\n    uint64 tag = _UINT64_MAX;\\n\\n    bool isTagged = true;\\n    while (isTagged) {\\n      // Extract basic CBOR properties from input bytes\\n      initialByte = _buffer.readUint8();\\n      majorType = initialByte >> 5;\\n      additionalInformation = initialByte & 0x1f;\\n\\n      // Early CBOR tag parsing.\\n      if (majorType == 6) {\\n        tag = readLength(_buffer, additionalInformation);\\n      } else {\\n        isTagged = false;\\n      }\\n    }\\n\\n    require(majorType <= 7, \\\"WitnetDecoderLib: Invalid CBOR major type\\\");\\n\\n    return Witnet.CBOR(\\n      _buffer,\\n      initialByte,\\n      majorType,\\n      additionalInformation,\\n      0,\\n      tag);\\n  }\\n\\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\\n  /// value of the `additionalInformation` argument.\\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\\n    if (additionalInformation < 24) {\\n      return additionalInformation;\\n    }\\n    if (additionalInformation == 24) {\\n      return _buffer.readUint8();\\n    }\\n    if (additionalInformation == 25) {\\n      return _buffer.readUint16();\\n    }\\n    if (additionalInformation == 26) {\\n      return _buffer.readUint32();\\n    }\\n    if (additionalInformation == 27) {\\n      return _buffer.readUint64();\\n    }\\n    if (additionalInformation == 31) {\\n      return _UINT64_MAX;\\n    }\\n    revert(\\\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\\\");\\n  }\\n\\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\\n  /// as many bytes as specified by the first byte.\\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\\n    uint8 initialByte = _buffer.readUint8();\\n    if (initialByte == 0xff) {\\n      return _UINT64_MAX;\\n    }\\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \\\"WitnetDecoderLib: Invalid indefinite length\\\");\\n    return length;\\n  }\\n\\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\\n  /// but it can be easily casted into a string with `string(result)`.\\n  // solium-disable-next-line security/no-assign-params\\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\\n    bytes memory result;\\n    for (uint64 index = 0; index < _length; index++) {\\n      uint8 value = _buffer.readUint8();\\n      if (value & 0x80 != 0) {\\n        if (value < 0xe0) {\\n          value = (value & 0x1f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 1;\\n        } else if (value < 0xf0) {\\n          value = (value & 0x0f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 2;\\n        } else {\\n          value = (value & 0x0f) << 18 |\\n            (_buffer.readUint8() & 0x3f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6  |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 3;\\n        }\\n      }\\n      result = abi.encodePacked(result, value);\\n    }\\n    return result;\\n  }\\n}\\n\",\"keccak256\":\"0xb8f5b618ebae15a7f5d21870ac8ba7034afe5dce876b53a1a81572378a817c32\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetDecoderLib.sol\\\";\\n\\n/// @title A library for decoding Witnet request results\\n/// @notice The library exposes functions to check the Witnet request success.\\n/// and retrieve Witnet results from CBOR values into solidity types.\\n/// @author The Witnet Foundation.\\nlibrary WitnetParserLib {\\n\\n    using WitnetDecoderLib for bytes;\\n    using WitnetDecoderLib for Witnet.CBOR;\\n\\n    /// @notice Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes calldata _cborBytes)\\n        external pure\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.CBOR memory cborValue = _cborBytes.valueFromBytes();\\n        return resultFromCborValue(cborValue);\\n    }\\n\\n    /// @notice Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.Value`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        public pure\\n        returns (Witnet.Result memory)    \\n    {\\n        // Witnet uses CBOR tag 39 to represent RADON error code identifiers.\\n        // [CBOR tag 39] Identifiers for CBOR: https://github.com/lucas-clemente/cbor-specs/blob/master/id.md\\n        bool success = _cborValue.tag != 39;\\n        return Witnet.Result(success, _cborValue);\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        return _result.success;\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n      external pure\\n      returns (bool)\\n    {\\n        return !_result.success;\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes();\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes32();\\n    }\\n\\n    /// @notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return Witnet.ErrorCodes.Unknown;\\n        }\\n        return _supportedErrorOrElseUnknown(error[0]);\\n    }\\n\\n    /// @notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n      public pure\\n      returns (Witnet.ErrorCodes, string memory)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return (Witnet.ErrorCodes.Unknown, \\\"Unknown error (no error code)\\\");\\n        }\\n        Witnet.ErrorCodes errorCode = _supportedErrorOrElseUnknown(error[0]);\\n        bytes memory errorMessage;\\n\\n        if (errorCode == Witnet.ErrorCodes.SourceScriptNotCBOR && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid CBOR value\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotArray && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not an Array of calls\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotRADON && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid Data Request\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RequestTooManySources && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The request contained too many sources (\\\", \\n                _utoa(error[1]), \\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.ScriptTooManyCalls && error.length >= 4) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Script #\\\",\\n                _utoa(error[2]),\\n                \\\" from the \\\",\\n                stageName(error[1]),\\n                \\\" stage contained too many calls (\\\",\\n                _utoa(error[3]),\\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.UnsupportedOperator && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage is not supported\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.HTTP && error.length >= 3) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved. Failed with HTTP error code: \\\",\\n                _utoa(error[2] / 100),\\n                _utoa(error[2] % 100 / 10),\\n                _utoa(error[2] % 10)\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RetrievalTimeout && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved because of a timeout\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Underflow && error.length >= 5) {\\n              errorMessage = abi.encodePacked(\\n                \\\"Underflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Overflow && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Overflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.DivisionByZero && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Division by zero at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeMalformedRequest) {\\n            errorMessage = \\\"The structure of the request is invalid and it cannot be parsed\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgePoorIncentives) {\\n            errorMessage = \\\"The request has been rejected by the bridge node due to poor incentives\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeOversizedResult) {\\n            errorMessage = \\\"The request result length exceeds a bridge contract defined limit\\\";\\n        } else {\\n            errorMessage = abi.encodePacked(\\\"Unknown error (0x\\\", _utohex(error[0]), \\\")\\\");\\n        }\\n        return (errorCode, string(errorMessage));\\n    }\\n\\n    /// @notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        public pure\\n        returns(uint64[] memory)\\n    {\\n        require(\\n            !_result.success,\\n            \\\"WitnetParserLib: Tried to read error code from successful Witnet.Result\\\"\\n        );\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\\\");\\n        return _result.value.decodeBool();\\n    }\\n\\n    /// @notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        returns (int32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16();\\n    }\\n\\n    /// @notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int32[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16Array();\\n    }\\n\\n    /// @notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n      external pure\\n      returns (int128)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128();\\n    }\\n\\n    /// @notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int128[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128Array();\\n    }\\n\\n    /// @notice Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        returns(string memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\\\");\\n        return _result.value.decodeString();\\n    }\\n\\n    /// @notice Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        returns (string[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeStringArray();\\n    }\\n\\n    /// @notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure\\n        returns(uint64)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64();\\n    }\\n\\n    /// @notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        returns (uint64[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Convert a stage index number into the name of the matching Witnet request stage.\\n    /// @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\\n    /// @return The name of the matching stage.\\n    function stageName(uint64 _stageIndex)\\n        public pure\\n        returns (string memory)\\n    {\\n        if (_stageIndex == 0) {\\n            return \\\"retrieval\\\";\\n        } else if (_stageIndex == 1) {\\n            return \\\"aggregation\\\";\\n        } else if (_stageIndex == 2) {\\n            return \\\"tally\\\";\\n        } else {\\n            return \\\"unknown\\\";\\n        }\\n    }\\n\\n    /// @notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\\n    /// @param _discriminant The numeric identifier of an error.\\n    /// @return A member of `Witnet.ErrorCodes`.\\n    function _supportedErrorOrElseUnknown(uint64 _discriminant)\\n        private pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return Witnet.ErrorCodes(_discriminant);\\n    }\\n\\n    /// @notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\\n    /// three less significant decimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its decimal value.\\n    function _utoa(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        if (_u < 10) {\\n            bytes memory b1 = new bytes(1);\\n            b1[0] = bytes1(uint8(_u) + 48);\\n            return string(b1);\\n        } else if (_u < 100) {\\n            bytes memory b2 = new bytes(2);\\n            b2[0] = bytes1(uint8(_u / 10) + 48);\\n            b2[1] = bytes1(uint8(_u % 10) + 48);\\n            return string(b2);\\n        } else {\\n            bytes memory b3 = new bytes(3);\\n            b3[0] = bytes1(uint8(_u / 100) + 48);\\n            b3[1] = bytes1(uint8(_u % 100 / 10) + 48);\\n            b3[2] = bytes1(uint8(_u % 10) + 48);\\n            return string(b3);\\n        }\\n    }\\n\\n    /// @notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its hexadecimal value.\\n    function _utohex(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        bytes memory b2 = new bytes(2);\\n        uint8 d0 = uint8(_u / 16) + 48;\\n        uint8 d1 = uint8(_u % 16) + 48;\\n        if (d0 > 57)\\n            d0 += 7;\\n        if (d1 > 57)\\n            d1 += 7;\\n        b2[0] = bytes1(d0);\\n        b2[1] = bytes1(d1);\\n        return string(b2);\\n    }\\n}\\n\",\"keccak256\":\"0x250634a50e7ad8aaa9f3dde002ca3718de06a65b93be86896011331b996403f0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Destructible.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Destructible {\\n    /// @dev Self-destruct the whole contract.\\n    function destruct() external;\\n}\\n\",\"keccak256\":\"0x58c9296ad2920fd26779933226ac807a70d6d70963965b781780e53f69625c87\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Payable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"../interfaces/IERC20.sol\\\";\\n\\nabstract contract Payable {\\n    IERC20 public immutable currency;\\n\\n    event Received(address from, uint256 amount);\\n    event Transfer(address to, uint256 amount);\\n\\n    constructor(address _currency) {\\n        currency = IERC20(_currency);\\n    }\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice() internal view virtual returns (uint256);\\n\\n    /// Gets current payment value.\\n    function _getMsgValue() internal view virtual returns (uint256);\\n\\n    /// Perform safe transfer or whatever token is used for paying rewards.\\n    function _safeTransferTo(address payable, uint256) internal virtual;\\n}\\n\",\"keccak256\":\"0xc7f50e489030643b7f061512ad0d8430abc87351941a77589f6b06376c5831b9\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\nabstract contract WitnetRequestBase\\n    is\\n        IWitnetRequest\\n{\\n    /// Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\\n    bytes public override bytecode;\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    bytes32 public override hash;\\n}\\n\",\"keccak256\":\"0x1a3220346005ca91601a89896523f67bdd0fd3dc79b6e684d3e5dbf20f11c5ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetRequestBase.sol\\\";\\nimport \\\"../patterns/Initializable.sol\\\";\\n\\nabstract contract WitnetRequestInitializableBase\\n    is\\n        Initializable,\\n        WitnetRequestBase\\n{\\n    using Witnet for bytes;\\n    function initialize(bytes memory _bytecode)\\n        public\\n        virtual override\\n    {\\n        require(\\n            bytecode.length == 0,\\n            \\\"WitnetRequestInitializableBase: cannot change bytecode\\\"\\n        );\\n        bytecode = _bytecode;\\n        hash = _bytecode.hash();\\n    }\\n}\\n\",\"keccak256\":\"0x9d2956ca1e83989996c70e5419130dc95168cf6cfeee39f4896b13d0505f78b0\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8265,"contract":"contracts/witnet-requests/postAPI.sol:postAPIRequest","label":"bytecode","offset":0,"slot":"0","type":"t_bytes_storage"},{"astId":8269,"contract":"contracts/witnet-requests/postAPI.sol:postAPIRequest","label":"hash","offset":0,"slot":"1","type":"t_bytes32"}],"types":{"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"}}},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers."},"hash()":{"notice":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."}},"version":1}}},"witnet-solidity-bridge/contracts/UsingWitnet.sol":{"UsingWitnet":{"abi":[{"inputs":[],"name":"witnet","outputs":[{"internalType":"contract WitnetRequestBoard","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","details":"Witnet-aware contracts can inherit from this contract in order to interact with Witnet.","kind":"dev","methods":{"constructor":{"params":{"_wrb":"The WitnetRequestBoard entry point address."}}},"title":"The UsingWitnet contract","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"witnet()":"46d1d21a"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"witnet\",\"outputs\":[{\"internalType\":\"contract WitnetRequestBoard\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"details\":\"Witnet-aware contracts can inherit from this contract in order to interact with Witnet.\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"params\":{\"_wrb\":\"The WitnetRequestBoard entry point address.\"}}},\"title\":\"The UsingWitnet contract\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"constructor\":{\"notice\":\"Include an address to specify the WitnetRequestBoard entry point address.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/UsingWitnet.sol\":\"UsingWitnet\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/UsingWitnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetRequestBoard.sol\\\";\\n\\n/// @title The UsingWitnet contract\\n/// @dev Witnet-aware contracts can inherit from this contract in order to interact with Witnet.\\n/// @author The Witnet Foundation.\\nabstract contract UsingWitnet {\\n\\n    WitnetRequestBoard public immutable witnet;\\n\\n    /// Include an address to specify the WitnetRequestBoard entry point address.\\n    /// @param _wrb The WitnetRequestBoard entry point address.\\n    constructor(WitnetRequestBoard _wrb)\\n    {\\n        require(address(_wrb) != address(0), \\\"UsingWitnet: zero address\\\");\\n        witnet = _wrb;\\n    }\\n\\n    /// Provides a convenient way for client contracts extending this to block the execution of the main logic of the\\n    /// contract until a particular request has been successfully solved and reported by Witnet.\\n    modifier witnetRequestSolved(uint256 _id) {\\n        require(\\n                _witnetCheckResultAvailability(_id),\\n                \\\"UsingWitnet: request not solved\\\"\\n            );\\n        _;\\n    }\\n\\n    /// Check if a data request has been solved and reported by Witnet.\\n    /// @dev Contracts depending on Witnet should not start their main business logic (e.g. receiving value from third.\\n    /// parties) before this method returns `true`.\\n    /// @param _id The unique identifier of a previously posted data request.\\n    /// @return A boolean telling if the request has been already resolved or not. Returns `false` also, if the result was deleted.\\n    function _witnetCheckResultAvailability(uint256 _id)\\n        internal view\\n        virtual\\n        returns (bool)\\n    {\\n        return witnet.getQueryStatus(_id) == Witnet.QueryStatus.Reported;\\n    }\\n\\n    /// Estimate the reward amount.\\n    /// @param _gasPrice The gas price for which we want to retrieve the estimation.\\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\\n    function _witnetEstimateReward(uint256 _gasPrice)\\n        internal view\\n        virtual\\n        returns (uint256)\\n    {\\n        return witnet.estimateReward(_gasPrice);\\n    }\\n\\n    /// Estimates the reward amount, considering current transaction gas price.\\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\\n    function _witnetEstimateReward()\\n        internal view\\n        virtual\\n        returns (uint256)\\n    {\\n        return witnet.estimateReward(tx.gasprice);\\n    }\\n\\n    /// Send a new request to the Witnet network with transaction value as a reward.\\n    /// @param _request An instance of `IWitnetRequest` contract.\\n    /// @return _id Sequential identifier for the request included in the WitnetRequestBoard.\\n    /// @return _reward Current reward amount escrowed by the WRB until a result gets reported.\\n    function _witnetPostRequest(IWitnetRequest _request)\\n        internal\\n        virtual\\n        returns (uint256 _id, uint256 _reward)\\n    {\\n        _reward = _witnetEstimateReward();\\n        require(\\n            _reward <= msg.value,\\n            \\\"UsingWitnet: reward too low\\\"\\n        );\\n        _id = witnet.postRequest{value: _reward}(_request);\\n    }\\n\\n    /// Upgrade the reward for a previously posted request.\\n    /// @dev Call to `upgradeReward` function in the WitnetRequestBoard contract.\\n    /// @param _id The unique identifier of a request that has been previously sent to the WitnetRequestBoard.\\n    /// @return Amount in which the reward has been increased.\\n    function _witnetUpgradeReward(uint256 _id)\\n        internal\\n        virtual\\n        returns (uint256)\\n    {\\n        uint256 _currentReward = witnet.readRequestReward(_id);        \\n        uint256 _newReward = _witnetEstimateReward();\\n        uint256 _fundsToAdd = 0;\\n        if (_newReward > _currentReward) {\\n            _fundsToAdd = (_newReward - _currentReward);\\n        }\\n        witnet.upgradeReward{value: _fundsToAdd}(_id); // Let Request.gasPrice be updated\\n        return _fundsToAdd;\\n    }\\n\\n    /// Read the Witnet-provided result to a previously posted request.\\n    /// @param _id The unique identifier of a request that was posted to Witnet.\\n    /// @return The result of the request as an instance of `Witnet.Result`.\\n    function _witnetReadResult(uint256 _id)\\n        internal view\\n        virtual\\n        returns (Witnet.Result memory)\\n    {\\n        return witnet.readResponseResult(_id);\\n    }\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @param _id The unique identifier of a previously posted request.\\n    /// @return The Witnet-provided result to the request.\\n    function _witnetDeleteQuery(uint256 _id)\\n        internal\\n        virtual\\n        returns (Witnet.Response memory)\\n    {\\n        return witnet.deleteQuery(_id);\\n    }\\n\\n}\\n\",\"keccak256\":\"0x197b4fcecea2958249928d85183e3c9e094bff8c2f4dab29ef13361683c576bd\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"constructor":{"notice":"Include an address to specify the WitnetRequestBoard entry point address."}},"version":1}}},"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol":{"WitnetRequestBoard":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"string","name":"reason","type":"string"}],"name":"BatchReportError","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"DeletedQuery","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedRequest","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedResult","type":"event"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorCode","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorMessage","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asRawError","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"deleteQuery","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextQueryId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryData","outputs":[{"components":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"request","type":"tuple"},{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"response","type":"tuple"},{"internalType":"address","name":"from","type":"address"}],"internalType":"struct Witnet.Query","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryStatus","outputs":[{"internalType":"enum Witnet.QueryStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isError","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isOk","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"contract IWitnetRequest","name":"_addr","type":"address"}],"name":"postRequest","outputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequest","outputs":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestBytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestGasPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponse","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseDrTxHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseReporter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseResult","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_result","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"uint256","name":"_timestamp","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_result","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"queryId","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct IWitnetRequestBoardReporter.BatchResult[]","name":"_batchResults","type":"tuple[]"},{"internalType":"bool","name":"_verbose","type":"bool"}],"name":"reportResultBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"resultFromCborBytes","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"resultFromCborValue","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"upgradeReward","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bool` decoded from the Witnet.Result."}},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes` decoded from the Witnet.Result."}},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes32` decoded from the Witnet.Result."}},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `CBORValue.Error memory` decoded from the Witnet.Result."}},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function","params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."}},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `uint64[]` raw error as decoded from the `Witnet.Result`."}},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string` decoded from the Witnet.Result."}},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string[]` decoded from the Witnet.Result."}},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64` decoded from the Witnet.Result."}},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64[]` decoded from the Witnet.Result."}},"deleteQuery(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.","params":{"_queryId":"The unique query identifier."}},"estimateReward(uint256)":{"params":{"_gasPrice":"The gas price for which we need to calculate the rewards."}},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if errored, `false` if successful."}},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if successful, `false` if errored."}},"postRequest(address)":{"details":"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.","params":{"_addr":"The address of the IWitnetRequest contract that can provide the actual Data Request bytecode."},"returns":{"_queryId":"An unique query identifier."}},"readRequest(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.","params":{"_queryId":"The unique identifier of a previously posted query."}},"readRequestBytecode(uint256)":{"details":"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.","params":{"_queryId":"The unique query identifier."}},"readRequestGasPrice(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifie"}},"readRequestReward(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier."}},"readResponse(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseDrTxHash(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseReporter(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseResult(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseTimestamp(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"reportResult(uint256,bytes32,bytes)":{"details":"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_drTxHash":"The hash of the corresponding data request transaction in Witnet.","_queryId":"The unique identifier of the data request.","_result":"The result itself as bytes."}},"reportResult(uint256,uint256,bytes32,bytes)":{"details":"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_drTxHash":"The hash of the corresponding data request transaction in Witnet.","_queryId":"The unique query identifier","_result":"The result itself as bytes.","_timestamp":"The timestamp of the solving tally transaction in Witnet."}},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"details":"Must emit a PostedResult event for every succesfully reported result.","params":{"_batchResults":"Array of BatchResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.","_verbose":"If true, must emit a BatchReportError event for every failing report, if any. "}},"resultFromCborBytes(bytes)":{"params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.Result` instance."}},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"A `Witnet.Result` instance."}},"upgradeReward(uint256)":{"details":"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. ","params":{"_queryId":"The unique query identifier."}}},"title":"Witnet Request Board functionality base contract.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d4ced132","asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c683b465","asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"cf62d115","asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"db04f16d","asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d74803be","asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2241f2db","asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"0f572d2c","asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2b905fbb","asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"07e66852","asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"b0768328","asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"109a0e3c","asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c87d969e","asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"bc7e25ff","asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"4dcffaf3","deleteQuery(uint256)":"7c1fbda3","estimateReward(uint256)":"d2e87561","getNextQueryId()":"c805dd0f","getQueryData(uint256)":"c2485ebd","getQueryStatus(uint256)":"6f07abcc","isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"7780cde1","isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"a8604c1a","postRequest(address)":"b281a7bd","readRequest(uint256)":"99f65804","readRequestBytecode(uint256)":"3b885f2a","readRequestGasPrice(uint256)":"3ae97295","readRequestReward(uint256)":"1dd27daf","readResponse(uint256)":"754e5bea","readResponseDrTxHash(uint256)":"dc3c71cd","readResponseReporter(uint256)":"9d96fced","readResponseResult(uint256)":"d4da69ac","readResponseTimestamp(uint256)":"20f9241e","reportResult(uint256,bytes32,bytes)":"6280bce8","reportResult(uint256,uint256,bytes32,bytes)":"c8f5cdd5","reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":"81a398b5","resultFromCborBytes(bytes)":"e99e47f3","resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":"2565082b","upgradeReward(uint256)":"66bfdc75"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"reason\",\"type\":\"string\"}],\"name\":\"BatchReportError\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"DeletedQuery\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedResult\",\"type\":\"event\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorCode\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorMessage\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asRawError\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"deleteQuery\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNextQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryData\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"request\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"response\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"internalType\":\"struct Witnet.Query\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryStatus\",\"outputs\":[{\"internalType\":\"enum Witnet.QueryStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isError\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isOk\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"postRequest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequest\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestBytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestGasPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponse\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseDrTxHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseReporter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseResult\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_result\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_result\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitnetRequestBoardReporter.BatchResult[]\",\"name\":\"_batchResults\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"_verbose\",\"type\":\"bool\"}],\"name\":\"reportResultBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"resultFromCborBytes\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"resultFromCborValue\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"upgradeReward\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bool` decoded from the Witnet.Result.\"}},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes` decoded from the Witnet.Result.\"}},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes32` decoded from the Witnet.Result.\"}},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `CBORValue.Error memory` decoded from the Witnet.Result.\"}},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\",\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\"}},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `uint64[]` raw error as decoded from the `Witnet.Result`.\"}},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string` decoded from the Witnet.Result.\"}},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string[]` decoded from the Witnet.Result.\"}},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64` decoded from the Witnet.Result.\"}},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64[]` decoded from the Witnet.Result.\"}},\"deleteQuery(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"estimateReward(uint256)\":{\"params\":{\"_gasPrice\":\"The gas price for which we need to calculate the rewards.\"}},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if errored, `false` if successful.\"}},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if successful, `false` if errored.\"}},\"postRequest(address)\":{\"details\":\"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.\",\"params\":{\"_addr\":\"The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\"},\"returns\":{\"_queryId\":\"An unique query identifier.\"}},\"readRequest(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.\",\"params\":{\"_queryId\":\"The unique identifier of a previously posted query.\"}},\"readRequestBytecode(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readRequestGasPrice(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifie\"}},\"readRequestReward(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponse(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseDrTxHash(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseReporter(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseResult(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseTimestamp(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"reportResult(uint256,bytes32,bytes)\":{\"details\":\"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_drTxHash\":\"The hash of the corresponding data request transaction in Witnet.\",\"_queryId\":\"The unique identifier of the data request.\",\"_result\":\"The result itself as bytes.\"}},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"details\":\"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_drTxHash\":\"The hash of the corresponding data request transaction in Witnet.\",\"_queryId\":\"The unique query identifier\",\"_result\":\"The result itself as bytes.\",\"_timestamp\":\"The timestamp of the solving tally transaction in Witnet.\"}},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"details\":\"Must emit a PostedResult event for every succesfully reported result.\",\"params\":{\"_batchResults\":\"Array of BatchResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.\",\"_verbose\":\"If true, must emit a BatchReportError event for every failing report, if any. \"}},\"resultFromCborBytes(bytes)\":{\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"upgradeReward(uint256)\":{\"details\":\"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}}},\"title\":\"Witnet Request Board functionality base contract.\",\"version\":1},\"userdoc\":{\"events\":{\"DeletedQuery(uint256,address)\":{\"notice\":\"Emitted when all data related to given query is deleted from the WRB.\"},\"PostedRequest(uint256,address)\":{\"notice\":\"Emitted when a Witnet Data Request is posted to the WRB.\"},\"PostedResult(uint256,address)\":{\"notice\":\"Emitted when a Witnet-solved result is reported to the WRB.\"}},\"kind\":\"user\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a boolean value from a Witnet.Result as an `bool` value.\"},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes` value.\"},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes32` value.\"},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\"},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\"},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\"},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\"},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a integer numeric value from a Witnet.Result as an `int128` value.\"},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\"},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\"},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a string value from a Witnet.Result as a `string` value.\"},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of string values from a Witnet.Result as a `string[]` value.\"},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\"},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\"},\"deleteQuery(uint256)\":{\"notice\":\"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\"},\"estimateReward(uint256)\":{\"notice\":\"Estimates the amount of reward we need to insert for a given gas price.\"},\"getNextQueryId()\":{\"notice\":\"Returns next query id to be generated by the Witnet Request Board.\"},\"getQueryData(uint256)\":{\"notice\":\"Gets the whole Query data contents, if any, no matter its current status.\"},\"getQueryStatus(uint256)\":{\"notice\":\"Gets current status of given query.\"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is errored.\"},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is successful.\"},\"postRequest(address)\":{\"notice\":\"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request.\"},\"readRequest(uint256)\":{\"notice\":\"Retrieves the whole Request record posted to the Witnet Request Board.\"},\"readRequestBytecode(uint256)\":{\"notice\":\"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\"},\"readRequestGasPrice(uint256)\":{\"notice\":\"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request.\"},\"readRequestReward(uint256)\":{\"notice\":\"Retrieves the reward currently set for the referred query.\"},\"readResponse(uint256)\":{\"notice\":\"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\"},\"readResponseDrTxHash(uint256)\":{\"notice\":\"Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\"},\"readResponseReporter(uint256)\":{\"notice\":\"Retrieves the address that reported the result to a previously-posted request.\"},\"readResponseResult(uint256)\":{\"notice\":\"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\"},\"readResponseTimestamp(uint256)\":{\"notice\":\"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\"},\"reportResult(uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request. \"},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request.\"},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"notice\":\"Reports Witnet-provided results to multiple requests within a single EVM tx.\"},\"resultFromCborBytes(bytes)\":{\"notice\":\"Decode raw CBOR bytes into a Witnet.Result instance.\"},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Decode a CBOR value into a Witnet.Result instance.\"},\"upgradeReward(uint256)\":{\"notice\":\"Increments the reward of a previously posted request by adding the transaction value to it.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":\"WitnetRequestBoard\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"DeletedQuery(uint256,address)":{"notice":"Emitted when all data related to given query is deleted from the WRB."},"PostedRequest(uint256,address)":{"notice":"Emitted when a Witnet Data Request is posted to the WRB."},"PostedResult(uint256,address)":{"notice":"Emitted when a Witnet-solved result is reported to the WRB."}},"kind":"user","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a boolean value from a Witnet.Result as an `bool` value."},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes` value."},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes32` value."},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`."},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments."},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value."},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value."},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a integer numeric value from a Witnet.Result as an `int128` value."},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value."},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a raw error from a `Witnet.Result` as a `uint64[]`."},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a string value from a Witnet.Result as a `string` value."},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of string values from a Witnet.Result as a `string[]` value."},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a natural numeric value from a Witnet.Result as a `uint64` value."},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value."},"deleteQuery(uint256)":{"notice":"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage."},"estimateReward(uint256)":{"notice":"Estimates the amount of reward we need to insert for a given gas price."},"getNextQueryId()":{"notice":"Returns next query id to be generated by the Witnet Request Board."},"getQueryData(uint256)":{"notice":"Gets the whole Query data contents, if any, no matter its current status."},"getQueryStatus(uint256)":{"notice":"Gets current status of given query."},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is errored."},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is successful."},"postRequest(address)":{"notice":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request."},"readRequest(uint256)":{"notice":"Retrieves the whole Request record posted to the Witnet Request Board."},"readRequestBytecode(uint256)":{"notice":"Retrieves the serialized bytecode of a previously posted Witnet Data Request."},"readRequestGasPrice(uint256)":{"notice":"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request."},"readRequestReward(uint256)":{"notice":"Retrieves the reward currently set for the referred query."},"readResponse(uint256)":{"notice":"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request."},"readResponseDrTxHash(uint256)":{"notice":"Retrieves the hash of the Witnet transaction hash that actually solved the referred query."},"readResponseReporter(uint256)":{"notice":"Retrieves the address that reported the result to a previously-posted request."},"readResponseResult(uint256)":{"notice":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request."},"readResponseTimestamp(uint256)":{"notice":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON."},"reportResult(uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request. "},"reportResult(uint256,uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request."},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"notice":"Reports Witnet-provided results to multiple requests within a single EVM tx."},"resultFromCborBytes(bytes)":{"notice":"Decode raw CBOR bytes into a Witnet.Result instance."},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"notice":"Decode a CBOR value into a Witnet.Result instance."},"upgradeReward(uint256)":{"notice":"Increments the reward of a previously posted request by adding the transaction value to it."}},"version":1}}},"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol":{"WitnetRandomness":{"abi":[{"inputs":[{"internalType":"contract WitnetRequestBoard","name":"_wrb","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"self","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"clone","type":"address"}],"name":"Cloned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"uint256","name":"prevBlock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"witnetQueryId","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"witnetRequestHash","type":"bytes32"}],"name":"Randomized","type":"event"},{"inputs":[],"name":"clone","outputs":[{"internalType":"contract Clonable","name":"_newInstance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_salt","type":"bytes32"}],"name":"cloneDeterministic","outputs":[{"internalType":"contract Clonable","name":"_newInstance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cloned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateRandomizeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomizeData","outputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"uint256","name":"_prevBlock","type":"uint256"},{"internalType":"uint256","name":"_nextBlock","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessAfter","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessNextBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessPrevBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_initData","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"isRandomized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestRandomizeBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_range","type":"uint32"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"random","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_range","type":"uint32"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"bytes32","name":"_seed","type":"bytes32"}],"name":"random","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"randomize","outputs":[{"internalType":"uint256","name":"_usedFunds","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"self","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"upgradeRandomizeFee","outputs":[{"internalType":"uint256","name":"_usedFunds","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"witnet","outputs":[{"internalType":"contract WitnetRequestBoard","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"witnetRandomnessRequest","outputs":[{"internalType":"contract WitnetRequestRandomness","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"author":"Witnet Foundation.","kind":"dev","methods":{"clone()":{"details":"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`."},"cloneDeterministic(bytes32)":{"details":"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address."},"constructor":{"params":{"_wrb":"The WitnetRequestBoard immutable entrypoint address."}},"getRandomizeData(uint256)":{"details":"Returns zero values if no randomness request was actually posted within a given block.","params":{"_block":"Block number whose randomness request is being queried for."},"returns":{"_from":"Address from which the latest randomness request was posted.","_id":"Unique request identifier as provided by the WRB.","_nextBlock":"Block number in which a randomness request got posted just after this one, 0 if none.","_prevBlock":"Block number in which a randomness request got posted just before this one. 0 if none."}},"getRandomnessAfter(uint256)":{"details":"Fails if:i.   no `randomize()` was not called in either the given block, or afterwards.ii.  a request posted in/after given block does exist, but no result has been provided yet.iii. all requests in/after the given block were solved with errors.","params":{"_block":"Block number from which the search will start."}},"getRandomnessNextBlock(uint256)":{"params":{"_block":"Block number from which the search will start."},"returns":{"_0":"Number of the first block found after the given one, or `0` otherwise."}},"getRandomnessPrevBlock(uint256)":{"params":{"_block":"Block number from which the search will start. Cannot be zero."},"returns":{"_0":"First block found before the given one, or `0` otherwise."}},"initialize(bytes)":{"details":"Initializes contract's storage context."},"random(uint32,uint256,bytes32)":{"params":{"_nonce":"Nonce value enabling multiple random numbers from the same randomness value.","_range":"Range within which the uniformly-distributed random number will be generated.","_seed":"Seed value used as entropy source."}},"random(uint32,uint256,uint256)":{"details":"Fails under same conditions as `getRandomnessAfter(uint256)` may do.","params":{"_block":"Block number from which the search will start.","_nonce":"Nonce value enabling multiple random numbers from the same randomness value.","_range":"Range within which the uniformly-distributed random number will be generated."}},"randomize()":{"returns":{"_usedFunds":"Amount of funds actually used from those provided by the tx sender."}},"upgradeRandomizeFee(uint256)":{"returns":{"_usedFunds":"Amount of dunds actually used from those provided by the tx sender."}}},"title":"WitnetRandomness: A trustless randomness generator and registry, based on the Witnet oracle. ","version":1},"evm":{"bytecode":{"functionDebugData":{"@_282":{"entryPoint":null,"id":282,"parameterSlots":1,"returnSlots":0},"@_539":{"entryPoint":null,"id":539,"parameterSlots":1,"returnSlots":0},"abi_decode_t_contract$_WitnetRequestBoard_$481_fromMemory":{"entryPoint":552,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_contract$_WitnetRequestBoard_$481_fromMemory":{"entryPoint":575,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":625,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack":{"entryPoint":642,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":681,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":710,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":744,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":761,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_address_payable":{"entryPoint":781,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_contract$_WitnetRequestBoard_$481":{"entryPoint":801,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":821,"id":null,"parameterSlots":1,"returnSlots":1},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":853,"id":null,"parameterSlots":0,"returnSlots":0},"store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f":{"entryPoint":858,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_contract$_WitnetRequestBoard_$481":{"entryPoint":899,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:3106:46","statements":[{"body":{"nodeType":"YulBlock","src":"96:106:46","statements":[{"nodeType":"YulAssignment","src":"106:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"121:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"115:5:46"},"nodeType":"YulFunctionCall","src":"115:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"106:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"190:5:46"}],"functionName":{"name":"validator_revert_t_contract$_WitnetRequestBoard_$481","nodeType":"YulIdentifier","src":"137:52:46"},"nodeType":"YulFunctionCall","src":"137:59:46"},"nodeType":"YulExpressionStatement","src":"137:59:46"}]},"name":"abi_decode_t_contract$_WitnetRequestBoard_$481_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"74:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"82:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"90:5:46","type":""}],"src":"7:195:46"},{"body":{"nodeType":"YulBlock","src":"311:300:46","statements":[{"body":{"nodeType":"YulBlock","src":"357:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"359:77:46"},"nodeType":"YulFunctionCall","src":"359:79:46"},"nodeType":"YulExpressionStatement","src":"359:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"332:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"341:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"328:3:46"},"nodeType":"YulFunctionCall","src":"328:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"353:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"324:3:46"},"nodeType":"YulFunctionCall","src":"324:32:46"},"nodeType":"YulIf","src":"321:119:46"},{"nodeType":"YulBlock","src":"450:154:46","statements":[{"nodeType":"YulVariableDeclaration","src":"465:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"479:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"469:6:46","type":""}]},{"nodeType":"YulAssignment","src":"494:100:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"566:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"577:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"562:3:46"},"nodeType":"YulFunctionCall","src":"562:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"586:7:46"}],"functionName":{"name":"abi_decode_t_contract$_WitnetRequestBoard_$481_fromMemory","nodeType":"YulIdentifier","src":"504:57:46"},"nodeType":"YulFunctionCall","src":"504:90:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"494:6:46"}]}]}]},"name":"abi_decode_tuple_t_contract$_WitnetRequestBoard_$481_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"281:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"292:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"304:6:46","type":""}],"src":"208:403:46"},{"body":{"nodeType":"YulBlock","src":"682:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"699:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"722:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"704:17:46"},"nodeType":"YulFunctionCall","src":"704:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"692:6:46"},"nodeType":"YulFunctionCall","src":"692:37:46"},"nodeType":"YulExpressionStatement","src":"692:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"670:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"677:3:46","type":""}],"src":"617:118:46"},{"body":{"nodeType":"YulBlock","src":"887:220:46","statements":[{"nodeType":"YulAssignment","src":"897:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"963:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"968:2:46","type":"","value":"25"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"904:58:46"},"nodeType":"YulFunctionCall","src":"904:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"897:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1069:3:46"}],"functionName":{"name":"store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f","nodeType":"YulIdentifier","src":"980:88:46"},"nodeType":"YulFunctionCall","src":"980:93:46"},"nodeType":"YulExpressionStatement","src":"980:93:46"},{"nodeType":"YulAssignment","src":"1082:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1093:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1098:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1089:3:46"},"nodeType":"YulFunctionCall","src":"1089:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"1082:3:46"}]}]},"name":"abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"875:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"883:3:46","type":""}],"src":"741:366:46"},{"body":{"nodeType":"YulBlock","src":"1211:124:46","statements":[{"nodeType":"YulAssignment","src":"1221:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1233:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1244:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1229:3:46"},"nodeType":"YulFunctionCall","src":"1229:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1221:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"1301:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1314:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1325:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1310:3:46"},"nodeType":"YulFunctionCall","src":"1310:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"1257:43:46"},"nodeType":"YulFunctionCall","src":"1257:71:46"},"nodeType":"YulExpressionStatement","src":"1257:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1183:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"1195:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"1206:4:46","type":""}],"src":"1113:222:46"},{"body":{"nodeType":"YulBlock","src":"1512:248:46","statements":[{"nodeType":"YulAssignment","src":"1522:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1534:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1545:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1530:3:46"},"nodeType":"YulFunctionCall","src":"1530:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1522:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1569:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1580:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1565:3:46"},"nodeType":"YulFunctionCall","src":"1565:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"1588:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1594:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1584:3:46"},"nodeType":"YulFunctionCall","src":"1584:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1558:6:46"},"nodeType":"YulFunctionCall","src":"1558:47:46"},"nodeType":"YulExpressionStatement","src":"1558:47:46"},{"nodeType":"YulAssignment","src":"1614:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"1748:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"1622:124:46"},"nodeType":"YulFunctionCall","src":"1622:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1614:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1492:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"1507:4:46","type":""}],"src":"1341:419:46"},{"body":{"nodeType":"YulBlock","src":"1806:35:46","statements":[{"nodeType":"YulAssignment","src":"1816:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1832:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1826:5:46"},"nodeType":"YulFunctionCall","src":"1826:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"1816:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"1799:6:46","type":""}],"src":"1766:75:46"},{"body":{"nodeType":"YulBlock","src":"1943:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1960:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"1965:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1953:6:46"},"nodeType":"YulFunctionCall","src":"1953:19:46"},"nodeType":"YulExpressionStatement","src":"1953:19:46"},{"nodeType":"YulAssignment","src":"1981:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2000:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2005:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1996:3:46"},"nodeType":"YulFunctionCall","src":"1996:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"1981:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"1915:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"1920:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"1931:11:46","type":""}],"src":"1847:169:46"},{"body":{"nodeType":"YulBlock","src":"2067:51:46","statements":[{"nodeType":"YulAssignment","src":"2077:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2106:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"2088:17:46"},"nodeType":"YulFunctionCall","src":"2088:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2077:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2049:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2059:7:46","type":""}],"src":"2022:96:46"},{"body":{"nodeType":"YulBlock","src":"2177:51:46","statements":[{"nodeType":"YulAssignment","src":"2187:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2216:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"2198:17:46"},"nodeType":"YulFunctionCall","src":"2198:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2187:7:46"}]}]},"name":"cleanup_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2159:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2169:7:46","type":""}],"src":"2124:104:46"},{"body":{"nodeType":"YulBlock","src":"2305:59:46","statements":[{"nodeType":"YulAssignment","src":"2315:43:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2352:5:46"}],"functionName":{"name":"cleanup_t_address_payable","nodeType":"YulIdentifier","src":"2326:25:46"},"nodeType":"YulFunctionCall","src":"2326:32:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2315:7:46"}]}]},"name":"cleanup_t_contract$_WitnetRequestBoard_$481","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2287:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2297:7:46","type":""}],"src":"2234:130:46"},{"body":{"nodeType":"YulBlock","src":"2415:81:46","statements":[{"nodeType":"YulAssignment","src":"2425:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2440:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2447:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"2436:3:46"},"nodeType":"YulFunctionCall","src":"2436:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2425:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2397:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2407:7:46","type":""}],"src":"2370:126:46"},{"body":{"nodeType":"YulBlock","src":"2591:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2608:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2611:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"2601:6:46"},"nodeType":"YulFunctionCall","src":"2601:12:46"},"nodeType":"YulExpressionStatement","src":"2601:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"2502:117:46"},{"body":{"nodeType":"YulBlock","src":"2714:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2731:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2734:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"2724:6:46"},"nodeType":"YulFunctionCall","src":"2724:12:46"},"nodeType":"YulExpressionStatement","src":"2724:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"2625:117:46"},{"body":{"nodeType":"YulBlock","src":"2854:69:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"2876:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"2884:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2872:3:46"},"nodeType":"YulFunctionCall","src":"2872:14:46"},{"hexValue":"5573696e675769746e65743a207a65726f2061646472657373","kind":"string","nodeType":"YulLiteral","src":"2888:27:46","type":"","value":"UsingWitnet: zero address"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2865:6:46"},"nodeType":"YulFunctionCall","src":"2865:51:46"},"nodeType":"YulExpressionStatement","src":"2865:51:46"}]},"name":"store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"2846:6:46","type":""}],"src":"2748:175:46"},{"body":{"nodeType":"YulBlock","src":"2998:105:46","statements":[{"body":{"nodeType":"YulBlock","src":"3081:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3090:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"3093:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"3083:6:46"},"nodeType":"YulFunctionCall","src":"3083:12:46"},"nodeType":"YulExpressionStatement","src":"3083:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3021:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3072:5:46"}],"functionName":{"name":"cleanup_t_contract$_WitnetRequestBoard_$481","nodeType":"YulIdentifier","src":"3028:43:46"},"nodeType":"YulFunctionCall","src":"3028:50:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"3018:2:46"},"nodeType":"YulFunctionCall","src":"3018:61:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"3011:6:46"},"nodeType":"YulFunctionCall","src":"3011:69:46"},"nodeType":"YulIf","src":"3008:89:46"}]},"name":"validator_revert_t_contract$_WitnetRequestBoard_$481","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2991:5:46","type":""}],"src":"2929:174:46"}]},"contents":"{\n\n    function abi_decode_t_contract$_WitnetRequestBoard_$481_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_contract$_WitnetRequestBoard_$481(value)\n    }\n\n    function abi_decode_tuple_t_contract$_WitnetRequestBoard_$481_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_contract$_WitnetRequestBoard_$481_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\n    }\n\n    function abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n        store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f(pos)\n        end := add(pos, 32)\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_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f__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_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\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 cleanup_t_address(value) -> cleaned {\n        cleaned := cleanup_t_uint160(value)\n    }\n\n    function cleanup_t_address_payable(value) -> cleaned {\n        cleaned := cleanup_t_uint160(value)\n    }\n\n    function cleanup_t_contract$_WitnetRequestBoard_$481(value) -> cleaned {\n        cleaned := cleanup_t_address_payable(value)\n    }\n\n    function cleanup_t_uint160(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f(memPtr) {\n\n        mstore(add(memPtr, 0), \"UsingWitnet: zero address\")\n\n    }\n\n    function validator_revert_t_contract$_WitnetRequestBoard_$481(value) {\n        if iszero(eq(value, cleanup_t_contract$_WitnetRequestBoard_$481(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"60c06040523073ffffffffffffffffffffffffffffffffffffffff1660a09073ffffffffffffffffffffffffffffffffffffffff1660601b8152503480156200004757600080fd5b50604051620070e3380380620070e383398181016040528101906200006d91906200023f565b80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620000e1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000d890620002c6565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b815250505060405162000127906200021a565b604051809103906000f08015801562000144573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401620001df9190620002a9565b600060405180830381600087803b158015620001fa57600080fd5b505af11580156200020f573d6000803e3d6000fd5b50505050506200039d565b613cb0806200343383390190565b600081519050620002398162000383565b92915050565b60006020828403121562000258576200025762000355565b5b6000620002688482850162000228565b91505092915050565b6200027c81620002f9565b82525050565b600062000291601983620002e8565b91506200029e826200035a565b602082019050919050565b6000602082019050620002c0600083018462000271565b92915050565b60006020820190508181036000830152620002e18162000282565b9050919050565b600082825260208201905092915050565b6000620003068262000335565b9050919050565b60006200031a8262000335565b9050919050565b60006200032e826200030d565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600080fd5b7f5573696e675769746e65743a207a65726f206164647265737300000000000000600082015250565b6200038e8162000321565b81146200039a57600080fd5b50565b60805160601c60a05160601c6130086200042b60003960008181610960015281816109ca01528181610ecb01528181610fd301528181611507015261161001526000818161070301528181610cf501528181610da3015281816112c60152818161138f015281816114540152818161169301528181611763015281816119e10152611a9801526130086000f3fe6080604052600436106101095760003560e01c80639938fd0c11610095578063a60ee26811610064578063a60ee2681461038b578063daaa360c146103c8578063e35329f814610405578063e7d4a01614610435578063fb476cad1461047257610109565b80639938fd0c146102b85780639bc86fec146102e3578063a04daef014610320578063a3252f681461034b57610109565b806340b41daa116100dc57806340b41daa146101de578063439fab911461021b57806346d1d21a14610244578063699b328a1461026f5780637104ddb21461028d57610109565b806309ed46071461010e57806324cbbfc11461013957806336b651bb146101765780633b13e76e146101b3575b600080fd5b34801561011a57600080fd5b506101236104af565b6040516101309190612626565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b919061219c565b6104c7565b60405161016d91906127d8565b60405180910390f35b34801561018257600080fd5b5061019d600480360381019061019891906120ef565b61050d565b6040516101aa9190612794565b60405180910390f35b3480156101bf57600080fd5b506101c861055c565b6040516101d59190612677565b60405180910390f35b3480156101ea57600080fd5b50610205600480360381019061020091906120ef565b610580565b6040516102129190612794565b60405180910390f35b34801561022757600080fd5b50610242600480360381019061023d9190612003565b61061c565b005b34801561025057600080fd5b50610259610701565b604051610266919061265c565b60405180910390f35b610277610725565b6040516102849190612794565b60405180910390f35b34801561029957600080fd5b506102a261095e565b6040516102af919061251c565b60405180910390f35b3480156102c457600080fd5b506102cd610982565b6040516102da9190612794565b60405180910390f35b3480156102ef57600080fd5b5061030a600480360381019061030591906120ef565b610988565b60405161031791906125a5565b60405180910390f35b34801561032c57600080fd5b506103356109c6565b60405161034291906125a5565b60405180910390f35b34801561035757600080fd5b50610372600480360381019061036d91906120ef565b610a1d565b6040516103829493929190612560565b60405180910390f35b34801561039757600080fd5b506103b260048036038101906103ad91906120ef565b610a7e565b6040516103bf9190612794565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611fa9565b610a90565b6040516103fc9190612626565b60405180910390f35b61041f600480360381019061041a91906120ef565b610aab565b60405161042c9190612794565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190612149565b610b40565b60405161046991906127d8565b60405180910390f35b34801561047e57600080fd5b50610499600480360381019061049491906120ef565b610bc7565b6040516104a691906125c0565b60405180910390f35b60006104b9610ec6565b90506104c48161104f565b90565b60006105048484336104d886610bc7565b6040516020016104e9929190612537565b60405160208183030381529060405280519060200120610b40565b90509392505050565b600080821161051f5761051e612c52565b5b600060015490508083116105525761054d8360026000848152602001908152602001600020600101546111ed565b610554565b805b915050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156105fd576105f882600154611225565b610615565b60026000838152602001908152602001600020600201545b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a2906126b2565b60405180910390fd5b808060200190518101906106bf9190611f4f565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600043600154101561094a57600061075c60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611274565b80935081925050506000600260004381526020019081526020016000209050818160030181905550338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600154905080826001018190555043600260008381526020019081526020016000206002018190555043600181905550803373ffffffffffffffffffffffffffffffffffffffff167faf291bb4e1767569c77502edb6ad1009e856f57c09f214886c6becc9836c20c08560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309bd5a606040518163ffffffff1660e01b815260040160206040518083038186803b15801561089957600080fd5b505afa1580156108ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d19190611fd6565b6040516108df9291906127af565b60405180910390a334841015610942573373ffffffffffffffffffffffffffffffffffffffff166108fc85346109159190612a52565b9081150290604051600060405180830381858888f19350505050158015610940573d6000803e3d6000fd5b505b50505061095a565b61095343610aab565b905061095b565b5b90565b7f000000000000000000000000000000000000000000000000000000000000000081565b60015481565b60008060026000848152602001908152602001600020905060008160030154141580156109be57506109bd8160030154611377565b5b915050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6000806000806000600260008781526020019081526020016000209050806003015493508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1694508060010154925080600201549150509193509193565b6000610a8982611450565b9050919050565b6000610a9b82611502565b9050610aa68161104f565b919050565b6000806002600084815260200190815260200160002090506000816003015414610adf57610adc816003015461168e565b91505b34821015610b3a573373ffffffffffffffffffffffffffffffffffffffff166108fc8334610b0d9190612a52565b9081150290604051600060405180830381858888f19350505050158015610b38573d6000803e3d6000fd5b505b50919050565b600080610b4c856117f8565b60ff610b589190612a86565b905060006001826002610b6b91906128da565b610b759190612a52565b8486604051602001610b889291906125db565b6040516020818303038152906040528051906020012060001c1690508160ff168663ffffffff1682610bba91906129f8565b901c925050509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610c3f57610c3c82610580565b91505b6000600260008481526020019081526020016000206003015490506000811415610c9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9590612732565b60405180910390fd5b610ca781611377565b610ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdd906126d2565b60405180910390fd5b6000610cf1826119d7565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a8604c1a826040518263ffffffff1660e01b8152600401610d4c9190612772565b60206040518083038186803b158015610d6457600080fd5b505afa158015610d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9c9190611f7c565b15610e53577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663cf62d115826040518263ffffffff1660e01b8152600401610dfa9190612772565b60206040518083038186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e4a9190611fd6565b92505050610ec1565b6000600260008681526020019081526020016000206002015490506000811415610eb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea990612692565b60405180910390fd5b610ebb81610bc7565b93505050505b919050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610fba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fb190612752565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309ed46076040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110ba57600080fd5b505af11580156110ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f2919061204c565b90508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b815260040161112d919061251c565b600060405180830381600087803b15801561114757600080fd5b505af115801561115b573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff1663439fab918260405160200161118c919061251c565b6040516020818303038152906040526040518263ffffffff1660e01b81526004016111b79190612604565b600060405180830381600087803b1580156111d157600080fd5b505af11580156111e5573d6000803e3d6000fd5b505050505050565b600081831161121b576112168360026000858152602001908152602001600020600101546111ed565b61121d565b815b905092915050565b6000818310156112545761124f836002600085815260200190815260200160002060010154611225565b61126c565b60026000838152602001908152602001600020600201545b905092915050565b60008061127f611a94565b9050348111156112c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112bb906126f2565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b281a7bd82856040518363ffffffff1660e01b815260040161131e9190612641565b6020604051808303818588803b15801561133757600080fd5b505af115801561134b573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611370919061211c565b9150915091565b60006002600381111561138d5761138c612cb0565b5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636f07abcc846040518263ffffffff1660e01b81526004016113e69190612794565b60206040518083038186803b1580156113fe57600080fd5b505afa158015611412573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114369190612079565b600381111561144857611447612cb0565b5b149050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d2e87561836040518263ffffffff1660e01b81526004016114ab9190612794565b60206040518083038186803b1580156114c357600080fd5b505afa1580156114d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114fb919061211c565b9050919050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ee90612712565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631dd27daf846040518263ffffffff1660e01b81526004016116ea9190612794565b60206040518083038186803b15801561170257600080fd5b505afa158015611716573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173a919061211c565b90506000611746611a94565b905060008282111561176157828261175e9190612a52565b90505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166366bfdc7582876040518363ffffffff1660e01b81526004016117bb9190612794565b6000604051808303818588803b1580156117d457600080fd5b505af11580156117e8573d6000803e3d6000fd5b5050505050809350505050919050565b600080604051806104000160405280600060ff168152602001600960ff168152602001600160ff168152602001600a60ff168152602001600d60ff168152602001601560ff168152602001600260ff168152602001601d60ff168152602001600b60ff168152602001600e60ff168152602001601060ff168152602001601260ff168152602001601660ff168152602001601960ff168152602001600360ff168152602001601e60ff168152602001600860ff168152602001600c60ff168152602001601460ff168152602001601c60ff168152602001600f60ff168152602001601160ff168152602001601860ff168152602001600760ff168152602001601360ff168152602001601b60ff168152602001601760ff168152602001600660ff168152602001601a60ff168152602001600560ff168152602001600460ff168152602001601f60ff16815250905060018363ffffffff16901c8317925060028363ffffffff16901c8317925060048363ffffffff16901c8317925060088363ffffffff16901c8317925060108363ffffffff16901c8317925080601b6307c4acdd8563ffffffff166119ab91906129f8565b63ffffffff16901c63ffffffff16602081106119ca576119c9612cdf565b5b6020020151915050919050565b6119df611b44565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d4da69ac836040518263ffffffff1660e01b8152600401611a389190612794565b60006040518083038186803b158015611a5057600080fd5b505afa158015611a64573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611a8d91906120a6565b9050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d2e875613a6040518263ffffffff1660e01b8152600401611aef9190612794565b60206040518083038186803b158015611b0757600080fd5b505afa158015611b1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b3f919061211c565b905090565b6040518060400160405280600015158152602001611b60611b66565b81525090565b6040518060c00160405280611b79611bbf565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b604051806040016040528060608152602001600063ffffffff1681525090565b6000611bf2611bed84612818565b6127f3565b905082815260208101848484011115611c0e57611c0d612d4c565b5b611c19848285612bdf565b509392505050565b6000611c34611c2f84612818565b6127f3565b905082815260208101848484011115611c5057611c4f612d4c565b5b611c5b848285612bee565b509392505050565b600081519050611c7281612f0a565b92915050565b600081519050611c8781612f21565b92915050565b600081359050611c9c81612f38565b92915050565b600081519050611cb181612f38565b92915050565b600082601f830112611ccc57611ccb612d3d565b5b8135611cdc848260208601611bdf565b91505092915050565b600082601f830112611cfa57611cf9612d3d565b5b8151611d0a848260208601611c21565b91505092915050565b600081519050611d2281612f4f565b92915050565b600081519050611d3781612f66565b92915050565b600060408284031215611d5357611d52612d42565b5b611d5d60406127f3565b9050600082015167ffffffffffffffff811115611d7d57611d7c612d47565b5b611d8984828501611ce5565b6000830152506020611d9d84828501611f10565b60208301525092915050565b600060c08284031215611dbf57611dbe612d42565b5b611dc960c06127f3565b9050600082015167ffffffffffffffff811115611de957611de8612d47565b5b611df584828501611d3d565b6000830152506020611e0984828501611f3a565b6020830152506040611e1d84828501611f3a565b6040830152506060611e3184828501611f3a565b6060830152506080611e4584828501611f25565b60808301525060a0611e5984828501611f25565b60a08301525092915050565b600060408284031215611e7b57611e7a612d42565b5b611e8560406127f3565b90506000611e9584828501611c78565b600083015250602082015167ffffffffffffffff811115611eb957611eb8612d47565b5b611ec584828501611da9565b60208301525092915050565b600081359050611ee081612f76565b92915050565b600081519050611ef581612f76565b92915050565b600081359050611f0a81612f8d565b92915050565b600081519050611f1f81612f8d565b92915050565b600081519050611f3481612fa4565b92915050565b600081519050611f4981612fbb565b92915050565b600060208284031215611f6557611f64612d56565b5b6000611f7384828501611c63565b91505092915050565b600060208284031215611f9257611f91612d56565b5b6000611fa084828501611c78565b91505092915050565b600060208284031215611fbf57611fbe612d56565b5b6000611fcd84828501611c8d565b91505092915050565b600060208284031215611fec57611feb612d56565b5b6000611ffa84828501611ca2565b91505092915050565b60006020828403121561201957612018612d56565b5b600082013567ffffffffffffffff81111561203757612036612d51565b5b61204384828501611cb7565b91505092915050565b60006020828403121561206257612061612d56565b5b600061207084828501611d13565b91505092915050565b60006020828403121561208f5761208e612d56565b5b600061209d84828501611d28565b91505092915050565b6000602082840312156120bc576120bb612d56565b5b600082015167ffffffffffffffff8111156120da576120d9612d51565b5b6120e684828501611e65565b91505092915050565b60006020828403121561210557612104612d56565b5b600061211384828501611ed1565b91505092915050565b60006020828403121561213257612131612d56565b5b600061214084828501611ee6565b91505092915050565b60008060006060848603121561216257612161612d56565b5b600061217086828701611efb565b935050602061218186828701611ed1565b925050604061219286828701611c8d565b9150509250925092565b6000806000606084860312156121b5576121b4612d56565b5b60006121c386828701611efb565b93505060206121d486828701611ed1565b92505060406121e586828701611ed1565b9150509250925092565b6121f881612aba565b82525050565b61220781612ade565b82525050565b61221681612ade565b82525050565b61222581612aea565b82525050565b600061223682612849565b6122408185612854565b9350612250818560208601612bee565b61225981612d5b565b840191505092915050565b600061226f82612849565b6122798185612865565b9350612289818560208601612bee565b61229281612d5b565b840191505092915050565b6122a681612b61565b82525050565b6122b581612b73565b82525050565b6122c481612b85565b82525050565b6122d381612b97565b82525050565b60006122e6602283612876565b91506122f182612d79565b604082019050919050565b6000612309602583612876565b915061231482612dc8565b604082019050919050565b600061232c602383612876565b915061233782612e17565b604082019050919050565b600061234f601b83612876565b915061235a82612e66565b602082019050919050565b6000612372601883612876565b915061237d82612e8f565b602082019050919050565b6000612395602083612876565b91506123a082612eb8565b602082019050919050565b60006123b8601783612876565b91506123c382612ee1565b602082019050919050565b600060408301600083015184820360008601526123eb828261222b565b915050602083015161240060208601826124e0565b508091505092915050565b600060c083016000830151848203600086015261242882826123ce565b915050602083015161243d602086018261250d565b506040830151612450604086018261250d565b506060830151612463606086018261250d565b50608083015161247660808601826124fe565b5060a083015161248960a08601826124fe565b508091505092915050565b60006040830160008301516124ac60008601826121fe565b50602083015184820360208601526124c4828261240b565b9150508091505092915050565b6124da81612b26565b82525050565b6124e981612b30565b82525050565b6124f881612b30565b82525050565b61250781612b40565b82525050565b61251681612b54565b82525050565b600060208201905061253160008301846121ef565b92915050565b600060408201905061254c60008301856121ef565b612559602083018461221c565b9392505050565b600060808201905061257560008301876121ef565b61258260208301866124d1565b61258f60408301856124d1565b61259c60608301846124d1565b95945050505050565b60006020820190506125ba600083018461220d565b92915050565b60006020820190506125d5600083018461221c565b92915050565b60006040820190506125f0600083018561221c565b6125fd60208301846124d1565b9392505050565b6000602082019050818103600083015261261e8184612264565b905092915050565b600060208201905061263b600083018461229d565b92915050565b600060208201905061265660008301846122ac565b92915050565b600060208201905061267160008301846122bb565b92915050565b600060208201905061268c60008301846122ca565b92915050565b600060208201905081810360008301526126ab816122d9565b9050919050565b600060208201905081810360008301526126cb816122fc565b9050919050565b600060208201905081810360008301526126eb8161231f565b9050919050565b6000602082019050818103600083015261270b81612342565b9050919050565b6000602082019050818103600083015261272b81612365565b9050919050565b6000602082019050818103600083015261274b81612388565b9050919050565b6000602082019050818103600083015261276b816123ab565b9050919050565b6000602082019050818103600083015261278c8184612494565b905092915050565b60006020820190506127a960008301846124d1565b92915050565b60006040820190506127c460008301856124d1565b6127d1602083018461221c565b9392505050565b60006020820190506127ed60008301846124ef565b92915050565b60006127fd61280e565b90506128098282612c21565b919050565b6000604051905090565b600067ffffffffffffffff82111561283357612832612d0e565b5b61283c82612d5b565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000808291508390505b60018511156128d1578086048111156128ad576128ac612c81565b5b60018516156128bc5780820291505b80810290506128ca85612d6c565b9450612891565b94509492505050565b60006128e582612b26565b91506128f083612b54565b925061291d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612925565b905092915050565b60008261293557600190506129f1565b8161294357600090506129f1565b8160018114612959576002811461296357612992565b60019150506129f1565b60ff84111561297557612974612c81565b5b8360020a91508482111561298c5761298b612c81565b5b506129f1565b5060208310610133831016604e8410600b84101617156129c75782820a9050838111156129c2576129c1612c81565b5b6129f1565b6129d48484846001612887565b925090508184048111156129eb576129ea612c81565b5b81810290505b9392505050565b6000612a0382612b26565b9150612a0e83612b26565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612a4757612a46612c81565b5b828202905092915050565b6000612a5d82612b26565b9150612a6883612b26565b925082821015612a7b57612a7a612c81565b5b828203905092915050565b6000612a9182612b54565b9150612a9c83612b54565b925082821015612aaf57612aae612c81565b5b828203905092915050565b6000612ac582612b06565b9050919050565b6000612ad782612b06565b9050919050565b60008115159050919050565b6000819050919050565b6000612aff82612aba565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b6000612b6c82612ba9565b9050919050565b6000612b7e82612ba9565b9050919050565b6000612b9082612bbb565b9050919050565b6000612ba282612ba9565b9050919050565b6000612bb482612bcd565b9050919050565b6000612bc682612bcd565b9050919050565b6000612bd882612b06565b9050919050565b82818337600083830152505050565b60005b83811015612c0c578082015181840152602081019050612bf1565b83811115612c1b576000848401525b50505050565b612c2a82612d5b565b810181811067ffffffffffffffff82111715612c4957612c48612d0e565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f5769746e657452616e646f6d6e6573733a206661756c74792072616e646f6d6960008201527f7a65000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573733a20616c726561647920696e6974696160008201527f6c697a6564000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573733a2070656e64696e672072616e646f6d60008201527f697a650000000000000000000000000000000000000000000000000000000000602082015250565b7f5573696e675769746e65743a2072657761726420746f6f206c6f770000000000600082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e657452616e646f6d6e6573733a206e6f742072616e646f6d697a6564600082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b612f1381612acc565b8114612f1e57600080fd5b50565b612f2a81612ade565b8114612f3557600080fd5b50565b612f4181612aea565b8114612f4c57600080fd5b50565b612f5881612af4565b8114612f6357600080fd5b50565b60048110612f7357600080fd5b50565b612f7f81612b26565b8114612f8a57600080fd5b50565b612f9681612b30565b8114612fa157600080fd5b50565b612fad81612b40565b8114612fb857600080fd5b50565b612fc481612b54565b8114612fcf57600080fd5b5056fea2646970667358221220f4691b938720c3e8f10b1b6d4c19bdf6f673f6bcd601a4aee2842c50207e6baa64736f6c6343000807003360a06040523073ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b8152503480156200004757600080fd5b50620000686200005c6200008e60201b60201c565b6200009660201b60201c565b62000088604051806020016040528060008152506200017e60201b60201c565b62001259565b600033905090565b6000620000a8620001cc60201b60201c565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081620000df620001cc60201b60201c565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620001c96040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250620001f460201b62000e261760201c565b50565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b600062000206620001cc60201b60201c565b6001018054620002169062000f58565b9050146200025b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002529062000d78565b60405180910390fd5b6200026c816200028f60201b60201c565b6200028c620002806200008e60201b60201c565b6200009660201b60201c565b50565b6000815111620002a457620002a362000fc4565b5b80620002b5620001cc60201b60201c565b6001019080519060200190620002cd92919062000a17565b506000620002e0620001cc60201b60201c565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506200042b8160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff166200042f60201b60201c565b5050565b60008267ffffffffffffffff16116200047f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004769062000d56565b60405180910390fd5b60018560ff1610158015620004985750607f8560ff1611155b620004da576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004d19062000d9a565b60405180910390fd5b60338460ff1610158015620004f3575060638460ff1611155b62000535576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200052c9062000d34565b60405180910390fd5b633b9aca008367ffffffffffffffff16101562000589576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005809062000dbc565b60405180910390fd5b62000599620001cc60201b60201c565b600101620005b2601060f81b846200078860201b60201c565b620005c8601860f81b886200099a60201b60201c565b620005de602060f81b856200078860201b60201c565b620005f4602860f81b896200099a60201b60201c565b6200060a603060f81b896200078860201b60201c565b604051602001620006219695949392919062000cd0565b60405160208183030381529060405262000640620001cc60201b60201c565b60020190805190602001906200065892919062000a17565b50620007126200066d620001cc60201b60201c565b60020180546200067d9062000f58565b80601f0160208091040260200160405190810160405280929190818152602001828054620006ab9062000f58565b8015620006fc5780601f10620006d057610100808354040283529160200191620006fc565b820191906000526020600020905b815481529060010190602001808311620006de57829003601f168201915b5050505050620009b960201b62000e9c1760201c565b62000722620001cc60201b60201c565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b086868686866040516200077995949392919062000dde565b60405180910390a25050505050565b606060008290506000600290505b607f8267ffffffffffffffff161115620007d25760078267ffffffffffffffff16901c9150600181620007ca919062000e77565b905062000796565b60008167ffffffffffffffff1667ffffffffffffffff811115620007fb57620007fa62001080565b5b6040519080825280601f01601f1916602001820160405280156200082e5781602001600182028036833780820191505090505b50905084925085816000815181106200084c576200084b62001051565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff1610156200091f57607f841660801760f81b828267ffffffffffffffff1681518110620008c957620008c862001051565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c93508080620009169062000f8e565b91505062000882565b50607f60f81b8160018462000935919062000ebc565b67ffffffffffffffff168151811062000953576200095262001051565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060620009b1838360ff166200078860201b60201c565b905092915050565b6000600282604051620009cd919062000cb7565b602060405180830381855afa158015620009eb573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019062000a10919062000ade565b9050919050565b82805462000a259062000f58565b90600052602060002090601f01602090048101928262000a49576000855562000a95565b82601f1062000a6457805160ff191683800117855562000a95565b8280016001018555821562000a95579182015b8281111562000a9457825182559160200191906001019062000a77565b5b50905062000aa4919062000aa8565b5090565b5b8082111562000ac357600081600090555060010162000aa9565b5090565b60008151905062000ad8816200123f565b92915050565b60006020828403121562000af75762000af6620010af565b5b600062000b078482850162000ac7565b91505092915050565b600062000b1d8262000e50565b62000b29818562000e5b565b935062000b3b81856020860162000f22565b80840191505092915050565b6000815462000b568162000f58565b62000b62818662000e5b565b9450600182166000811462000b80576001811462000b925762000bc9565b60ff1983168652818601935062000bc9565b62000b9d8562000e3b565b60005b8381101562000bc15781548189015260018201915060208101905062000ba0565b838801955050505b50505092915050565b600062000be1603d8362000e66565b915062000bee82620010b4565b604082019050919050565b600062000c0860258362000e66565b915062000c158262001103565b604082019050919050565b600062000c2f602f8362000e66565b915062000c3c8262001152565b604082019050919050565b600062000c56603c8362000e66565b915062000c6382620011a1565b604082019050919050565b600062000c7d603d8362000e66565b915062000c8a82620011f0565b604082019050919050565b62000ca08162000f01565b82525050565b62000cb18162000f15565b82525050565b600062000cc5828462000b10565b915081905092915050565b600062000cde828962000b47565b915062000cec828862000b10565b915062000cfa828762000b10565b915062000d08828662000b10565b915062000d16828562000b10565b915062000d24828462000b10565b9150819050979650505050505050565b6000602082019050818103600083015262000d4f8162000bd2565b9050919050565b6000602082019050818103600083015262000d718162000bf9565b9050919050565b6000602082019050818103600083015262000d938162000c20565b9050919050565b6000602082019050818103600083015262000db58162000c47565b9050919050565b6000602082019050818103600083015262000dd78162000c6e565b9050919050565b600060a08201905062000df5600083018862000ca6565b62000e04602083018762000ca6565b62000e13604083018662000c95565b62000e22606083018562000c95565b62000e31608083018462000c95565b9695505050505050565b60008190508160005260206000209050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600062000e848262000f01565b915062000e918362000f01565b92508267ffffffffffffffff0382111562000eb15762000eb062000ff3565b5b828201905092915050565b600062000ec98262000f01565b915062000ed68362000f01565b92508282101562000eec5762000eeb62000ff3565b5b828203905092915050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b60005b8381101562000f4257808201518184015260208101905062000f25565b8381111562000f52576000848401525b50505050565b6000600282049050600182168062000f7157607f821691505b6020821081141562000f885762000f8762001022565b5b50919050565b600062000f9b8262000f01565b915067ffffffffffffffff82141562000fb95762000fb862000ff3565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b6200124a8162000ef7565b81146200125657600080fd5b50565b60805160601c612a156200129b600039600081816106290152818161079101528181610f220152818161102a01528181611473015261157c0152612a156000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063daaa360c11610071578063daaa360c14610287578063ef53d97a146102b7578063f0940002146102d5578063f2fde38b146102f3578063ff21c3ba1461030f57610116565b80638da5cb5b14610213578063a04daef014610231578063d196c2e31461024f578063d9b9a9611461026b57610116565b806352d1902d116100e957806352d1902d146101915780636f2ddd93146101af5780637104ddb2146101cd578063715018a6146101eb5780638a481dad146101f557610116565b806309bd5a601461011b57806309ed460714610139578063439fab911461015757806348f9b83114610173575b600080fd5b61012361032b565b6040516101309190612113565b60405180910390f35b61014161033e565b60405161014e9190612172565b60405180910390f35b610171600480360381019061016c9190611be5565b61042d565b005b61017b61046e565b60405161018891906122ad565b60405180910390f35b610199610561565b6040516101a69190612113565b60405180910390f35b6101b761058c565b6040516101c4919061212e565b60405180910390f35b6101d5610627565b6040516101e291906120dd565b60405180910390f35b6101f361064b565b005b6101fd6106d3565b60405161020a91906122c8565b60405180910390f35b61021b61075a565b60405161022891906120dd565b60405180910390f35b61023961078d565b60405161024691906120f8565b60405180910390f35b61026960048036038101906102649190611c9b565b6107e4565b005b61028560048036038101906102809190611c2e565b610903565b005b6102a1600480360381019061029c9190611b8b565b610a1c565b6040516102ae9190612172565b60405180910390f35b6102bf610b0e565b6040516102cc91906122c8565b60405180910390f35b6102dd610b66565b6040516102ea919061212e565b60405180910390f35b61030d60048036038101906103089190611b5e565b610c01565b005b61032960048036038101906103249190611c5b565b610cf9565b005b6000610335610ef5565b60030154905090565b6000610348610f1d565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab9161036e610ef5565b6001016040518263ffffffff1660e01b815260040161038d9190612150565b600060405180830381600087803b1580156103a757600080fd5b505af11580156103bb573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b81526004016103f891906120dd565b600060405180830381600087803b15801561041257600080fd5b505af1158015610426573d6000803e3d6000fd5b5050505090565b61046b6040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250610e26565b50565b61047661198f565b61047e610ef5565b6004016040518060a00160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016000820160019054906101000a900460ff1660ff1660ff1681526020016000820160029054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201600a9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016000820160129054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681525050905090565b60007f851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c260001b905090565b6060610596610ef5565b60010180546105a49061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546105d09061258a565b801561061d5780601f106105f25761010080835404028352916020019161061d565b820191906000526020600020905b81548152906001019060200180831161060057829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6106536110a6565b73ffffffffffffffffffffffffffffffffffffffff1661067161075a565b73ffffffffffffffffffffffffffffffffffffffff16146106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be9061224d565b60405180910390fd5b6106d160006110ae565b565b6000806106de610ef5565b600401905080600001600a9054906101000a900467ffffffffffffffff168160000160129054906101000a900467ffffffffffffffff1660026107219190612417565b61072b91906123d9565b8160000160009054906101000a900460ff1660ff1661074a9190612417565b67ffffffffffffffff1691505090565b6000610764610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6107ec6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661080a61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610860576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108579061224d565b60405180910390fd5b600061086a610ef5565b6004019050828160000160006101000a81548160ff021916908360ff160217905550818160000160016101000a81548160ff021916908360ff1602179055506108fe83838360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b505050565b61090b6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661092961075a565b73ffffffffffffffffffffffffffffffffffffffff161461097f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109769061224d565b60405180910390fd5b6000610989610ef5565b6004019050818160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610a188160000160009054906101000a900460ff168260000160019054906101000a900460ff168484600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b6000610a278261146e565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab91610a4d610ef5565b6001016040518263ffffffff1660e01b8152600401610a6c9190612150565b600060405180830381600087803b158015610a8657600080fd5b505af1158015610a9a573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401610ad791906120dd565b600060405180830381600087803b158015610af157600080fd5b505af1158015610b05573d6000803e3d6000fd5b50505050919050565b600080610b19610ef5565b60040190508060000160029054906101000a900467ffffffffffffffff168160000160009054906101000a900460ff1660ff16610b569190612417565b67ffffffffffffffff1691505090565b6060610b70610ef5565b6002018054610b7e9061258a565b80601f0160208091040260200160405190810160405280929190818152602001828054610baa9061258a565b8015610bf75780601f10610bcc57610100808354040283529160200191610bf7565b820191906000526020600020905b815481529060010190602001808311610bda57829003601f168201915b5050505050905090565b610c096110a6565b73ffffffffffffffffffffffffffffffffffffffff16610c2761075a565b73ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c749061224d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce49061218d565b60405180910390fd5b610cf6816110ae565b50565b610d016110a6565b73ffffffffffffffffffffffffffffffffffffffff16610d1f61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610d75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6c9061224d565b60405180910390fd5b6000610d7f610ef5565b60040190508281600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550818160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610e218160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff168686611186565b505050565b6000610e30610ef5565b6001018054610e3e9061258a565b905014610e80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e779061220d565b60405180910390fd5b610e89816115fa565b610e99610e946110a6565b6110ae565b50565b6000600282604051610eae919061206e565b602060405180830381855afa158015610ecb573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610eee9190611bb8565b9050919050565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611011576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110089061228d565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b600033905090565b60006110b8610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816110e7610ef5565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008267ffffffffffffffff16116111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca906121cd565b60405180910390fd5b60018560ff16101580156111eb5750607f8560ff1611155b61122a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112219061222d565b60405180910390fd5b60338460ff1610158015611242575060638460ff1611155b611281576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611278906121ad565b60405180910390fd5b633b9aca008367ffffffffffffffff1610156112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c99061226d565b60405180910390fd5b6112da610ef5565b6001016112eb601060f81b8461177d565b6112f9601860f81b88611978565b611307602060f81b8561177d565b611315602860f81b89611978565b611323603060f81b8961177d565b60405160200161133896959493929190612085565b60405160208183030381529060405261134f610ef5565b60020190805190602001906113659291906119e2565b50611402611371610ef5565b600201805461137f9061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546113ab9061258a565b80156113f85780601f106113cd576101008083540402835291602001916113f8565b820191906000526020600020905b8154815290600101906020018083116113db57829003601f168201915b5050505050610e9c565b61140a610ef5565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b0868686868660405161145f9594939291906122e3565b60405180910390a25050505050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a906121ed565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b600081511161160c5761160b61261e565b5b80611615610ef5565b600101908051906020019061162b9291906119e2565b506000611636610ef5565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506117798160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b606060008290506000600290505b607f8267ffffffffffffffff1611156117c35760078267ffffffffffffffff16901c91506001816117bc91906123d9565b905061178b565b60008167ffffffffffffffff1667ffffffffffffffff8111156117e9576117e86126da565b5b6040519080825280601f01601f19166020018201604052801561181b5781602001600182028036833780820191505090505b5090508492508581600081518110611836576118356126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff16101561190257607f841660801760f81b828267ffffffffffffffff16815181106118af576118ae6126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c935080806118fa906125ed565b91505061186c565b50607f60f81b816001846119169190612459565b67ffffffffffffffff1681518110611931576119306126ab565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060611987838360ff1661177d565b905092915050565b6040518060a00160405280600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b8280546119ee9061258a565b90600052602060002090601f016020900481019282611a105760008555611a57565b82601f10611a2957805160ff1916838001178555611a57565b82800160010185558215611a57579182015b82811115611a56578251825591602001919060010190611a3b565b5b509050611a649190611a68565b5090565b5b80821115611a81576000816000905550600101611a69565b5090565b6000611a98611a938461235b565b612336565b905082815260208101848484011115611ab457611ab361270e565b5b611abf848285612548565b509392505050565b600081359050611ad681612983565b92915050565b600081359050611aeb8161299a565b92915050565b600081519050611b008161299a565b92915050565b600082601f830112611b1b57611b1a612709565b5b8135611b2b848260208601611a85565b91505092915050565b600081359050611b43816129b1565b92915050565b600081359050611b58816129c8565b92915050565b600060208284031215611b7457611b73612718565b5b6000611b8284828501611ac7565b91505092915050565b600060208284031215611ba157611ba0612718565b5b6000611baf84828501611adc565b91505092915050565b600060208284031215611bce57611bcd612718565b5b6000611bdc84828501611af1565b91505092915050565b600060208284031215611bfb57611bfa612718565b5b600082013567ffffffffffffffff811115611c1957611c18612713565b5b611c2584828501611b06565b91505092915050565b600060208284031215611c4457611c43612718565b5b6000611c5284828501611b34565b91505092915050565b60008060408385031215611c7257611c71612718565b5b6000611c8085828601611b34565b9250506020611c9185828601611b34565b9150509250929050565b60008060408385031215611cb257611cb1612718565b5b6000611cc085828601611b49565b9250506020611cd185828601611b49565b9150509250929050565b611ce48161248d565b82525050565b611cf38161249f565b82525050565b611d02816124ab565b82525050565b6000611d13826123a1565b611d1d81856123ac565b9350611d2d818560208601612557565b611d368161271d565b840191505092915050565b6000611d4c826123a1565b611d5681856123bd565b9350611d66818560208601612557565b80840191505092915050565b60008154611d7f8161258a565b611d8981866123ac565b94506001821660008114611da45760018114611db657611de9565b60ff1983168652602086019350611de9565b611dbf8561238c565b60005b83811015611de157815481890152600182019150602081019050611dc2565b808801955050505b50505092915050565b60008154611dff8161258a565b611e0981866123bd565b94506001821660008114611e245760018114611e3557611e68565b60ff19831686528186019350611e68565b611e3e8561238c565b60005b83811015611e6057815481890152600182019150602081019050611e41565b838801955050505b50505092915050565b611e7a81612512565b82525050565b6000611e8d6026836123c8565b9150611e988261272e565b604082019050919050565b6000611eb0603d836123c8565b9150611ebb8261277d565b604082019050919050565b6000611ed36025836123c8565b9150611ede826127cc565b604082019050919050565b6000611ef66018836123c8565b9150611f018261281b565b602082019050919050565b6000611f19602f836123c8565b9150611f2482612844565b604082019050919050565b6000611f3c603c836123c8565b9150611f4782612893565b604082019050919050565b6000611f5f6020836123c8565b9150611f6a826128e2565b602082019050919050565b6000611f82603d836123c8565b9150611f8d8261290b565b604082019050919050565b6000611fa56017836123c8565b9150611fb08261295a565b602082019050919050565b60a082016000820151611fd16000850182612050565b506020820151611fe46020850182612050565b506040820151611ff76040850182612032565b50606082015161200a6060850182612032565b50608082015161201d6080850182612032565b50505050565b61202c816124b5565b82525050565b61203b816124f1565b82525050565b61204a816124f1565b82525050565b61205981612505565b82525050565b61206881612505565b82525050565b600061207a8284611d41565b915081905092915050565b60006120918289611df2565b915061209d8288611d41565b91506120a98287611d41565b91506120b58286611d41565b91506120c18285611d41565b91506120cd8284611d41565b9150819050979650505050505050565b60006020820190506120f26000830184611cdb565b92915050565b600060208201905061210d6000830184611cea565b92915050565b60006020820190506121286000830184611cf9565b92915050565b600060208201905081810360008301526121488184611d08565b905092915050565b6000602082019050818103600083015261216a8184611d72565b905092915050565b60006020820190506121876000830184611e71565b92915050565b600060208201905081810360008301526121a681611e80565b9050919050565b600060208201905081810360008301526121c681611ea3565b9050919050565b600060208201905081810360008301526121e681611ec6565b9050919050565b6000602082019050818103600083015261220681611ee9565b9050919050565b6000602082019050818103600083015261222681611f0c565b9050919050565b6000602082019050818103600083015261224681611f2f565b9050919050565b6000602082019050818103600083015261226681611f52565b9050919050565b6000602082019050818103600083015261228681611f75565b9050919050565b600060208201905081810360008301526122a681611f98565b9050919050565b600060a0820190506122c26000830184611fbb565b92915050565b60006020820190506122dd6000830184612023565b92915050565b600060a0820190506122f8600083018861205f565b612305602083018761205f565b6123126040830186612041565b61231f6060830185612041565b61232c6080830184612041565b9695505050505050565b6000612340612351565b905061234c82826125bc565b919050565b6000604051905090565b600067ffffffffffffffff821115612376576123756126da565b5b61237f8261271d565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006123e4826124f1565b91506123ef836124f1565b92508267ffffffffffffffff0382111561240c5761240b61264d565b5b828201905092915050565b6000612422826124f1565b915061242d836124f1565b92508167ffffffffffffffff048311821515161561244e5761244d61264d565b5b828202905092915050565b6000612464826124f1565b915061246f836124f1565b9250828210156124825761248161264d565b5b828203905092915050565b6000612498826124d1565b9050919050565b60008115159050919050565b6000819050919050565b60006fffffffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b600061251d82612524565b9050919050565b600061252f82612536565b9050919050565b6000612541826124d1565b9050919050565b82818337600083830152505050565b60005b8381101561257557808201518184015260208101905061255a565b83811115612584576000848401525b50505050565b600060028204905060018216806125a257607f821691505b602082108114156125b6576125b561267c565b5b50919050565b6125c58261271d565b810181811067ffffffffffffffff821117156125e4576125e36126da565b5b80604052505050565b60006125f8826124f1565b915067ffffffffffffffff8214156126135761261261264d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b61298c8161248d565b811461299757600080fd5b50565b6129a3816124ab565b81146129ae57600080fd5b50565b6129ba816124f1565b81146129c557600080fd5b50565b6129d181612505565b81146129dc57600080fd5b5056fea264697066735822122018d3be95fdcbd8bc6f0654dc2eb3dcdc04b923b60a7642bd2f454937f279d0f064736f6c63430008070033","opcodes":"PUSH1 0xC0 PUSH1 0x40 MSTORE ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP CALLVALUE DUP1 ISZERO PUSH3 0x47 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x70E3 CODESIZE SUB DUP1 PUSH3 0x70E3 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x6D SWAP2 SWAP1 PUSH3 0x23F JUMP JUMPDEST DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH3 0xE1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0xD8 SWAP1 PUSH3 0x2C6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP PUSH1 0x40 MLOAD PUSH3 0x127 SWAP1 PUSH3 0x21A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH3 0x144 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x1DF SWAP2 SWAP1 PUSH3 0x2A9 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x1FA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x20F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP PUSH3 0x39D JUMP JUMPDEST PUSH2 0x3CB0 DUP1 PUSH3 0x3433 DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x239 DUP2 PUSH3 0x383 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0x258 JUMPI PUSH3 0x257 PUSH3 0x355 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0x268 DUP5 DUP3 DUP6 ADD PUSH3 0x228 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH3 0x27C DUP2 PUSH3 0x2F9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x291 PUSH1 0x19 DUP4 PUSH3 0x2E8 JUMP JUMPDEST SWAP2 POP PUSH3 0x29E DUP3 PUSH3 0x35A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH3 0x2C0 PUSH1 0x0 DUP4 ADD DUP5 PUSH3 0x271 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH3 0x2E1 DUP2 PUSH3 0x282 JUMP JUMPDEST 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 PUSH3 0x306 DUP3 PUSH3 0x335 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x31A DUP3 PUSH3 0x335 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x32E DUP3 PUSH3 0x30D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x5573696E675769746E65743A207A65726F206164647265737300000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH3 0x38E DUP2 PUSH3 0x321 JUMP JUMPDEST DUP2 EQ PUSH3 0x39A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH2 0x3008 PUSH3 0x42B PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x960 ADD MSTORE DUP2 DUP2 PUSH2 0x9CA ADD MSTORE DUP2 DUP2 PUSH2 0xECB ADD MSTORE DUP2 DUP2 PUSH2 0xFD3 ADD MSTORE DUP2 DUP2 PUSH2 0x1507 ADD MSTORE PUSH2 0x1610 ADD MSTORE PUSH1 0x0 DUP2 DUP2 PUSH2 0x703 ADD MSTORE DUP2 DUP2 PUSH2 0xCF5 ADD MSTORE DUP2 DUP2 PUSH2 0xDA3 ADD MSTORE DUP2 DUP2 PUSH2 0x12C6 ADD MSTORE DUP2 DUP2 PUSH2 0x138F ADD MSTORE DUP2 DUP2 PUSH2 0x1454 ADD MSTORE DUP2 DUP2 PUSH2 0x1693 ADD MSTORE DUP2 DUP2 PUSH2 0x1763 ADD MSTORE DUP2 DUP2 PUSH2 0x19E1 ADD MSTORE PUSH2 0x1A98 ADD MSTORE PUSH2 0x3008 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x109 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9938FD0C GT PUSH2 0x95 JUMPI DUP1 PUSH4 0xA60EE268 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0xA60EE268 EQ PUSH2 0x38B JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x3C8 JUMPI DUP1 PUSH4 0xE35329F8 EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0xE7D4A016 EQ PUSH2 0x435 JUMPI DUP1 PUSH4 0xFB476CAD EQ PUSH2 0x472 JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9938FD0C EQ PUSH2 0x2B8 JUMPI DUP1 PUSH4 0x9BC86FEC EQ PUSH2 0x2E3 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x320 JUMPI DUP1 PUSH4 0xA3252F68 EQ PUSH2 0x34B JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x40B41DAA GT PUSH2 0xDC JUMPI DUP1 PUSH4 0x40B41DAA EQ PUSH2 0x1DE JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x21B JUMPI DUP1 PUSH4 0x46D1D21A EQ PUSH2 0x244 JUMPI DUP1 PUSH4 0x699B328A EQ PUSH2 0x26F JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x28D JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x10E JUMPI DUP1 PUSH4 0x24CBBFC1 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x36B651BB EQ PUSH2 0x176 JUMPI DUP1 PUSH4 0x3B13E76E EQ PUSH2 0x1B3 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x11A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x123 PUSH2 0x4AF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x2626 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x145 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x160 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15B SWAP2 SWAP1 PUSH2 0x219C JUMP JUMPDEST PUSH2 0x4C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x16D SWAP2 SWAP1 PUSH2 0x27D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x182 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x19D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x198 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0x50D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C8 PUSH2 0x55C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1D5 SWAP2 SWAP1 PUSH2 0x2677 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x200 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0x580 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x212 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x227 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x242 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23D SWAP2 SWAP1 PUSH2 0x2003 JUMP JUMPDEST PUSH2 0x61C JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x250 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x259 PUSH2 0x701 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x266 SWAP2 SWAP1 PUSH2 0x265C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x277 PUSH2 0x725 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x284 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x299 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2A2 PUSH2 0x95E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AF SWAP2 SWAP1 PUSH2 0x251C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2CD PUSH2 0x982 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2DA SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x305 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0x988 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x317 SWAP2 SWAP1 PUSH2 0x25A5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x32C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x335 PUSH2 0x9C6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x342 SWAP2 SWAP1 PUSH2 0x25A5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x357 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x372 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x36D SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xA1D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x382 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2560 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x397 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3B2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3AD SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xA7E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3BF SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3EA SWAP2 SWAP1 PUSH2 0x1FA9 JUMP JUMPDEST PUSH2 0xA90 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x2626 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41A SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xAAB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x42C SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x441 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x45C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x457 SWAP2 SWAP1 PUSH2 0x2149 JUMP JUMPDEST PUSH2 0xB40 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x469 SWAP2 SWAP1 PUSH2 0x27D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x47E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x499 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x494 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xBC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A6 SWAP2 SWAP1 PUSH2 0x25C0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x4B9 PUSH2 0xEC6 JUMP JUMPDEST SWAP1 POP PUSH2 0x4C4 DUP2 PUSH2 0x104F JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP5 DUP5 CALLER PUSH2 0x4D8 DUP7 PUSH2 0xBC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4E9 SWAP3 SWAP2 SWAP1 PUSH2 0x2537 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH2 0xB40 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x51F JUMPI PUSH2 0x51E PUSH2 0x2C52 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP4 GT PUSH2 0x552 JUMPI PUSH2 0x54D DUP4 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x11ED JUMP JUMPDEST PUSH2 0x554 JUMP JUMPDEST DUP1 JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x5FD JUMPI PUSH2 0x5F8 DUP3 PUSH1 0x1 SLOAD PUSH2 0x1225 JUMP JUMPDEST PUSH2 0x615 JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6AB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A2 SWAP1 PUSH2 0x26B2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x6BF SWAP2 SWAP1 PUSH2 0x1F4F JUMP JUMPDEST 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 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 NUMBER PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x94A JUMPI PUSH1 0x0 PUSH2 0x75C PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1274 JUMP JUMPDEST DUP1 SWAP4 POP DUP2 SWAP3 POP POP POP PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 NUMBER DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP3 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x1 DUP2 SWAP1 SSTORE POP DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xAF291BB4E1767569C77502EDB6AD1009E856F57C09F214886C6BECC9836C20C0 DUP6 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9BD5A60 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 0x899 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AD 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 0x8D1 SWAP2 SWAP1 PUSH2 0x1FD6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8DF SWAP3 SWAP2 SWAP1 PUSH2 0x27AF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 CALLVALUE DUP5 LT ISZERO PUSH2 0x942 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP6 CALLVALUE PUSH2 0x915 SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x940 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST POP POP POP PUSH2 0x95A JUMP JUMPDEST PUSH2 0x953 NUMBER PUSH2 0xAAB JUMP JUMPDEST SWAP1 POP PUSH2 0x95B JUMP JUMPDEST JUMPDEST SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x3 ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x9BE JUMPI POP PUSH2 0x9BD DUP2 PUSH1 0x3 ADD SLOAD PUSH2 0x1377 JUMP JUMPDEST JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x3 ADD SLOAD SWAP4 POP DUP1 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP5 POP DUP1 PUSH1 0x1 ADD SLOAD SWAP3 POP DUP1 PUSH1 0x2 ADD SLOAD SWAP2 POP POP SWAP2 SWAP4 POP SWAP2 SWAP4 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA89 DUP3 PUSH2 0x1450 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA9B DUP3 PUSH2 0x1502 JUMP JUMPDEST SWAP1 POP PUSH2 0xAA6 DUP2 PUSH2 0x104F JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x3 ADD SLOAD EQ PUSH2 0xADF JUMPI PUSH2 0xADC DUP2 PUSH1 0x3 ADD SLOAD PUSH2 0x168E JUMP JUMPDEST SWAP2 POP JUMPDEST CALLVALUE DUP3 LT ISZERO PUSH2 0xB3A JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP4 CALLVALUE PUSH2 0xB0D SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0xB38 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB4C DUP6 PUSH2 0x17F8 JUMP JUMPDEST PUSH1 0xFF PUSH2 0xB58 SWAP2 SWAP1 PUSH2 0x2A86 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x2 PUSH2 0xB6B SWAP2 SWAP1 PUSH2 0x28DA JUMP JUMPDEST PUSH2 0xB75 SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST DUP5 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB88 SWAP3 SWAP2 SWAP1 PUSH2 0x25DB 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 0x0 SHR AND SWAP1 POP DUP2 PUSH1 0xFF AND DUP7 PUSH4 0xFFFFFFFF AND DUP3 PUSH2 0xBBA SWAP2 SWAP1 PUSH2 0x29F8 JUMP JUMPDEST SWAP1 SHR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC3F JUMPI PUSH2 0xC3C DUP3 PUSH2 0x580 JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0xC9E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC95 SWAP1 PUSH2 0x2732 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCA7 DUP2 PUSH2 0x1377 JUMP JUMPDEST PUSH2 0xCE6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCDD SWAP1 PUSH2 0x26D2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xCF1 DUP3 PUSH2 0x19D7 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA8604C1A DUP3 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD4C SWAP2 SWAP1 PUSH2 0x2772 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xD64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xD78 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 0xD9C SWAP2 SWAP1 PUSH2 0x1F7C JUMP JUMPDEST ISZERO PUSH2 0xE53 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCF62D115 DUP3 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDFA SWAP2 SWAP1 PUSH2 0x2772 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE26 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 0xE4A SWAP2 SWAP1 PUSH2 0x1FD6 JUMP JUMPDEST SWAP3 POP POP POP PUSH2 0xEC1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0xEB2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEA9 SWAP1 PUSH2 0x2692 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xEBB DUP2 PUSH2 0xBC7 JUMP JUMPDEST SWAP4 POP POP POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xFBA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFB1 SWAP1 PUSH2 0x2752 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9ED4607 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x10BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x10CE 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 0x10F2 SWAP2 SWAP1 PUSH2 0x204C JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x112D SWAP2 SWAP1 PUSH2 0x251C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1147 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x115B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x118C SWAP2 SWAP1 PUSH2 0x251C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11B7 SWAP2 SWAP1 PUSH2 0x2604 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x11D1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x11E5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 GT PUSH2 0x121B JUMPI PUSH2 0x1216 DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x11ED JUMP JUMPDEST PUSH2 0x121D JUMP JUMPDEST DUP2 JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 LT ISZERO PUSH2 0x1254 JUMPI PUSH2 0x124F DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x1225 JUMP JUMPDEST PUSH2 0x126C JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x127F PUSH2 0x1A94 JUMP JUMPDEST SWAP1 POP CALLVALUE DUP2 GT ISZERO PUSH2 0x12C4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12BB SWAP1 PUSH2 0x26F2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB281A7BD DUP3 DUP6 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x131E SWAP2 SWAP1 PUSH2 0x2641 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1337 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x134B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP 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 0x1370 SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP2 POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x138D JUMPI PUSH2 0x138C PUSH2 0x2CB0 JUMP JUMPDEST JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6F07ABCC DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13E6 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x13FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1412 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 0x1436 SWAP2 SWAP1 PUSH2 0x2079 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1448 JUMPI PUSH2 0x1447 PUSH2 0x2CB0 JUMP JUMPDEST JUMPDEST EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD2E87561 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14AB SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x14C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x14D7 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 0x14FB SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x15F7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15EE SWAP1 PUSH2 0x2712 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1DD27DAF DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16EA SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1702 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1716 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 0x173A SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1746 PUSH2 0x1A94 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x1761 JUMPI DUP3 DUP3 PUSH2 0x175E SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x66BFDC75 DUP3 DUP8 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17BB SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x17D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x17E8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP DUP1 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD DUP1 PUSH2 0x400 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xD PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x15 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1D PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xE PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x10 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x12 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x16 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x19 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1E PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x14 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1C PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xF PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x11 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x18 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x13 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1B PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x17 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1A PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1F PUSH1 0xFF AND DUP2 MSTORE POP SWAP1 POP PUSH1 0x1 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x2 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x4 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x8 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x10 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP DUP1 PUSH1 0x1B PUSH4 0x7C4ACDD DUP6 PUSH4 0xFFFFFFFF AND PUSH2 0x19AB SWAP2 SWAP1 PUSH2 0x29F8 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND SWAP1 SHR PUSH4 0xFFFFFFFF AND PUSH1 0x20 DUP2 LT PUSH2 0x19CA JUMPI PUSH2 0x19C9 PUSH2 0x2CDF JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x19DF PUSH2 0x1B44 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD4DA69AC DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A38 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1A50 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1A64 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 0x1A8D SWAP2 SWAP1 PUSH2 0x20A6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD2E87561 GASPRICE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AEF SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1B07 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1B1B 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 0x1B3F SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x1B60 PUSH2 0x1B66 JUMP JUMPDEST DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x1B79 PUSH2 0x1BBF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BF2 PUSH2 0x1BED DUP5 PUSH2 0x2818 JUMP JUMPDEST PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C0E JUMPI PUSH2 0x1C0D PUSH2 0x2D4C JUMP JUMPDEST JUMPDEST PUSH2 0x1C19 DUP5 DUP3 DUP6 PUSH2 0x2BDF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C34 PUSH2 0x1C2F DUP5 PUSH2 0x2818 JUMP JUMPDEST PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C50 JUMPI PUSH2 0x1C4F PUSH2 0x2D4C JUMP JUMPDEST JUMPDEST PUSH2 0x1C5B DUP5 DUP3 DUP6 PUSH2 0x2BEE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C72 DUP2 PUSH2 0x2F0A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C87 DUP2 PUSH2 0x2F21 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1C9C DUP2 PUSH2 0x2F38 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1CB1 DUP2 PUSH2 0x2F38 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1CCC JUMPI PUSH2 0x1CCB PUSH2 0x2D3D JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1CDC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1BDF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1CFA JUMPI PUSH2 0x1CF9 PUSH2 0x2D3D JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1D0A DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1C21 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1D22 DUP2 PUSH2 0x2F4F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1D37 DUP2 PUSH2 0x2F66 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D53 JUMPI PUSH2 0x1D52 PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST PUSH2 0x1D5D PUSH1 0x40 PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D7D JUMPI PUSH2 0x1D7C PUSH2 0x2D47 JUMP JUMPDEST JUMPDEST PUSH2 0x1D89 DUP5 DUP3 DUP6 ADD PUSH2 0x1CE5 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1D9D DUP5 DUP3 DUP6 ADD PUSH2 0x1F10 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1DBF JUMPI PUSH2 0x1DBE PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST PUSH2 0x1DC9 PUSH1 0xC0 PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DE9 JUMPI PUSH2 0x1DE8 PUSH2 0x2D47 JUMP JUMPDEST JUMPDEST PUSH2 0x1DF5 DUP5 DUP3 DUP6 ADD PUSH2 0x1D3D JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1E09 DUP5 DUP3 DUP6 ADD PUSH2 0x1F3A JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x1E1D DUP5 DUP3 DUP6 ADD PUSH2 0x1F3A JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1E31 DUP5 DUP3 DUP6 ADD PUSH2 0x1F3A JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x1E45 DUP5 DUP3 DUP6 ADD PUSH2 0x1F25 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x1E59 DUP5 DUP3 DUP6 ADD PUSH2 0x1F25 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1E7B JUMPI PUSH2 0x1E7A PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST PUSH2 0x1E85 PUSH1 0x40 PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E95 DUP5 DUP3 DUP6 ADD PUSH2 0x1C78 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1EB9 JUMPI PUSH2 0x1EB8 PUSH2 0x2D47 JUMP JUMPDEST JUMPDEST PUSH2 0x1EC5 DUP5 DUP3 DUP6 ADD PUSH2 0x1DA9 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1EE0 DUP2 PUSH2 0x2F76 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1EF5 DUP2 PUSH2 0x2F76 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1F0A DUP2 PUSH2 0x2F8D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F1F DUP2 PUSH2 0x2F8D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F34 DUP2 PUSH2 0x2FA4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F49 DUP2 PUSH2 0x2FBB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1F65 JUMPI PUSH2 0x1F64 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1F73 DUP5 DUP3 DUP6 ADD PUSH2 0x1C63 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1F92 JUMPI PUSH2 0x1F91 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FA0 DUP5 DUP3 DUP6 ADD PUSH2 0x1C78 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1FBF JUMPI PUSH2 0x1FBE PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FCD DUP5 DUP3 DUP6 ADD PUSH2 0x1C8D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1FEC JUMPI PUSH2 0x1FEB PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FFA DUP5 DUP3 DUP6 ADD PUSH2 0x1CA2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2019 JUMPI PUSH2 0x2018 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2037 JUMPI PUSH2 0x2036 PUSH2 0x2D51 JUMP JUMPDEST JUMPDEST PUSH2 0x2043 DUP5 DUP3 DUP6 ADD PUSH2 0x1CB7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2062 JUMPI PUSH2 0x2061 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2070 DUP5 DUP3 DUP6 ADD PUSH2 0x1D13 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x208F JUMPI PUSH2 0x208E PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x209D DUP5 DUP3 DUP6 ADD PUSH2 0x1D28 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20BC JUMPI PUSH2 0x20BB PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20DA JUMPI PUSH2 0x20D9 PUSH2 0x2D51 JUMP JUMPDEST JUMPDEST PUSH2 0x20E6 DUP5 DUP3 DUP6 ADD PUSH2 0x1E65 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2105 JUMPI PUSH2 0x2104 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2113 DUP5 DUP3 DUP6 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2132 JUMPI PUSH2 0x2131 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2140 DUP5 DUP3 DUP6 ADD PUSH2 0x1EE6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2162 JUMPI PUSH2 0x2161 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2170 DUP7 DUP3 DUP8 ADD PUSH2 0x1EFB JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2181 DUP7 DUP3 DUP8 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2192 DUP7 DUP3 DUP8 ADD PUSH2 0x1C8D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x21B5 JUMPI PUSH2 0x21B4 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x21C3 DUP7 DUP3 DUP8 ADD PUSH2 0x1EFB JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x21D4 DUP7 DUP3 DUP8 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x21E5 DUP7 DUP3 DUP8 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x21F8 DUP2 PUSH2 0x2ABA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2207 DUP2 PUSH2 0x2ADE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2216 DUP2 PUSH2 0x2ADE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2225 DUP2 PUSH2 0x2AEA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2236 DUP3 PUSH2 0x2849 JUMP JUMPDEST PUSH2 0x2240 DUP2 DUP6 PUSH2 0x2854 JUMP JUMPDEST SWAP4 POP PUSH2 0x2250 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BEE JUMP JUMPDEST PUSH2 0x2259 DUP2 PUSH2 0x2D5B JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x226F DUP3 PUSH2 0x2849 JUMP JUMPDEST PUSH2 0x2279 DUP2 DUP6 PUSH2 0x2865 JUMP JUMPDEST SWAP4 POP PUSH2 0x2289 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BEE JUMP JUMPDEST PUSH2 0x2292 DUP2 PUSH2 0x2D5B JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x22A6 DUP2 PUSH2 0x2B61 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x22B5 DUP2 PUSH2 0x2B73 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x22C4 DUP2 PUSH2 0x2B85 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x22D3 DUP2 PUSH2 0x2B97 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22E6 PUSH1 0x22 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x22F1 DUP3 PUSH2 0x2D79 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2309 PUSH1 0x25 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x2314 DUP3 PUSH2 0x2DC8 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x232C PUSH1 0x23 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x2337 DUP3 PUSH2 0x2E17 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x234F PUSH1 0x1B DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x235A DUP3 PUSH2 0x2E66 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2372 PUSH1 0x18 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x237D DUP3 PUSH2 0x2E8F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2395 PUSH1 0x20 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x23A0 DUP3 PUSH2 0x2EB8 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23B8 PUSH1 0x17 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x23C3 DUP3 PUSH2 0x2EE1 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x23EB DUP3 DUP3 PUSH2 0x222B JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x2400 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x24E0 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x2428 DUP3 DUP3 PUSH2 0x23CE JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x243D PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x250D JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x2450 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x250D JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x2463 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x250D JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x2476 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x24FE JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x2489 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x24FE JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x24AC PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x21FE JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x24C4 DUP3 DUP3 PUSH2 0x240B JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x24DA DUP2 PUSH2 0x2B26 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24E9 DUP2 PUSH2 0x2B30 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24F8 DUP2 PUSH2 0x2B30 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2507 DUP2 PUSH2 0x2B40 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2516 DUP2 PUSH2 0x2B54 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2531 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x21EF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x254C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x21EF JUMP JUMPDEST PUSH2 0x2559 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x221C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x2575 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x21EF JUMP JUMPDEST PUSH2 0x2582 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x24D1 JUMP JUMPDEST PUSH2 0x258F PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x24D1 JUMP JUMPDEST PUSH2 0x259C PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x24D1 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25BA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x220D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25D5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x221C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x25F0 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x221C JUMP JUMPDEST PUSH2 0x25FD PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x24D1 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 0x261E DUP2 DUP5 PUSH2 0x2264 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x263B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x229D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2656 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x22AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2671 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x22BB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x268C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x22CA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x26AB DUP2 PUSH2 0x22D9 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 0x26CB DUP2 PUSH2 0x22FC 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 0x26EB DUP2 PUSH2 0x231F 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 0x270B DUP2 PUSH2 0x2342 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 0x272B DUP2 PUSH2 0x2365 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 0x274B DUP2 PUSH2 0x2388 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 0x276B DUP2 PUSH2 0x23AB 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 0x278C DUP2 DUP5 PUSH2 0x2494 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27A9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24D1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x27C4 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x24D1 JUMP JUMPDEST PUSH2 0x27D1 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x221C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27ED PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24EF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27FD PUSH2 0x280E JUMP JUMPDEST SWAP1 POP PUSH2 0x2809 DUP3 DUP3 PUSH2 0x2C21 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 0x2833 JUMPI PUSH2 0x2832 PUSH2 0x2D0E JUMP JUMPDEST JUMPDEST PUSH2 0x283C DUP3 PUSH2 0x2D5B 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 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 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x28D1 JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x28AD JUMPI PUSH2 0x28AC PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x28BC JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x28CA DUP6 PUSH2 0x2D6C JUMP JUMPDEST SWAP5 POP PUSH2 0x2891 JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28E5 DUP3 PUSH2 0x2B26 JUMP JUMPDEST SWAP2 POP PUSH2 0x28F0 DUP4 PUSH2 0x2B54 JUMP JUMPDEST SWAP3 POP PUSH2 0x291D PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x2925 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x2935 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x29F1 JUMP JUMPDEST DUP2 PUSH2 0x2943 JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x29F1 JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x2959 JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x2963 JUMPI PUSH2 0x2992 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x2975 JUMPI PUSH2 0x2974 PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x298C JUMPI PUSH2 0x298B PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST POP PUSH2 0x29F1 JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x29C7 JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x29C2 JUMPI PUSH2 0x29C1 PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST PUSH2 0x29F1 JUMP JUMPDEST PUSH2 0x29D4 DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x2887 JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x29EB JUMPI PUSH2 0x29EA PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A03 DUP3 PUSH2 0x2B26 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A0E DUP4 PUSH2 0x2B26 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2A47 JUMPI PUSH2 0x2A46 PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A5D DUP3 PUSH2 0x2B26 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A68 DUP4 PUSH2 0x2B26 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2A7B JUMPI PUSH2 0x2A7A PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A91 DUP3 PUSH2 0x2B54 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A9C DUP4 PUSH2 0x2B54 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2AAF JUMPI PUSH2 0x2AAE PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AC5 DUP3 PUSH2 0x2B06 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AD7 DUP3 PUSH2 0x2B06 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 PUSH2 0x2AFF DUP3 PUSH2 0x2ABA JUMP JUMPDEST 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B6C DUP3 PUSH2 0x2BA9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B7E DUP3 PUSH2 0x2BA9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B90 DUP3 PUSH2 0x2BBB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BA2 DUP3 PUSH2 0x2BA9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BB4 DUP3 PUSH2 0x2BCD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BC6 DUP3 PUSH2 0x2BCD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BD8 DUP3 PUSH2 0x2B06 JUMP JUMPDEST 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 0x2C0C JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2BF1 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2C1B JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x2C2A DUP3 PUSH2 0x2D5B JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2C49 JUMPI PUSH2 0x2C48 PUSH2 0x2D0E JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A206661756C74792072616E646F6D69 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7A65000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A20616C726561647920696E69746961 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C697A6564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A2070656E64696E672072616E646F6D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x697A650000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5573696E675769746E65743A2072657761726420746F6F206C6F770000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A206E6F742072616E646F6D697A6564 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x2F13 DUP2 PUSH2 0x2ACC JUMP JUMPDEST DUP2 EQ PUSH2 0x2F1E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F2A DUP2 PUSH2 0x2ADE JUMP JUMPDEST DUP2 EQ PUSH2 0x2F35 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F41 DUP2 PUSH2 0x2AEA JUMP JUMPDEST DUP2 EQ PUSH2 0x2F4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F58 DUP2 PUSH2 0x2AF4 JUMP JUMPDEST DUP2 EQ PUSH2 0x2F63 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x4 DUP2 LT PUSH2 0x2F73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F7F DUP2 PUSH2 0x2B26 JUMP JUMPDEST DUP2 EQ PUSH2 0x2F8A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F96 DUP2 PUSH2 0x2B30 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2FAD DUP2 PUSH2 0x2B40 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2FC4 DUP2 PUSH2 0x2B54 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DELEGATECALL PUSH10 0x1B938720C3E8F10B1B6D 0x4C NOT 0xBD 0xF6 0xF6 PUSH20 0xF6BCD601A4AEE2842C50207E6BAA64736F6C6343 STOP ADDMOD SMOD STOP CALLER PUSH1 0xA0 PUSH1 0x40 MSTORE ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP CALLVALUE DUP1 ISZERO PUSH3 0x47 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x68 PUSH3 0x5C PUSH3 0x8E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x96 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x88 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH3 0x17E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x1259 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0xA8 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH3 0xDF PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH3 0x1C9 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH3 0x1F4 PUSH1 0x20 SHL PUSH3 0xE26 OR PUSH1 0x20 SHR JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x206 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH3 0x216 SWAP1 PUSH3 0xF58 JUMP JUMPDEST SWAP1 POP EQ PUSH3 0x25B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x252 SWAP1 PUSH3 0xD78 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x26C DUP2 PUSH3 0x28F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x28C PUSH3 0x280 PUSH3 0x8E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x96 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH3 0x2A4 JUMPI PUSH3 0x2A3 PUSH3 0xFC4 JUMP JUMPDEST JUMPDEST DUP1 PUSH3 0x2B5 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x2CD SWAP3 SWAP2 SWAP1 PUSH3 0xA17 JUMP JUMPDEST POP PUSH1 0x0 PUSH3 0x2E0 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x42B DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH3 0x42F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH3 0x47F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x476 SWAP1 PUSH3 0xD56 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH3 0x498 JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH3 0x4DA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x4D1 SWAP1 PUSH3 0xD9A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH3 0x4F3 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH3 0x535 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x52C SWAP1 PUSH3 0xD34 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH3 0x589 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x580 SWAP1 PUSH3 0xDBC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x599 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD PUSH3 0x5B2 PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5C8 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH3 0x99A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5DE PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5F4 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH3 0x99A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x60A PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x621 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xCD0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH3 0x640 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x658 SWAP3 SWAP2 SWAP1 PUSH3 0xA17 JUMP JUMPDEST POP PUSH3 0x712 PUSH3 0x66D PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH3 0x67D SWAP1 PUSH3 0xF58 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 PUSH3 0x6AB SWAP1 PUSH3 0xF58 JUMP JUMPDEST DUP1 ISZERO PUSH3 0x6FC JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x6D0 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x6FC 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 PUSH3 0x6DE JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH3 0x9B9 PUSH1 0x20 SHL PUSH3 0xE9C OR PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x722 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH3 0x779 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xDDE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH3 0x7D2 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH3 0x7CA SWAP2 SWAP1 PUSH3 0xE77 JUMP JUMPDEST SWAP1 POP PUSH3 0x796 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x7FB JUMPI PUSH3 0x7FA PUSH3 0x1080 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH3 0x82E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x84C JUMPI PUSH3 0x84B PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH3 0x91F JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH3 0x8C9 JUMPI PUSH3 0x8C8 PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH3 0x916 SWAP1 PUSH3 0xF8E JUMP JUMPDEST SWAP2 POP POP PUSH3 0x882 JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH3 0x935 SWAP2 SWAP1 PUSH3 0xEBC JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH3 0x953 JUMPI PUSH3 0x952 PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH3 0x9B1 DUP4 DUP4 PUSH1 0xFF AND PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH3 0x9CD SWAP2 SWAP1 PUSH3 0xCB7 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x9EB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 PUSH3 0xA10 SWAP2 SWAP1 PUSH3 0xADE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0xA25 SWAP1 PUSH3 0xF58 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0xA49 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0xA95 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0xA64 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0xA95 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0xA95 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0xA94 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0xA77 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0xAA4 SWAP2 SWAP1 PUSH3 0xAA8 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0xAC3 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0xAA9 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0xAD8 DUP2 PUSH3 0x123F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xAF7 JUMPI PUSH3 0xAF6 PUSH3 0x10AF JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0xB07 DUP5 DUP3 DUP6 ADD PUSH3 0xAC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xB1D DUP3 PUSH3 0xE50 JUMP JUMPDEST PUSH3 0xB29 DUP2 DUP6 PUSH3 0xE5B JUMP JUMPDEST SWAP4 POP PUSH3 0xB3B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH3 0xF22 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH3 0xB56 DUP2 PUSH3 0xF58 JUMP JUMPDEST PUSH3 0xB62 DUP2 DUP7 PUSH3 0xE5B JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH3 0xB80 JUMPI PUSH1 0x1 DUP2 EQ PUSH3 0xB92 JUMPI PUSH3 0xBC9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH3 0xBC9 JUMP JUMPDEST PUSH3 0xB9D DUP6 PUSH3 0xE3B JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xBC1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0xBA0 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xBE1 PUSH1 0x3D DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xBEE DUP3 PUSH3 0x10B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC08 PUSH1 0x25 DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC15 DUP3 PUSH3 0x1103 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC2F PUSH1 0x2F DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC3C DUP3 PUSH3 0x1152 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC56 PUSH1 0x3C DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC63 DUP3 PUSH3 0x11A1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC7D PUSH1 0x3D DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC8A DUP3 PUSH3 0x11F0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0xCA0 DUP2 PUSH3 0xF01 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH3 0xCB1 DUP2 PUSH3 0xF15 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCC5 DUP3 DUP5 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCDE DUP3 DUP10 PUSH3 0xB47 JUMP JUMPDEST SWAP2 POP PUSH3 0xCEC DUP3 DUP9 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xCFA DUP3 DUP8 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD08 DUP3 DUP7 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD16 DUP3 DUP6 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD24 DUP3 DUP5 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 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 PUSH3 0xD4F DUP2 PUSH3 0xBD2 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 PUSH3 0xD71 DUP2 PUSH3 0xBF9 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 PUSH3 0xD93 DUP2 PUSH3 0xC20 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 PUSH3 0xDB5 DUP2 PUSH3 0xC47 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 PUSH3 0xDD7 DUP2 PUSH3 0xC6E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH3 0xDF5 PUSH1 0x0 DUP4 ADD DUP9 PUSH3 0xCA6 JUMP JUMPDEST PUSH3 0xE04 PUSH1 0x20 DUP4 ADD DUP8 PUSH3 0xCA6 JUMP JUMPDEST PUSH3 0xE13 PUSH1 0x40 DUP4 ADD DUP7 PUSH3 0xC95 JUMP JUMPDEST PUSH3 0xE22 PUSH1 0x60 DUP4 ADD DUP6 PUSH3 0xC95 JUMP JUMPDEST PUSH3 0xE31 PUSH1 0x80 DUP4 ADD DUP5 PUSH3 0xC95 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 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 PUSH3 0xE84 DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH3 0xE91 DUP4 PUSH3 0xF01 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH3 0xEB1 JUMPI PUSH3 0xEB0 PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xEC9 DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH3 0xED6 DUP4 PUSH3 0xF01 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH3 0xEEC JUMPI PUSH3 0xEEB PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xF42 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0xF25 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH3 0xF52 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 PUSH3 0xF71 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0xF88 JUMPI PUSH3 0xF87 PUSH3 0x1022 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xF9B DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH3 0xFB9 JUMPI PUSH3 0xFB8 PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH3 0x124A DUP2 PUSH3 0xEF7 JUMP JUMPDEST DUP2 EQ PUSH3 0x1256 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH2 0x2A15 PUSH3 0x129B PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x629 ADD MSTORE DUP2 DUP2 PUSH2 0x791 ADD MSTORE DUP2 DUP2 PUSH2 0xF22 ADD MSTORE DUP2 DUP2 PUSH2 0x102A ADD MSTORE DUP2 DUP2 PUSH2 0x1473 ADD MSTORE PUSH2 0x157C ADD MSTORE PUSH2 0x2A15 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 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xDAAA360C GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x287 JUMPI DUP1 PUSH4 0xEF53D97A EQ PUSH2 0x2B7 JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x2D5 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0xFF21C3BA EQ PUSH2 0x30F JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x213 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x231 JUMPI DUP1 PUSH4 0xD196C2E3 EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xD9B9A961 EQ PUSH2 0x26B JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x52D1902D GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x52D1902D EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x6F2DDD93 EQ PUSH2 0x1AF JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x1CD JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x1EB JUMPI DUP1 PUSH4 0x8A481DAD EQ PUSH2 0x1F5 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x157 JUMPI DUP1 PUSH4 0x48F9B831 EQ PUSH2 0x173 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x32B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x141 PUSH2 0x33E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x14E SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x171 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x16C SWAP2 SWAP1 PUSH2 0x1BE5 JUMP JUMPDEST PUSH2 0x42D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17B PUSH2 0x46E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x188 SWAP2 SWAP1 PUSH2 0x22AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x199 PUSH2 0x561 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1A6 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1B7 PUSH2 0x58C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C4 SWAP2 SWAP1 PUSH2 0x212E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1D5 PUSH2 0x627 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E2 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F3 PUSH2 0x64B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1FD PUSH2 0x6D3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x20A SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x21B PUSH2 0x75A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x228 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x239 PUSH2 0x78D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x246 SWAP2 SWAP1 PUSH2 0x20F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x269 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x264 SWAP2 SWAP1 PUSH2 0x1C9B JUMP JUMPDEST PUSH2 0x7E4 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x285 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x1C2E JUMP JUMPDEST PUSH2 0x903 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x29C SWAP2 SWAP1 PUSH2 0x1B8B JUMP JUMPDEST PUSH2 0xA1C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AE SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2BF PUSH2 0xB0E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2CC SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2DD PUSH2 0xB66 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x212E 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 0x1B5E JUMP JUMPDEST PUSH2 0xC01 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x329 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x324 SWAP2 SWAP1 PUSH2 0x1C5B JUMP JUMPDEST PUSH2 0xCF9 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0x335 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x348 PUSH2 0xF1D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0x36E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38D SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3BB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F8 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x412 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x426 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP1 JUMP JUMPDEST PUSH2 0x46B PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH2 0xE26 JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x476 PUSH2 0x198F JUMP JUMPDEST PUSH2 0x47E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x851D0A92A3AD30295BEF33AFC69D6874779826B7789386B336E22621365ED2C2 PUSH1 0x0 SHL SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x596 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x5A4 SWAP1 PUSH2 0x258A 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 0x5D0 SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x61D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5F2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x61D 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 0x600 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x653 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x671 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6BE SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x6D1 PUSH1 0x0 PUSH2 0x10AE JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x6DE PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH2 0x721 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH2 0x72B SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0x74A SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x764 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x7EC PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x80A PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x860 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x857 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x86A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x8FE DUP4 DUP4 DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x90B PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x929 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x97F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x976 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x989 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xA18 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP5 DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA27 DUP3 PUSH2 0x146E JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0xA4D PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA6C SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xA86 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xA9A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xAF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xB05 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB19 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0xB56 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0xB70 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0xB7E SWAP1 PUSH2 0x258A 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 0xBAA SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0xBF7 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xBCC JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xBF7 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 0xBDA JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0xC09 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC27 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xC7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC74 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xCED JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE4 SWAP1 PUSH2 0x218D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCF6 DUP2 PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0xD01 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD1F PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD6C SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xD7F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xE21 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP7 DUP7 PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE30 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0xE3E SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 POP EQ PUSH2 0xE80 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE77 SWAP1 PUSH2 0x220D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xE89 DUP2 PUSH2 0x15FA JUMP JUMPDEST PUSH2 0xE99 PUSH2 0xE94 PUSH2 0x10A6 JUMP JUMPDEST PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0xEAE SWAP2 SWAP1 PUSH2 0x206E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xECB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0xEEE SWAP2 SWAP1 PUSH2 0x1BB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1011 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1008 SWAP1 PUSH2 0x228D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x10B8 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH2 0x10E7 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH2 0x11D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11CA SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x11EB JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x122A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1221 SWAP1 PUSH2 0x222D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x1242 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x1281 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1278 SWAP1 PUSH2 0x21AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x12D2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12C9 SWAP1 PUSH2 0x226D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x12DA PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x12EB PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x12F9 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1307 PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x1315 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1323 PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH2 0x177D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1338 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2085 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x134F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x1365 SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH2 0x1402 PUSH2 0x1371 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x137F SWAP1 PUSH2 0x258A 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 0x13AB SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x13F8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13CD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x13F8 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 0x13DB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0xE9C JUMP JUMPDEST PUSH2 0x140A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x145F SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x22E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1563 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x155A SWAP1 PUSH2 0x21ED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x160C JUMPI PUSH2 0x160B PUSH2 0x261E JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x1615 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x162B SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x1636 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1779 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x17C3 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH2 0x17BC SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST SWAP1 POP PUSH2 0x178B JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x17E9 JUMPI PUSH2 0x17E8 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x181B JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1836 JUMPI PUSH2 0x1835 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1902 JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x18AF JUMPI PUSH2 0x18AE PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH2 0x18FA SWAP1 PUSH2 0x25ED JUMP JUMPDEST SWAP2 POP POP PUSH2 0x186C JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH2 0x1916 SWAP2 SWAP1 PUSH2 0x2459 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1931 JUMPI PUSH2 0x1930 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1987 DUP4 DUP4 PUSH1 0xFF AND PUSH2 0x177D JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x19EE SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1A10 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1A29 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1A57 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1A56 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1A3B JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1A64 SWAP2 SWAP1 PUSH2 0x1A68 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1A81 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1A69 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A98 PUSH2 0x1A93 DUP5 PUSH2 0x235B JUMP JUMPDEST PUSH2 0x2336 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1AB4 JUMPI PUSH2 0x1AB3 PUSH2 0x270E JUMP JUMPDEST JUMPDEST PUSH2 0x1ABF DUP5 DUP3 DUP6 PUSH2 0x2548 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AD6 DUP2 PUSH2 0x2983 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AEB DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1B00 DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B1B JUMPI PUSH2 0x1B1A PUSH2 0x2709 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B2B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1A85 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B43 DUP2 PUSH2 0x29B1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B58 DUP2 PUSH2 0x29C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B74 JUMPI PUSH2 0x1B73 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B82 DUP5 DUP3 DUP6 ADD PUSH2 0x1AC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BA1 JUMPI PUSH2 0x1BA0 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BAF DUP5 DUP3 DUP6 ADD PUSH2 0x1ADC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BCE JUMPI PUSH2 0x1BCD PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BDC DUP5 DUP3 DUP6 ADD PUSH2 0x1AF1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BFB JUMPI PUSH2 0x1BFA PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C19 JUMPI PUSH2 0x1C18 PUSH2 0x2713 JUMP JUMPDEST JUMPDEST PUSH2 0x1C25 DUP5 DUP3 DUP6 ADD PUSH2 0x1B06 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1C44 JUMPI PUSH2 0x1C43 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C52 DUP5 DUP3 DUP6 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C72 JUMPI PUSH2 0x1C71 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C80 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1C91 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1CB2 JUMPI PUSH2 0x1CB1 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CC0 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1CD1 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1CE4 DUP2 PUSH2 0x248D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1CF3 DUP2 PUSH2 0x249F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1D02 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D13 DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D1D DUP2 DUP6 PUSH2 0x23AC JUMP JUMPDEST SWAP4 POP PUSH2 0x1D2D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST PUSH2 0x1D36 DUP2 PUSH2 0x271D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D4C DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D56 DUP2 DUP6 PUSH2 0x23BD JUMP JUMPDEST SWAP4 POP PUSH2 0x1D66 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1D7F DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1D89 DUP2 DUP7 PUSH2 0x23AC JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1DA4 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1DB6 JUMPI PUSH2 0x1DE9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE PUSH1 0x20 DUP7 ADD SWAP4 POP PUSH2 0x1DE9 JUMP JUMPDEST PUSH2 0x1DBF DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1DE1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1DC2 JUMP JUMPDEST DUP1 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1DFF DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1E09 DUP2 DUP7 PUSH2 0x23BD JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1E24 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1E35 JUMPI PUSH2 0x1E68 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH2 0x1E68 JUMP JUMPDEST PUSH2 0x1E3E DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E60 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1E41 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1E7A DUP2 PUSH2 0x2512 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E8D PUSH1 0x26 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E98 DUP3 PUSH2 0x272E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EB0 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EBB DUP3 PUSH2 0x277D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ED3 PUSH1 0x25 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EDE DUP3 PUSH2 0x27CC JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF6 PUSH1 0x18 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F01 DUP3 PUSH2 0x281B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F19 PUSH1 0x2F DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F24 DUP3 PUSH2 0x2844 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F3C PUSH1 0x3C DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F47 DUP3 PUSH2 0x2893 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F5F PUSH1 0x20 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F6A DUP3 PUSH2 0x28E2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F82 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F8D DUP3 PUSH2 0x290B JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA5 PUSH1 0x17 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FB0 DUP3 PUSH2 0x295A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x1FD1 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x1FE4 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x1FF7 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x200A PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x201D PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x202C DUP2 PUSH2 0x24B5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x203B DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x204A DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2059 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2068 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x207A DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2091 DUP3 DUP10 PUSH2 0x1DF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x209D DUP3 DUP9 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20A9 DUP3 DUP8 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20B5 DUP3 DUP7 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20C1 DUP3 DUP6 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20CD DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20F2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CDB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x210D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CEA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2128 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CF9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2148 DUP2 DUP5 PUSH2 0x1D08 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 0x216A DUP2 DUP5 PUSH2 0x1D72 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2187 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1E71 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21A6 DUP2 PUSH2 0x1E80 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 0x21C6 DUP2 PUSH2 0x1EA3 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 0x21E6 DUP2 PUSH2 0x1EC6 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 0x2206 DUP2 PUSH2 0x1EE9 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 0x2226 DUP2 PUSH2 0x1F0C 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 0x2246 DUP2 PUSH2 0x1F2F 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 0x2266 DUP2 PUSH2 0x1F52 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 0x2286 DUP2 PUSH2 0x1F75 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 0x22A6 DUP2 PUSH2 0x1F98 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22C2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FBB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x22DD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2023 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22F8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2305 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2312 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x231F PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x232C PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2041 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2340 PUSH2 0x2351 JUMP JUMPDEST SWAP1 POP PUSH2 0x234C DUP3 DUP3 PUSH2 0x25BC 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 0x2376 JUMPI PUSH2 0x2375 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH2 0x237F DUP3 PUSH2 0x271D JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 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 DUP2 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 0x23E4 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x23EF DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x240C JUMPI PUSH2 0x240B PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2422 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x242D DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x244E JUMPI PUSH2 0x244D PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2464 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x246F DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2482 JUMPI PUSH2 0x2481 PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2498 DUP3 PUSH2 0x24D1 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 PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x251D DUP3 PUSH2 0x2524 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x252F DUP3 PUSH2 0x2536 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2541 DUP3 PUSH2 0x24D1 JUMP JUMPDEST 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 0x2575 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x255A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2584 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 0x25A2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x25B6 JUMPI PUSH2 0x25B5 PUSH2 0x267C JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25C5 DUP3 PUSH2 0x271D JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x25E4 JUMPI PUSH2 0x25E3 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F8 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2613 JUMPI PUSH2 0x2612 PUSH2 0x264D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x298C DUP2 PUSH2 0x248D JUMP JUMPDEST DUP2 EQ PUSH2 0x2997 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29A3 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP2 EQ PUSH2 0x29AE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29BA DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP2 EQ PUSH2 0x29C5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29D1 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP2 EQ PUSH2 0x29DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 XOR 0xD3 0xBE SWAP6 REVERT 0xCB 0xD8 0xBC PUSH16 0x654DC2EB3DCDC04B923B60A7642BD2F GASLIMIT 0x49 CALLDATACOPY CALLCODE PUSH26 0xD0F064736F6C6343000807003300000000000000000000000000 ","sourceMap":"362:14356:10:-:0;;;350:4:34;310:45;;;;;;;;;;;944:202:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1001:4;620:1:8;595:27;;603:4;595:27;;;;587:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;671:4;662:13;;;;;;;;;;;;536:146;1047:29:10::1;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;1021:23;::::0;:55:::1;;;;;;;;;;;;;;;;;;1086:23;::::0;::::1;;;;;;;;:41;;;1128:10;1086:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;944:202:::0;362:14356;;;;;;;;;;:::o;7:195:46:-;90:5;121:6;115:13;106:22;;137:59;190:5;137:59;:::i;:::-;7:195;;;;:::o;208:403::-;304:6;353:2;341:9;332:7;328:23;324:32;321:119;;;359:79;;:::i;:::-;321:119;479:1;504:90;586:7;577:6;566:9;562:22;504:90;:::i;:::-;494:100;;450:154;208:403;;;;:::o;617:118::-;704:24;722:5;704:24;:::i;:::-;699:3;692:37;617:118;;:::o;741:366::-;883:3;904:67;968:2;963:3;904:67;:::i;:::-;897:74;;980:93;1069:3;980:93;:::i;:::-;1098:2;1093:3;1089:12;1082:19;;741:366;;;:::o;1113:222::-;1206:4;1244:2;1233:9;1229:18;1221:26;;1257:71;1325:1;1314:9;1310:17;1301:6;1257:71;:::i;:::-;1113:222;;;;:::o;1341:419::-;1507:4;1545:2;1534:9;1530:18;1522:26;;1594:9;1588:4;1584:20;1580:1;1569:9;1565:17;1558:47;1622:131;1748:4;1622:131;:::i;:::-;1614:139;;1341:419;;;:::o;1847:169::-;1931:11;1965:6;1960:3;1953:19;2005:4;2000:3;1996:14;1981:29;;1847:169;;;;:::o;2022:96::-;2059:7;2088:24;2106:5;2088:24;:::i;:::-;2077:35;;2022:96;;;:::o;2124:104::-;2169:7;2198:24;2216:5;2198:24;:::i;:::-;2187:35;;2124:104;;;:::o;2234:130::-;2297:7;2326:32;2352:5;2326:32;:::i;:::-;2315:43;;2234:130;;;:::o;2370:126::-;2407:7;2447:42;2440:5;2436:54;2425:65;;2370:126;;;:::o;2625:117::-;2734:1;2731;2724:12;2748:175;2888:27;2884:1;2876:6;2872:14;2865:51;2748:175;:::o;2929:174::-;3028:50;3072:5;3028:50;:::i;:::-;3021:5;3018:61;3008:89;;3093:1;3090;3083:12;3008:89;2929:174;:::o;362:14356:10:-;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_clone_1122":{"entryPoint":4175,"id":1122,"parameterSlots":1,"returnSlots":0},"@_msbDeBruijn32_1215":{"entryPoint":6136,"id":1215,"parameterSlots":1,"returnSlots":1},"@_searchNextBlock_1244":{"entryPoint":4645,"id":1244,"parameterSlots":2,"returnSlots":1},"@_searchPrevBlock_1270":{"entryPoint":4589,"id":1270,"parameterSlots":2,"returnSlots":1},"@_witnetCheckResultAvailability_314":{"entryPoint":4983,"id":314,"parameterSlots":1,"returnSlots":1},"@_witnetEstimateReward_328":{"entryPoint":5200,"id":328,"parameterSlots":1,"returnSlots":1},"@_witnetEstimateReward_341":{"entryPoint":6804,"id":341,"parameterSlots":0,"returnSlots":1},"@_witnetPostRequest_375":{"entryPoint":4724,"id":375,"parameterSlots":1,"returnSlots":2},"@_witnetReadResult_437":{"entryPoint":6615,"id":437,"parameterSlots":1,"returnSlots":1},"@_witnetUpgradeReward_422":{"entryPoint":5774,"id":422,"parameterSlots":1,"returnSlots":1},"@cloneDeterministic_1055":{"entryPoint":2704,"id":1055,"parameterSlots":1,"returnSlots":1},"@cloneDeterministic_7947":{"entryPoint":5378,"id":7947,"parameterSlots":1,"returnSlots":1},"@clone_1033":{"entryPoint":1199,"id":1033,"parameterSlots":0,"returnSlots":1},"@clone_7910":{"entryPoint":3782,"id":7910,"parameterSlots":0,"returnSlots":1},"@cloned_7875":{"entryPoint":2502,"id":7875,"parameterSlots":0,"returnSlots":1},"@estimateRandomizeFee_553":{"entryPoint":2686,"id":553,"parameterSlots":1,"returnSlots":1},"@getRandomizeData_596":{"entryPoint":2589,"id":596,"parameterSlots":1,"returnSlots":4},"@getRandomnessAfter_683":{"entryPoint":3015,"id":683,"parameterSlots":1,"returnSlots":1},"@getRandomnessNextBlock_714":{"entryPoint":1408,"id":714,"parameterSlots":1,"returnSlots":1},"@getRandomnessPrevBlock_749":{"entryPoint":1293,"id":749,"parameterSlots":1,"returnSlots":1},"@initialize_1088":{"entryPoint":1564,"id":1088,"parameterSlots":1,"returnSlots":0},"@isRandomized_777":{"entryPoint":2440,"id":777,"parameterSlots":1,"returnSlots":1},"@latestRandomizeBlock_500":{"entryPoint":2434,"id":500,"parameterSlots":0,"returnSlots":0},"@random_806":{"entryPoint":1223,"id":806,"parameterSlots":3,"returnSlots":1},"@random_863":{"entryPoint":2880,"id":863,"parameterSlots":3,"returnSlots":1},"@randomize_966":{"entryPoint":1829,"id":966,"parameterSlots":0,"returnSlots":1},"@self_7850":{"entryPoint":2398,"id":7850,"parameterSlots":0,"returnSlots":0},"@upgradeRandomizeFee_1014":{"entryPoint":2731,"id":1014,"parameterSlots":1,"returnSlots":1},"@witnetRandomnessRequest_497":{"entryPoint":1372,"id":497,"parameterSlots":0,"returnSlots":0},"@witnet_257":{"entryPoint":1793,"id":257,"parameterSlots":0,"returnSlots":0},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":7135,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr_fromMemory":{"entryPoint":7201,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_address_payable_fromMemory":{"entryPoint":7267,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bool_fromMemory":{"entryPoint":7288,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32":{"entryPoint":7309,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":7330,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":7351,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr_fromMemory":{"entryPoint":7397,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_contract$_Clonable_$7948_fromMemory":{"entryPoint":7443,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_enum$_QueryStatus_$4315_fromMemory":{"entryPoint":7464,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory":{"entryPoint":7485,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory":{"entryPoint":7593,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory":{"entryPoint":7781,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256":{"entryPoint":7889,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256_fromMemory":{"entryPoint":7910,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32":{"entryPoint":7931,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32_fromMemory":{"entryPoint":7952,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64_fromMemory":{"entryPoint":7973,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8_fromMemory":{"entryPoint":7994,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_address_payable_fromMemory":{"entryPoint":8015,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bool_fromMemory":{"entryPoint":8060,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32":{"entryPoint":8105,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":8150,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":8195,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_contract$_Clonable_$7948_fromMemory":{"entryPoint":8268,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_enum$_QueryStatus_$4315_fromMemory":{"entryPoint":8313,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr_fromMemory":{"entryPoint":8358,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256":{"entryPoint":8431,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256_fromMemory":{"entryPoint":8476,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint32t_uint256t_bytes32":{"entryPoint":8521,"id":null,"parameterSlots":2,"returnSlots":3},"abi_decode_tuple_t_uint32t_uint256t_uint256":{"entryPoint":8604,"id":null,"parameterSlots":2,"returnSlots":3},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":8687,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool":{"entryPoint":8702,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_fromStack":{"entryPoint":8717,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32_fromStack":{"entryPoint":8732,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr":{"entryPoint":8747,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":8804,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack":{"entryPoint":8861,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address_fromStack":{"entryPoint":8876,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack":{"entryPoint":8891,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack":{"entryPoint":8906,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2_to_t_string_memory_ptr_fromStack":{"entryPoint":8921,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack":{"entryPoint":8956,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae_to_t_string_memory_ptr_fromStack":{"entryPoint":8991,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b_to_t_string_memory_ptr_fromStack":{"entryPoint":9026,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack":{"entryPoint":9061,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692_to_t_string_memory_ptr_fromStack":{"entryPoint":9096,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack":{"entryPoint":9131,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr":{"entryPoint":9166,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":9227,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack":{"entryPoint":9364,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":9425,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint32_to_t_uint32":{"entryPoint":9440,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint32_to_t_uint32_fromStack":{"entryPoint":9455,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64":{"entryPoint":9470,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8":{"entryPoint":9485,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":9500,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_address_t_bytes32__to_t_address_t_bytes32__fromStack_reversed":{"entryPoint":9527,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_address_t_uint256_t_uint256_t_uint256__to_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed":{"entryPoint":9568,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed":{"entryPoint":9637,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed":{"entryPoint":9664,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed":{"entryPoint":9691,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":9732,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed":{"entryPoint":9766,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_IWitnetRequest_$3829__to_t_address__fromStack_reversed":{"entryPoint":9793,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_WitnetRequestBoard_$481__to_t_address_payable__fromStack_reversed":{"entryPoint":9820,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_WitnetRequestRandomness_$9072__to_t_address__fromStack_reversed":{"entryPoint":9847,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9874,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9906,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9938,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9970,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10002,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10034,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10066,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_reversed":{"entryPoint":10098,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed":{"entryPoint":10132,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256_t_bytes32__to_t_uint256_t_bytes32__fromStack_reversed":{"entryPoint":10159,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed":{"entryPoint":10200,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_memory":{"entryPoint":10227,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":10254,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":10264,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":10313,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr":{"entryPoint":10324,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":10341,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":10358,"id":null,"parameterSlots":2,"returnSlots":1},"checked_exp_helper":{"entryPoint":10375,"id":null,"parameterSlots":4,"returnSlots":2},"checked_exp_t_uint256_t_uint8":{"entryPoint":10458,"id":null,"parameterSlots":2,"returnSlots":1},"checked_exp_unsigned":{"entryPoint":10533,"id":null,"parameterSlots":3,"returnSlots":1},"checked_mul_t_uint256":{"entryPoint":10744,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint256":{"entryPoint":10834,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint8":{"entryPoint":10886,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":10938,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_address_payable":{"entryPoint":10956,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bool":{"entryPoint":10974,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":10986,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_contract$_Clonable_$7948":{"entryPoint":10996,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":11014,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":11046,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint32":{"entryPoint":11056,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint64":{"entryPoint":11072,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":11092,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_Clonable_$7948_to_t_address":{"entryPoint":11105,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_IWitnetRequest_$3829_to_t_address":{"entryPoint":11123,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable":{"entryPoint":11141,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address":{"entryPoint":11159,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address":{"entryPoint":11177,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address_payable":{"entryPoint":11195,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_uint160":{"entryPoint":11213,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":11231,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":11246,"id":null,"parameterSlots":3,"returnSlots":0},"finalize_allocation":{"entryPoint":11297,"id":null,"parameterSlots":2,"returnSlots":0},"panic_error_0x01":{"entryPoint":11346,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x11":{"entryPoint":11393,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x21":{"entryPoint":11440,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":11487,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":11534,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":11581,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f":{"entryPoint":11586,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421":{"entryPoint":11591,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":11596,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":11601,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":11606,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":11611,"id":null,"parameterSlots":1,"returnSlots":1},"shift_right_1_unsigned":{"entryPoint":11628,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2":{"entryPoint":11641,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c":{"entryPoint":11720,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae":{"entryPoint":11799,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b":{"entryPoint":11878,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf":{"entryPoint":11919,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692":{"entryPoint":11960,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e":{"entryPoint":12001,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_address_payable":{"entryPoint":12042,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bool":{"entryPoint":12065,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":12088,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_contract$_Clonable_$7948":{"entryPoint":12111,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_enum$_QueryStatus_$4315":{"entryPoint":12134,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":12150,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint32":{"entryPoint":12173,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint64":{"entryPoint":12196,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint8":{"entryPoint":12219,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:38488:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"517:325:46","statements":[{"nodeType":"YulAssignment","src":"527:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"593:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"552:40:46"},"nodeType":"YulFunctionCall","src":"552:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"536:15:46"},"nodeType":"YulFunctionCall","src":"536:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"527:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"617:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"624:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"610:6:46"},"nodeType":"YulFunctionCall","src":"610:21:46"},"nodeType":"YulExpressionStatement","src":"610:21:46"},{"nodeType":"YulVariableDeclaration","src":"640:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"655:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"662:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"651:3:46"},"nodeType":"YulFunctionCall","src":"651:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"644:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"705:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"707:77:46"},"nodeType":"YulFunctionCall","src":"707:79:46"},"nodeType":"YulExpressionStatement","src":"707:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"686:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"691:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"682:3:46"},"nodeType":"YulFunctionCall","src":"682:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"700:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"679:2:46"},"nodeType":"YulFunctionCall","src":"679:25:46"},"nodeType":"YulIf","src":"676:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"819:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"824:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"829:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"797:21:46"},"nodeType":"YulFunctionCall","src":"797:39:46"},"nodeType":"YulExpressionStatement","src":"797:39:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"490:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"495:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"503:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"511:5:46","type":""}],"src":"423:419:46"},{"body":{"nodeType":"YulBlock","src":"919:88:46","statements":[{"nodeType":"YulAssignment","src":"929:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"944:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"938:5:46"},"nodeType":"YulFunctionCall","src":"938:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"929:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"995:5:46"}],"functionName":{"name":"validator_revert_t_address_payable","nodeType":"YulIdentifier","src":"960:34:46"},"nodeType":"YulFunctionCall","src":"960:41:46"},"nodeType":"YulExpressionStatement","src":"960:41:46"}]},"name":"abi_decode_t_address_payable_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"897:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"905:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"913:5:46","type":""}],"src":"848:159:46"},{"body":{"nodeType":"YulBlock","src":"1073:77:46","statements":[{"nodeType":"YulAssignment","src":"1083:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1098:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1092:5:46"},"nodeType":"YulFunctionCall","src":"1092:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1083:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1138:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"1114:23:46"},"nodeType":"YulFunctionCall","src":"1114:30:46"},"nodeType":"YulExpressionStatement","src":"1114:30:46"}]},"name":"abi_decode_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1051:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1059:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1067:5:46","type":""}],"src":"1013:137:46"},{"body":{"nodeType":"YulBlock","src":"1208:87:46","statements":[{"nodeType":"YulAssignment","src":"1218:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1240:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1227:12:46"},"nodeType":"YulFunctionCall","src":"1227:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1218:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1283:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"1256:26:46"},"nodeType":"YulFunctionCall","src":"1256:33:46"},"nodeType":"YulExpressionStatement","src":"1256:33:46"}]},"name":"abi_decode_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1186:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1194:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1202:5:46","type":""}],"src":"1156:139:46"},{"body":{"nodeType":"YulBlock","src":"1364:80:46","statements":[{"nodeType":"YulAssignment","src":"1374:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1389:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1383:5:46"},"nodeType":"YulFunctionCall","src":"1383:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1374:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1432:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"1405:26:46"},"nodeType":"YulFunctionCall","src":"1405:33:46"},"nodeType":"YulExpressionStatement","src":"1405:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1342:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1350:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1358:5:46","type":""}],"src":"1301:143:46"},{"body":{"nodeType":"YulBlock","src":"1524:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"1573:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"1575:77:46"},"nodeType":"YulFunctionCall","src":"1575:79:46"},"nodeType":"YulExpressionStatement","src":"1575:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1552:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1560:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1548:3:46"},"nodeType":"YulFunctionCall","src":"1548:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"1567:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1544:3:46"},"nodeType":"YulFunctionCall","src":"1544:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1537:6:46"},"nodeType":"YulFunctionCall","src":"1537:35:46"},"nodeType":"YulIf","src":"1534:122:46"},{"nodeType":"YulVariableDeclaration","src":"1665:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1692:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1679:12:46"},"nodeType":"YulFunctionCall","src":"1679:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"1669:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1708:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1768:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1776:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1764:3:46"},"nodeType":"YulFunctionCall","src":"1764:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"1783:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"1791:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1717:46:46"},"nodeType":"YulFunctionCall","src":"1717:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"1708:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1502:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1510:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"1518:5:46","type":""}],"src":"1463:338:46"},{"body":{"nodeType":"YulBlock","src":"1892:281:46","statements":[{"body":{"nodeType":"YulBlock","src":"1941:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"1943:77:46"},"nodeType":"YulFunctionCall","src":"1943:79:46"},"nodeType":"YulExpressionStatement","src":"1943:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1920:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1928:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1916:3:46"},"nodeType":"YulFunctionCall","src":"1916:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"1935:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1912:3:46"},"nodeType":"YulFunctionCall","src":"1912:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1905:6:46"},"nodeType":"YulFunctionCall","src":"1905:35:46"},"nodeType":"YulIf","src":"1902:122:46"},{"nodeType":"YulVariableDeclaration","src":"2033:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2053:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2047:5:46"},"nodeType":"YulFunctionCall","src":"2047:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2037:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2069:98:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2140:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"2148:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2136:3:46"},"nodeType":"YulFunctionCall","src":"2136:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"2155:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"2163:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"2078:57:46"},"nodeType":"YulFunctionCall","src":"2078:89:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"2069:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1870:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1878:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"1886:5:46","type":""}],"src":"1820:353:46"},{"body":{"nodeType":"YulBlock","src":"2259:97:46","statements":[{"nodeType":"YulAssignment","src":"2269:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2284:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2278:5:46"},"nodeType":"YulFunctionCall","src":"2278:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"2269:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2344:5:46"}],"functionName":{"name":"validator_revert_t_contract$_Clonable_$7948","nodeType":"YulIdentifier","src":"2300:43:46"},"nodeType":"YulFunctionCall","src":"2300:50:46"},"nodeType":"YulExpressionStatement","src":"2300:50:46"}]},"name":"abi_decode_t_contract$_Clonable_$7948_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"2237:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"2245:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"2253:5:46","type":""}],"src":"2179:177:46"},{"body":{"nodeType":"YulBlock","src":"2441:96:46","statements":[{"nodeType":"YulAssignment","src":"2451:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2466:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2460:5:46"},"nodeType":"YulFunctionCall","src":"2460:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"2451:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2525:5:46"}],"functionName":{"name":"validator_revert_t_enum$_QueryStatus_$4315","nodeType":"YulIdentifier","src":"2482:42:46"},"nodeType":"YulFunctionCall","src":"2482:49:46"},"nodeType":"YulExpressionStatement","src":"2482:49:46"}]},"name":"abi_decode_t_enum$_QueryStatus_$4315_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"2419:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"2427:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"2435:5:46","type":""}],"src":"2362:175:46"},{"body":{"nodeType":"YulBlock","src":"2661:679:46","statements":[{"body":{"nodeType":"YulBlock","src":"2705:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"2707:77:46"},"nodeType":"YulFunctionCall","src":"2707:79:46"},"nodeType":"YulExpressionStatement","src":"2707:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"2682:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2687:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2678:3:46"},"nodeType":"YulFunctionCall","src":"2678:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"2699:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2674:3:46"},"nodeType":"YulFunctionCall","src":"2674:30:46"},"nodeType":"YulIf","src":"2671:117:46"},{"nodeType":"YulAssignment","src":"2797:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2822:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"2806:15:46"},"nodeType":"YulFunctionCall","src":"2806:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"2797:5:46"}]},{"nodeType":"YulBlock","src":"2837:323:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2872:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2896:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2907:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2892:3:46"},"nodeType":"YulFunctionCall","src":"2892:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2886:5:46"},"nodeType":"YulFunctionCall","src":"2886:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2876:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"2957:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"2959:77:46"},"nodeType":"YulFunctionCall","src":"2959:79:46"},"nodeType":"YulExpressionStatement","src":"2959:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2929:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"2937:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"2926:2:46"},"nodeType":"YulFunctionCall","src":"2926:30:46"},"nodeType":"YulIf","src":"2923:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3065:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3072:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3061:3:46"},"nodeType":"YulFunctionCall","src":"3061:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3124:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3135:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3120:3:46"},"nodeType":"YulFunctionCall","src":"3120:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"3144:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"3079:40:46"},"nodeType":"YulFunctionCall","src":"3079:69:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3054:6:46"},"nodeType":"YulFunctionCall","src":"3054:95:46"},"nodeType":"YulExpressionStatement","src":"3054:95:46"}]},{"nodeType":"YulBlock","src":"3170:163:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3207:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3221:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3211:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3248:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3255:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3244:3:46"},"nodeType":"YulFunctionCall","src":"3244:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3297:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3308:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3293:3:46"},"nodeType":"YulFunctionCall","src":"3293:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"3317:3:46"}],"functionName":{"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulIdentifier","src":"3262:30:46"},"nodeType":"YulFunctionCall","src":"3262:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3237:6:46"},"nodeType":"YulFunctionCall","src":"3237:85:46"},"nodeType":"YulExpressionStatement","src":"3237:85:46"}]}]},"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2636:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"2647:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"2655:5:46","type":""}],"src":"2571:769:46"},{"body":{"nodeType":"YulBlock","src":"3460:1404:46","statements":[{"body":{"nodeType":"YulBlock","src":"3504:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"3506:77:46"},"nodeType":"YulFunctionCall","src":"3506:79:46"},"nodeType":"YulExpressionStatement","src":"3506:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"3481:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3486:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3477:3:46"},"nodeType":"YulFunctionCall","src":"3477:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"3498:4:46","type":"","value":"0xc0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3473:3:46"},"nodeType":"YulFunctionCall","src":"3473:30:46"},"nodeType":"YulIf","src":"3470:117:46"},{"nodeType":"YulAssignment","src":"3596:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3621:4:46","type":"","value":"0xc0"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"3605:15:46"},"nodeType":"YulFunctionCall","src":"3605:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"3596:5:46"}]},{"nodeType":"YulBlock","src":"3636:340:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3673:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3697:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3708:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3693:3:46"},"nodeType":"YulFunctionCall","src":"3693:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"3687:5:46"},"nodeType":"YulFunctionCall","src":"3687:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3677:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3758:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"3760:77:46"},"nodeType":"YulFunctionCall","src":"3760:79:46"},"nodeType":"YulExpressionStatement","src":"3760:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3730:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"3738:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3727:2:46"},"nodeType":"YulFunctionCall","src":"3727:30:46"},"nodeType":"YulIf","src":"3724:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3866:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3873:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3862:3:46"},"nodeType":"YulFunctionCall","src":"3862:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3940:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3951:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3936:3:46"},"nodeType":"YulFunctionCall","src":"3936:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"3960:3:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"3880:55:46"},"nodeType":"YulFunctionCall","src":"3880:84:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3855:6:46"},"nodeType":"YulFunctionCall","src":"3855:110:46"},"nodeType":"YulExpressionStatement","src":"3855:110:46"}]},{"nodeType":"YulBlock","src":"3986:167:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4028:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4042:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4032:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4069:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4076:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4065:3:46"},"nodeType":"YulFunctionCall","src":"4065:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4117:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4128:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4113:3:46"},"nodeType":"YulFunctionCall","src":"4113:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"4137:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"4083:29:46"},"nodeType":"YulFunctionCall","src":"4083:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4058:6:46"},"nodeType":"YulFunctionCall","src":"4058:84:46"},"nodeType":"YulExpressionStatement","src":"4058:84:46"}]},{"nodeType":"YulBlock","src":"4163:165:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4203:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4217:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4207:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4244:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4251:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4240:3:46"},"nodeType":"YulFunctionCall","src":"4240:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4292:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4303:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4288:3:46"},"nodeType":"YulFunctionCall","src":"4288:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"4312:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"4258:29:46"},"nodeType":"YulFunctionCall","src":"4258:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4233:6:46"},"nodeType":"YulFunctionCall","src":"4233:84:46"},"nodeType":"YulExpressionStatement","src":"4233:84:46"}]},{"nodeType":"YulBlock","src":"4338:177:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4390:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4404:2:46","type":"","value":"96"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4394:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4431:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4438:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4427:3:46"},"nodeType":"YulFunctionCall","src":"4427:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4479:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4490:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4475:3:46"},"nodeType":"YulFunctionCall","src":"4475:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"4499:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"4445:29:46"},"nodeType":"YulFunctionCall","src":"4445:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4420:6:46"},"nodeType":"YulFunctionCall","src":"4420:84:46"},"nodeType":"YulExpressionStatement","src":"4420:84:46"}]},{"nodeType":"YulBlock","src":"4525:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4559:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4573:3:46","type":"","value":"128"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4563:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4601:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4608:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4597:3:46"},"nodeType":"YulFunctionCall","src":"4597:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4650:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4661:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4646:3:46"},"nodeType":"YulFunctionCall","src":"4646:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"4670:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"4615:30:46"},"nodeType":"YulFunctionCall","src":"4615:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4590:6:46"},"nodeType":"YulFunctionCall","src":"4590:85:46"},"nodeType":"YulExpressionStatement","src":"4590:85:46"}]},{"nodeType":"YulBlock","src":"4696:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4730:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4744:3:46","type":"","value":"160"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4734:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4772:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4779:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4768:3:46"},"nodeType":"YulFunctionCall","src":"4768:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4821:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4832:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4817:3:46"},"nodeType":"YulFunctionCall","src":"4817:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"4841:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"4786:30:46"},"nodeType":"YulFunctionCall","src":"4786:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4761:6:46"},"nodeType":"YulFunctionCall","src":"4761:85:46"},"nodeType":"YulExpressionStatement","src":"4761:85:46"}]}]},"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3435:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3446:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"3454:5:46","type":""}],"src":"3372:1492:46"},{"body":{"nodeType":"YulBlock","src":"4988:692:46","statements":[{"body":{"nodeType":"YulBlock","src":"5032:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"5034:77:46"},"nodeType":"YulFunctionCall","src":"5034:79:46"},"nodeType":"YulExpressionStatement","src":"5034:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"5009:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"5014:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"5005:3:46"},"nodeType":"YulFunctionCall","src":"5005:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"5026:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"5001:3:46"},"nodeType":"YulFunctionCall","src":"5001:30:46"},"nodeType":"YulIf","src":"4998:117:46"},{"nodeType":"YulAssignment","src":"5124:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5149:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"5133:15:46"},"nodeType":"YulFunctionCall","src":"5133:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"5124:5:46"}]},{"nodeType":"YulBlock","src":"5164:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5202:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5216:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"5206:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5242:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"5249:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5238:3:46"},"nodeType":"YulFunctionCall","src":"5238:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5289:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"5300:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5285:3:46"},"nodeType":"YulFunctionCall","src":"5285:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"5309:3:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"5256:28:46"},"nodeType":"YulFunctionCall","src":"5256:57:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5231:6:46"},"nodeType":"YulFunctionCall","src":"5231:83:46"},"nodeType":"YulExpressionStatement","src":"5231:83:46"}]},{"nodeType":"YulBlock","src":"5335:338:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5371:39:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5395:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"5406:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5391:3:46"},"nodeType":"YulFunctionCall","src":"5391:18:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5385:5:46"},"nodeType":"YulFunctionCall","src":"5385:25:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"5375:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"5457:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"5459:77:46"},"nodeType":"YulFunctionCall","src":"5459:79:46"},"nodeType":"YulExpressionStatement","src":"5459:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5429:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5437:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"5426:2:46"},"nodeType":"YulFunctionCall","src":"5426:30:46"},"nodeType":"YulIf","src":"5423:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5565:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"5572:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5561:3:46"},"nodeType":"YulFunctionCall","src":"5561:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5637:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"5648:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5633:3:46"},"nodeType":"YulFunctionCall","src":"5633:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"5657:3:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"5579:53:46"},"nodeType":"YulFunctionCall","src":"5579:82:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5554:6:46"},"nodeType":"YulFunctionCall","src":"5554:108:46"},"nodeType":"YulExpressionStatement","src":"5554:108:46"}]}]},"name":"abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4963:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"4974:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"4982:5:46","type":""}],"src":"4898:782:46"},{"body":{"nodeType":"YulBlock","src":"5738:87:46","statements":[{"nodeType":"YulAssignment","src":"5748:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5770:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"5757:12:46"},"nodeType":"YulFunctionCall","src":"5757:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"5748:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5813:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"5786:26:46"},"nodeType":"YulFunctionCall","src":"5786:33:46"},"nodeType":"YulExpressionStatement","src":"5786:33:46"}]},"name":"abi_decode_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"5716:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5724:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"5732:5:46","type":""}],"src":"5686:139:46"},{"body":{"nodeType":"YulBlock","src":"5894:80:46","statements":[{"nodeType":"YulAssignment","src":"5904:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5919:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5913:5:46"},"nodeType":"YulFunctionCall","src":"5913:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"5904:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5962:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"5935:26:46"},"nodeType":"YulFunctionCall","src":"5935:33:46"},"nodeType":"YulExpressionStatement","src":"5935:33:46"}]},"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"5872:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5880:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"5888:5:46","type":""}],"src":"5831:143:46"},{"body":{"nodeType":"YulBlock","src":"6031:86:46","statements":[{"nodeType":"YulAssignment","src":"6041:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6063:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"6050:12:46"},"nodeType":"YulFunctionCall","src":"6050:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6041:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6105:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"6079:25:46"},"nodeType":"YulFunctionCall","src":"6079:32:46"},"nodeType":"YulExpressionStatement","src":"6079:32:46"}]},"name":"abi_decode_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6009:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6017:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6025:5:46","type":""}],"src":"5980:137:46"},{"body":{"nodeType":"YulBlock","src":"6185:79:46","statements":[{"nodeType":"YulAssignment","src":"6195:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6210:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6204:5:46"},"nodeType":"YulFunctionCall","src":"6204:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6195:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6252:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"6226:25:46"},"nodeType":"YulFunctionCall","src":"6226:32:46"},"nodeType":"YulExpressionStatement","src":"6226:32:46"}]},"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6163:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6171:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6179:5:46","type":""}],"src":"6123:141:46"},{"body":{"nodeType":"YulBlock","src":"6332:79:46","statements":[{"nodeType":"YulAssignment","src":"6342:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6357:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6351:5:46"},"nodeType":"YulFunctionCall","src":"6351:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6342:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6399:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"6373:25:46"},"nodeType":"YulFunctionCall","src":"6373:32:46"},"nodeType":"YulExpressionStatement","src":"6373:32:46"}]},"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6310:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6318:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6326:5:46","type":""}],"src":"6270:141:46"},{"body":{"nodeType":"YulBlock","src":"6478:78:46","statements":[{"nodeType":"YulAssignment","src":"6488:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6503:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6497:5:46"},"nodeType":"YulFunctionCall","src":"6497:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6488:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6544:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"6519:24:46"},"nodeType":"YulFunctionCall","src":"6519:31:46"},"nodeType":"YulExpressionStatement","src":"6519:31:46"}]},"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6456:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6464:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6472:5:46","type":""}],"src":"6417:139:46"},{"body":{"nodeType":"YulBlock","src":"6647:282:46","statements":[{"body":{"nodeType":"YulBlock","src":"6693:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"6695:77:46"},"nodeType":"YulFunctionCall","src":"6695:79:46"},"nodeType":"YulExpressionStatement","src":"6695:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"6668:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"6677:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"6664:3:46"},"nodeType":"YulFunctionCall","src":"6664:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"6689:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"6660:3:46"},"nodeType":"YulFunctionCall","src":"6660:32:46"},"nodeType":"YulIf","src":"6657:119:46"},{"nodeType":"YulBlock","src":"6786:136:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6801:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"6815:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"6805:6:46","type":""}]},{"nodeType":"YulAssignment","src":"6830:82:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"6884:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"6895:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6880:3:46"},"nodeType":"YulFunctionCall","src":"6880:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"6904:7:46"}],"functionName":{"name":"abi_decode_t_address_payable_fromMemory","nodeType":"YulIdentifier","src":"6840:39:46"},"nodeType":"YulFunctionCall","src":"6840:72:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"6830:6:46"}]}]}]},"name":"abi_decode_tuple_t_address_payable_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"6617:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"6628:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"6640:6:46","type":""}],"src":"6562:367:46"},{"body":{"nodeType":"YulBlock","src":"7009:271:46","statements":[{"body":{"nodeType":"YulBlock","src":"7055:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"7057:77:46"},"nodeType":"YulFunctionCall","src":"7057:79:46"},"nodeType":"YulExpressionStatement","src":"7057:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"7030:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"7039:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"7026:3:46"},"nodeType":"YulFunctionCall","src":"7026:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"7051:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7022:3:46"},"nodeType":"YulFunctionCall","src":"7022:32:46"},"nodeType":"YulIf","src":"7019:119:46"},{"nodeType":"YulBlock","src":"7148:125:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7163:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"7177:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"7167:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7192:71:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7235:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"7246:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7231:3:46"},"nodeType":"YulFunctionCall","src":"7231:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"7255:7:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"7202:28:46"},"nodeType":"YulFunctionCall","src":"7202:61:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"7192:6:46"}]}]}]},"name":"abi_decode_tuple_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"6979:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"6990:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"7002:6:46","type":""}],"src":"6935:345:46"},{"body":{"nodeType":"YulBlock","src":"7352:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"7398:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"7400:77:46"},"nodeType":"YulFunctionCall","src":"7400:79:46"},"nodeType":"YulExpressionStatement","src":"7400:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"7373:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"7382:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"7369:3:46"},"nodeType":"YulFunctionCall","src":"7369:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"7394:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7365:3:46"},"nodeType":"YulFunctionCall","src":"7365:32:46"},"nodeType":"YulIf","src":"7362:119:46"},{"nodeType":"YulBlock","src":"7491:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7506:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"7520:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"7510:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7535:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7570:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"7581:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7566:3:46"},"nodeType":"YulFunctionCall","src":"7566:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"7590:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"7545:20:46"},"nodeType":"YulFunctionCall","src":"7545:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"7535:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7322:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"7333:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"7345:6:46","type":""}],"src":"7286:329:46"},{"body":{"nodeType":"YulBlock","src":"7698:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"7744:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"7746:77:46"},"nodeType":"YulFunctionCall","src":"7746:79:46"},"nodeType":"YulExpressionStatement","src":"7746:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"7719:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"7728:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"7715:3:46"},"nodeType":"YulFunctionCall","src":"7715:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"7740:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7711:3:46"},"nodeType":"YulFunctionCall","src":"7711:32:46"},"nodeType":"YulIf","src":"7708:119:46"},{"nodeType":"YulBlock","src":"7837:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7852:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"7866:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"7856:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7881:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7927:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"7938:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7923:3:46"},"nodeType":"YulFunctionCall","src":"7923:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"7947:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"7891:31:46"},"nodeType":"YulFunctionCall","src":"7891:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"7881:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7668:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"7679:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"7691:6:46","type":""}],"src":"7621:351:46"},{"body":{"nodeType":"YulBlock","src":"8053:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"8099:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"8101:77:46"},"nodeType":"YulFunctionCall","src":"8101:79:46"},"nodeType":"YulExpressionStatement","src":"8101:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"8074:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"8083:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8070:3:46"},"nodeType":"YulFunctionCall","src":"8070:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"8095:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8066:3:46"},"nodeType":"YulFunctionCall","src":"8066:32:46"},"nodeType":"YulIf","src":"8063:119:46"},{"nodeType":"YulBlock","src":"8192:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"8207:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8238:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"8249:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8234:3:46"},"nodeType":"YulFunctionCall","src":"8234:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"8221:12:46"},"nodeType":"YulFunctionCall","src":"8221:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"8211:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"8299:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"8301:77:46"},"nodeType":"YulFunctionCall","src":"8301:79:46"},"nodeType":"YulExpressionStatement","src":"8301:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8271:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8279:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"8268:2:46"},"nodeType":"YulFunctionCall","src":"8268:30:46"},"nodeType":"YulIf","src":"8265:117:46"},{"nodeType":"YulAssignment","src":"8396:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8440:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"8451:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8436:3:46"},"nodeType":"YulFunctionCall","src":"8436:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"8460:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"8406:29:46"},"nodeType":"YulFunctionCall","src":"8406:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"8396:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8023:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"8034:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"8046:6:46","type":""}],"src":"7978:507:46"},{"body":{"nodeType":"YulBlock","src":"8585:291:46","statements":[{"body":{"nodeType":"YulBlock","src":"8631:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"8633:77:46"},"nodeType":"YulFunctionCall","src":"8633:79:46"},"nodeType":"YulExpressionStatement","src":"8633:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"8606:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"8615:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8602:3:46"},"nodeType":"YulFunctionCall","src":"8602:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"8627:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8598:3:46"},"nodeType":"YulFunctionCall","src":"8598:32:46"},"nodeType":"YulIf","src":"8595:119:46"},{"nodeType":"YulBlock","src":"8724:145:46","statements":[{"nodeType":"YulVariableDeclaration","src":"8739:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"8753:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"8743:6:46","type":""}]},{"nodeType":"YulAssignment","src":"8768:91:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8831:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"8842:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8827:3:46"},"nodeType":"YulFunctionCall","src":"8827:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"8851:7:46"}],"functionName":{"name":"abi_decode_t_contract$_Clonable_$7948_fromMemory","nodeType":"YulIdentifier","src":"8778:48:46"},"nodeType":"YulFunctionCall","src":"8778:81:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"8768:6:46"}]}]}]},"name":"abi_decode_tuple_t_contract$_Clonable_$7948_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8555:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"8566:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"8578:6:46","type":""}],"src":"8491:385:46"},{"body":{"nodeType":"YulBlock","src":"8975:290:46","statements":[{"body":{"nodeType":"YulBlock","src":"9021:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"9023:77:46"},"nodeType":"YulFunctionCall","src":"9023:79:46"},"nodeType":"YulExpressionStatement","src":"9023:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"8996:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9005:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8992:3:46"},"nodeType":"YulFunctionCall","src":"8992:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"9017:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8988:3:46"},"nodeType":"YulFunctionCall","src":"8988:32:46"},"nodeType":"YulIf","src":"8985:119:46"},{"nodeType":"YulBlock","src":"9114:144:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9129:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"9143:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"9133:6:46","type":""}]},{"nodeType":"YulAssignment","src":"9158:90:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9220:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"9231:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9216:3:46"},"nodeType":"YulFunctionCall","src":"9216:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"9240:7:46"}],"functionName":{"name":"abi_decode_t_enum$_QueryStatus_$4315_fromMemory","nodeType":"YulIdentifier","src":"9168:47:46"},"nodeType":"YulFunctionCall","src":"9168:80:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"9158:6:46"}]}]}]},"name":"abi_decode_tuple_t_enum$_QueryStatus_$4315_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8945:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"8956:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"8968:6:46","type":""}],"src":"8882:383:46"},{"body":{"nodeType":"YulBlock","src":"9372:451:46","statements":[{"body":{"nodeType":"YulBlock","src":"9418:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"9420:77:46"},"nodeType":"YulFunctionCall","src":"9420:79:46"},"nodeType":"YulExpressionStatement","src":"9420:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"9393:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9402:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9389:3:46"},"nodeType":"YulFunctionCall","src":"9389:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"9414:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"9385:3:46"},"nodeType":"YulFunctionCall","src":"9385:32:46"},"nodeType":"YulIf","src":"9382:119:46"},{"nodeType":"YulBlock","src":"9511:305:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9526:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9550:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9561:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9546:3:46"},"nodeType":"YulFunctionCall","src":"9546:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"9540:5:46"},"nodeType":"YulFunctionCall","src":"9540:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"9530:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"9611:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"9613:77:46"},"nodeType":"YulFunctionCall","src":"9613:79:46"},"nodeType":"YulExpressionStatement","src":"9613:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9583:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9591:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"9580:2:46"},"nodeType":"YulFunctionCall","src":"9580:30:46"},"nodeType":"YulIf","src":"9577:117:46"},{"nodeType":"YulAssignment","src":"9708:98:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9778:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"9789:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9774:3:46"},"nodeType":"YulFunctionCall","src":"9774:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"9798:7:46"}],"functionName":{"name":"abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"9718:55:46"},"nodeType":"YulFunctionCall","src":"9718:88:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"9708:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9342:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"9353:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"9365:6:46","type":""}],"src":"9271:552:46"},{"body":{"nodeType":"YulBlock","src":"9895:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"9941:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"9943:77:46"},"nodeType":"YulFunctionCall","src":"9943:79:46"},"nodeType":"YulExpressionStatement","src":"9943:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"9916:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9925:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9912:3:46"},"nodeType":"YulFunctionCall","src":"9912:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"9937:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"9908:3:46"},"nodeType":"YulFunctionCall","src":"9908:32:46"},"nodeType":"YulIf","src":"9905:119:46"},{"nodeType":"YulBlock","src":"10034:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10049:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"10063:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10053:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10078:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10113:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10124:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10109:3:46"},"nodeType":"YulFunctionCall","src":"10109:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"10133:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"10088:20:46"},"nodeType":"YulFunctionCall","src":"10088:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"10078:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9865:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"9876:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"9888:6:46","type":""}],"src":"9829:329:46"},{"body":{"nodeType":"YulBlock","src":"10241:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"10287:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"10289:77:46"},"nodeType":"YulFunctionCall","src":"10289:79:46"},"nodeType":"YulExpressionStatement","src":"10289:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"10262:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"10271:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"10258:3:46"},"nodeType":"YulFunctionCall","src":"10258:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"10283:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"10254:3:46"},"nodeType":"YulFunctionCall","src":"10254:32:46"},"nodeType":"YulIf","src":"10251:119:46"},{"nodeType":"YulBlock","src":"10380:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10395:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"10409:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10399:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10424:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10470:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10481:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10466:3:46"},"nodeType":"YulFunctionCall","src":"10466:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"10490:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"10434:31:46"},"nodeType":"YulFunctionCall","src":"10434:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"10424:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10211:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"10222:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"10234:6:46","type":""}],"src":"10164:351:46"},{"body":{"nodeType":"YulBlock","src":"10620:518:46","statements":[{"body":{"nodeType":"YulBlock","src":"10666:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"10668:77:46"},"nodeType":"YulFunctionCall","src":"10668:79:46"},"nodeType":"YulExpressionStatement","src":"10668:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"10641:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"10650:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"10637:3:46"},"nodeType":"YulFunctionCall","src":"10637:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"10662:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"10633:3:46"},"nodeType":"YulFunctionCall","src":"10633:32:46"},"nodeType":"YulIf","src":"10630:119:46"},{"nodeType":"YulBlock","src":"10759:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10774:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"10788:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10778:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10803:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10837:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10848:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10833:3:46"},"nodeType":"YulFunctionCall","src":"10833:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"10857:7:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"10813:19:46"},"nodeType":"YulFunctionCall","src":"10813:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"10803:6:46"}]}]},{"nodeType":"YulBlock","src":"10885:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10900:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"10914:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10904:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10930:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10965:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10976:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10961:3:46"},"nodeType":"YulFunctionCall","src":"10961:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"10985:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"10940:20:46"},"nodeType":"YulFunctionCall","src":"10940:53:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"10930:6:46"}]}]},{"nodeType":"YulBlock","src":"11013:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11028:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11042:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11032:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11058:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11093:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11104:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11089:3:46"},"nodeType":"YulFunctionCall","src":"11089:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"11113:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"11068:20:46"},"nodeType":"YulFunctionCall","src":"11068:53:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"11058:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint32t_uint256t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10574:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"10585:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"10597:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"10605:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"10613:6:46","type":""}],"src":"10521:617:46"},{"body":{"nodeType":"YulBlock","src":"11243:518:46","statements":[{"body":{"nodeType":"YulBlock","src":"11289:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"11291:77:46"},"nodeType":"YulFunctionCall","src":"11291:79:46"},"nodeType":"YulExpressionStatement","src":"11291:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"11264:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"11273:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"11260:3:46"},"nodeType":"YulFunctionCall","src":"11260:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"11285:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"11256:3:46"},"nodeType":"YulFunctionCall","src":"11256:32:46"},"nodeType":"YulIf","src":"11253:119:46"},{"nodeType":"YulBlock","src":"11382:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11397:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11411:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11401:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11426:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11460:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11471:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11456:3:46"},"nodeType":"YulFunctionCall","src":"11456:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"11480:7:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"11436:19:46"},"nodeType":"YulFunctionCall","src":"11436:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"11426:6:46"}]}]},{"nodeType":"YulBlock","src":"11508:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11523:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11537:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11527:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11553:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11588:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11599:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11584:3:46"},"nodeType":"YulFunctionCall","src":"11584:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"11608:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"11563:20:46"},"nodeType":"YulFunctionCall","src":"11563:53:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"11553:6:46"}]}]},{"nodeType":"YulBlock","src":"11636:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11651:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11665:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11655:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11681:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11716:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11727:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11712:3:46"},"nodeType":"YulFunctionCall","src":"11712:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"11736:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"11691:20:46"},"nodeType":"YulFunctionCall","src":"11691:53:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"11681:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint32t_uint256t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11197:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"11208:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"11220:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"11228:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"11236:6:46","type":""}],"src":"11144:617:46"},{"body":{"nodeType":"YulBlock","src":"11832:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11849:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11872:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"11854:17:46"},"nodeType":"YulFunctionCall","src":"11854:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11842:6:46"},"nodeType":"YulFunctionCall","src":"11842:37:46"},"nodeType":"YulExpressionStatement","src":"11842:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"11820:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"11827:3:46","type":""}],"src":"11767:118:46"},{"body":{"nodeType":"YulBlock","src":"11940:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11957:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11977:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"11962:14:46"},"nodeType":"YulFunctionCall","src":"11962:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11950:6:46"},"nodeType":"YulFunctionCall","src":"11950:34:46"},"nodeType":"YulExpressionStatement","src":"11950:34:46"}]},"name":"abi_encode_t_bool_to_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"11928:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"11935:3:46","type":""}],"src":"11891:99:46"},{"body":{"nodeType":"YulBlock","src":"12055:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12072:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12092:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"12077:14:46"},"nodeType":"YulFunctionCall","src":"12077:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12065:6:46"},"nodeType":"YulFunctionCall","src":"12065:34:46"},"nodeType":"YulExpressionStatement","src":"12065:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12043:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12050:3:46","type":""}],"src":"11996:109:46"},{"body":{"nodeType":"YulBlock","src":"12176:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12193:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12216:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"12198:17:46"},"nodeType":"YulFunctionCall","src":"12198:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12186:6:46"},"nodeType":"YulFunctionCall","src":"12186:37:46"},"nodeType":"YulExpressionStatement","src":"12186:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12164:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12171:3:46","type":""}],"src":"12111:118:46"},{"body":{"nodeType":"YulBlock","src":"12315:260:46","statements":[{"nodeType":"YulVariableDeclaration","src":"12325:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12371:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"12339:31:46"},"nodeType":"YulFunctionCall","src":"12339:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"12329:6:46","type":""}]},{"nodeType":"YulAssignment","src":"12386:67:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12441:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"12446:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"12393:47:46"},"nodeType":"YulFunctionCall","src":"12393:60:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"12386:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12488:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12495:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12484:3:46"},"nodeType":"YulFunctionCall","src":"12484:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"12502:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"12507:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"12462:21:46"},"nodeType":"YulFunctionCall","src":"12462:52:46"},"nodeType":"YulExpressionStatement","src":"12462:52:46"},{"nodeType":"YulAssignment","src":"12523:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12534:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"12561:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"12539:21:46"},"nodeType":"YulFunctionCall","src":"12539:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12530:3:46"},"nodeType":"YulFunctionCall","src":"12530:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"12523:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12296:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12303:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"12311:3:46","type":""}],"src":"12235:340:46"},{"body":{"nodeType":"YulBlock","src":"12671:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"12681:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12727:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"12695:31:46"},"nodeType":"YulFunctionCall","src":"12695:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"12685:6:46","type":""}]},{"nodeType":"YulAssignment","src":"12742:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12807:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"12812:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"12749:57:46"},"nodeType":"YulFunctionCall","src":"12749:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"12742:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12854:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12861:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12850:3:46"},"nodeType":"YulFunctionCall","src":"12850:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"12868:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"12873:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"12828:21:46"},"nodeType":"YulFunctionCall","src":"12828:52:46"},"nodeType":"YulExpressionStatement","src":"12828:52:46"},{"nodeType":"YulAssignment","src":"12889:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12900:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"12927:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"12905:21:46"},"nodeType":"YulFunctionCall","src":"12905:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12896:3:46"},"nodeType":"YulFunctionCall","src":"12896:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"12889:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12652:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12659:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"12667:3:46","type":""}],"src":"12581:360:46"},{"body":{"nodeType":"YulBlock","src":"13029:83:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13046:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13099:5:46"}],"functionName":{"name":"convert_t_contract$_Clonable_$7948_to_t_address","nodeType":"YulIdentifier","src":"13051:47:46"},"nodeType":"YulFunctionCall","src":"13051:54:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13039:6:46"},"nodeType":"YulFunctionCall","src":"13039:67:46"},"nodeType":"YulExpressionStatement","src":"13039:67:46"}]},"name":"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13017:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"13024:3:46","type":""}],"src":"12947:165:46"},{"body":{"nodeType":"YulBlock","src":"13206:89:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13223:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13282:5:46"}],"functionName":{"name":"convert_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulIdentifier","src":"13228:53:46"},"nodeType":"YulFunctionCall","src":"13228:60:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13216:6:46"},"nodeType":"YulFunctionCall","src":"13216:73:46"},"nodeType":"YulExpressionStatement","src":"13216:73:46"}]},"name":"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13194:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"13201:3:46","type":""}],"src":"13118:177:46"},{"body":{"nodeType":"YulBlock","src":"13400:100:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13417:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13487:5:46"}],"functionName":{"name":"convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable","nodeType":"YulIdentifier","src":"13422:64:46"},"nodeType":"YulFunctionCall","src":"13422:71:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13410:6:46"},"nodeType":"YulFunctionCall","src":"13410:84:46"},"nodeType":"YulExpressionStatement","src":"13410:84:46"}]},"name":"abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13388:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"13395:3:46","type":""}],"src":"13301:199:46"},{"body":{"nodeType":"YulBlock","src":"13603:98:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13620:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13688:5:46"}],"functionName":{"name":"convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address","nodeType":"YulIdentifier","src":"13625:62:46"},"nodeType":"YulFunctionCall","src":"13625:69:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13613:6:46"},"nodeType":"YulFunctionCall","src":"13613:82:46"},"nodeType":"YulExpressionStatement","src":"13613:82:46"}]},"name":"abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13591:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"13598:3:46","type":""}],"src":"13506:195:46"},{"body":{"nodeType":"YulBlock","src":"13853:220:46","statements":[{"nodeType":"YulAssignment","src":"13863:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13929:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"13934:2:46","type":"","value":"34"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"13870:58:46"},"nodeType":"YulFunctionCall","src":"13870:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13863:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14035:3:46"}],"functionName":{"name":"store_literal_in_memory_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2","nodeType":"YulIdentifier","src":"13946:88:46"},"nodeType":"YulFunctionCall","src":"13946:93:46"},"nodeType":"YulExpressionStatement","src":"13946:93:46"},{"nodeType":"YulAssignment","src":"14048:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14059:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14064:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14055:3:46"},"nodeType":"YulFunctionCall","src":"14055:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"14048:3:46"}]}]},"name":"abi_encode_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"13841:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"13849:3:46","type":""}],"src":"13707:366:46"},{"body":{"nodeType":"YulBlock","src":"14225:220:46","statements":[{"nodeType":"YulAssignment","src":"14235:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14301:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14306:2:46","type":"","value":"37"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14242:58:46"},"nodeType":"YulFunctionCall","src":"14242:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"14235:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14407:3:46"}],"functionName":{"name":"store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c","nodeType":"YulIdentifier","src":"14318:88:46"},"nodeType":"YulFunctionCall","src":"14318:93:46"},"nodeType":"YulExpressionStatement","src":"14318:93:46"},{"nodeType":"YulAssignment","src":"14420:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14431:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14436:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14427:3:46"},"nodeType":"YulFunctionCall","src":"14427:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"14420:3:46"}]}]},"name":"abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"14213:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"14221:3:46","type":""}],"src":"14079:366:46"},{"body":{"nodeType":"YulBlock","src":"14597:220:46","statements":[{"nodeType":"YulAssignment","src":"14607:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14673:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14678:2:46","type":"","value":"35"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14614:58:46"},"nodeType":"YulFunctionCall","src":"14614:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"14607:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14779:3:46"}],"functionName":{"name":"store_literal_in_memory_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae","nodeType":"YulIdentifier","src":"14690:88:46"},"nodeType":"YulFunctionCall","src":"14690:93:46"},"nodeType":"YulExpressionStatement","src":"14690:93:46"},{"nodeType":"YulAssignment","src":"14792:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14803:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14808:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14799:3:46"},"nodeType":"YulFunctionCall","src":"14799:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"14792:3:46"}]}]},"name":"abi_encode_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"14585:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"14593:3:46","type":""}],"src":"14451:366:46"},{"body":{"nodeType":"YulBlock","src":"14969:220:46","statements":[{"nodeType":"YulAssignment","src":"14979:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15045:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15050:2:46","type":"","value":"27"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14986:58:46"},"nodeType":"YulFunctionCall","src":"14986:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"14979:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15151:3:46"}],"functionName":{"name":"store_literal_in_memory_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b","nodeType":"YulIdentifier","src":"15062:88:46"},"nodeType":"YulFunctionCall","src":"15062:93:46"},"nodeType":"YulExpressionStatement","src":"15062:93:46"},{"nodeType":"YulAssignment","src":"15164:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15175:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15180:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15171:3:46"},"nodeType":"YulFunctionCall","src":"15171:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"15164:3:46"}]}]},"name":"abi_encode_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"14957:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"14965:3:46","type":""}],"src":"14823:366:46"},{"body":{"nodeType":"YulBlock","src":"15341:220:46","statements":[{"nodeType":"YulAssignment","src":"15351:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15417:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15422:2:46","type":"","value":"24"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"15358:58:46"},"nodeType":"YulFunctionCall","src":"15358:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"15351:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15523:3:46"}],"functionName":{"name":"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","nodeType":"YulIdentifier","src":"15434:88:46"},"nodeType":"YulFunctionCall","src":"15434:93:46"},"nodeType":"YulExpressionStatement","src":"15434:93:46"},{"nodeType":"YulAssignment","src":"15536:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15547:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15552:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15543:3:46"},"nodeType":"YulFunctionCall","src":"15543:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"15536:3:46"}]}]},"name":"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"15329:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"15337:3:46","type":""}],"src":"15195:366:46"},{"body":{"nodeType":"YulBlock","src":"15713:220:46","statements":[{"nodeType":"YulAssignment","src":"15723:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15789:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15794:2:46","type":"","value":"32"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"15730:58:46"},"nodeType":"YulFunctionCall","src":"15730:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"15723:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15895:3:46"}],"functionName":{"name":"store_literal_in_memory_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692","nodeType":"YulIdentifier","src":"15806:88:46"},"nodeType":"YulFunctionCall","src":"15806:93:46"},"nodeType":"YulExpressionStatement","src":"15806:93:46"},{"nodeType":"YulAssignment","src":"15908:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15919:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15924:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15915:3:46"},"nodeType":"YulFunctionCall","src":"15915:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"15908:3:46"}]}]},"name":"abi_encode_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"15701:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"15709:3:46","type":""}],"src":"15567:366:46"},{"body":{"nodeType":"YulBlock","src":"16085:220:46","statements":[{"nodeType":"YulAssignment","src":"16095:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16161:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16166:2:46","type":"","value":"23"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16102:58:46"},"nodeType":"YulFunctionCall","src":"16102:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"16095:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16267:3:46"}],"functionName":{"name":"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","nodeType":"YulIdentifier","src":"16178:88:46"},"nodeType":"YulFunctionCall","src":"16178:93:46"},"nodeType":"YulExpressionStatement","src":"16178:93:46"},{"nodeType":"YulAssignment","src":"16280:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16291:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16296:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16287:3:46"},"nodeType":"YulFunctionCall","src":"16287:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"16280:3:46"}]}]},"name":"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"16073:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"16081:3:46","type":""}],"src":"15939:366:46"},{"body":{"nodeType":"YulBlock","src":"16475:480:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16485:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16501:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16506:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16497:3:46"},"nodeType":"YulFunctionCall","src":"16497:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"16489:4:46","type":""}]},{"nodeType":"YulBlock","src":"16521:233:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16556:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16586:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"16593:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16582:3:46"},"nodeType":"YulFunctionCall","src":"16582:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"16576:5:46"},"nodeType":"YulFunctionCall","src":"16576:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"16560:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16624:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16629:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16620:3:46"},"nodeType":"YulFunctionCall","src":"16620:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"16640:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"16646:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16636:3:46"},"nodeType":"YulFunctionCall","src":"16636:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16613:6:46"},"nodeType":"YulFunctionCall","src":"16613:38:46"},"nodeType":"YulExpressionStatement","src":"16613:38:46"},{"nodeType":"YulAssignment","src":"16664:79:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"16724:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"16738:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"16672:51:46"},"nodeType":"YulFunctionCall","src":"16672:71:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"16664:4:46"}]}]},{"nodeType":"YulBlock","src":"16764:164:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16801:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16831:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"16838:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16827:3:46"},"nodeType":"YulFunctionCall","src":"16827:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"16821:5:46"},"nodeType":"YulFunctionCall","src":"16821:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"16805:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"16889:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16907:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16912:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16903:3:46"},"nodeType":"YulFunctionCall","src":"16903:14:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32","nodeType":"YulIdentifier","src":"16857:31:46"},"nodeType":"YulFunctionCall","src":"16857:61:46"},"nodeType":"YulExpressionStatement","src":"16857:61:46"}]},{"nodeType":"YulAssignment","src":"16938:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"16945:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"16938:3:46"}]}]},"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"16454:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"16461:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"16470:3:46","type":""}],"src":"16363:592:46"},{"body":{"nodeType":"YulBlock","src":"17117:1219:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17127:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17143:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17148:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17139:3:46"},"nodeType":"YulFunctionCall","src":"17139:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"17131:4:46","type":""}]},{"nodeType":"YulBlock","src":"17163:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17200:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17230:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17237:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17226:3:46"},"nodeType":"YulFunctionCall","src":"17226:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"17220:5:46"},"nodeType":"YulFunctionCall","src":"17220:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"17204:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17268:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17273:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17264:3:46"},"nodeType":"YulFunctionCall","src":"17264:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"17284:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"17290:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17280:3:46"},"nodeType":"YulFunctionCall","src":"17280:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17257:6:46"},"nodeType":"YulFunctionCall","src":"17257:38:46"},"nodeType":"YulExpressionStatement","src":"17257:38:46"},{"nodeType":"YulAssignment","src":"17308:109:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"17398:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"17412:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulIdentifier","src":"17316:81:46"},"nodeType":"YulFunctionCall","src":"17316:101:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"17308:4:46"}]}]},{"nodeType":"YulBlock","src":"17438:167:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17480:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17510:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17517:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17506:3:46"},"nodeType":"YulFunctionCall","src":"17506:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"17500:5:46"},"nodeType":"YulFunctionCall","src":"17500:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"17484:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"17566:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17584:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17589:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17580:3:46"},"nodeType":"YulFunctionCall","src":"17580:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"17536:29:46"},"nodeType":"YulFunctionCall","src":"17536:59:46"},"nodeType":"YulExpressionStatement","src":"17536:59:46"}]},{"nodeType":"YulBlock","src":"17615:165:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17655:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17685:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17692:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17681:3:46"},"nodeType":"YulFunctionCall","src":"17681:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"17675:5:46"},"nodeType":"YulFunctionCall","src":"17675:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"17659:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"17741:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17759:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17764:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17755:3:46"},"nodeType":"YulFunctionCall","src":"17755:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"17711:29:46"},"nodeType":"YulFunctionCall","src":"17711:59:46"},"nodeType":"YulExpressionStatement","src":"17711:59:46"}]},{"nodeType":"YulBlock","src":"17790:177:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17842:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17872:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17879:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17868:3:46"},"nodeType":"YulFunctionCall","src":"17868:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"17862:5:46"},"nodeType":"YulFunctionCall","src":"17862:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"17846:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"17928:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17946:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17951:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17942:3:46"},"nodeType":"YulFunctionCall","src":"17942:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"17898:29:46"},"nodeType":"YulFunctionCall","src":"17898:59:46"},"nodeType":"YulExpressionStatement","src":"17898:59:46"}]},{"nodeType":"YulBlock","src":"17977:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18011:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18041:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18048:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18037:3:46"},"nodeType":"YulFunctionCall","src":"18037:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"18031:5:46"},"nodeType":"YulFunctionCall","src":"18031:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"18015:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"18099:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18117:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18122:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18113:3:46"},"nodeType":"YulFunctionCall","src":"18113:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"18067:31:46"},"nodeType":"YulFunctionCall","src":"18067:61:46"},"nodeType":"YulExpressionStatement","src":"18067:61:46"}]},{"nodeType":"YulBlock","src":"18148:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18182:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18212:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18219:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18208:3:46"},"nodeType":"YulFunctionCall","src":"18208:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"18202:5:46"},"nodeType":"YulFunctionCall","src":"18202:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"18186:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"18270:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18288:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18293:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18284:3:46"},"nodeType":"YulFunctionCall","src":"18284:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"18238:31:46"},"nodeType":"YulFunctionCall","src":"18238:61:46"},"nodeType":"YulExpressionStatement","src":"18238:61:46"}]},{"nodeType":"YulAssignment","src":"18319:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"18326:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"18319:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"17096:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"17103:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"17112:3:46","type":""}],"src":"17009:1327:46"},{"body":{"nodeType":"YulBlock","src":"18516:504:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18526:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18542:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18547:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18538:3:46"},"nodeType":"YulFunctionCall","src":"18538:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"18530:4:46","type":""}]},{"nodeType":"YulBlock","src":"18562:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18600:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18630:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18637:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18626:3:46"},"nodeType":"YulFunctionCall","src":"18626:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"18620:5:46"},"nodeType":"YulFunctionCall","src":"18620:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"18604:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"18684:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18702:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18707:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18698:3:46"},"nodeType":"YulFunctionCall","src":"18698:14:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool","nodeType":"YulIdentifier","src":"18656:27:46"},"nodeType":"YulFunctionCall","src":"18656:57:46"},"nodeType":"YulExpressionStatement","src":"18656:57:46"}]},{"nodeType":"YulBlock","src":"18733:260:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18769:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18799:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18806:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18795:3:46"},"nodeType":"YulFunctionCall","src":"18795:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"18789:5:46"},"nodeType":"YulFunctionCall","src":"18789:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"18773:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18837:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18842:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18833:3:46"},"nodeType":"YulFunctionCall","src":"18833:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"18853:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"18859:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"18849:3:46"},"nodeType":"YulFunctionCall","src":"18849:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18826:6:46"},"nodeType":"YulFunctionCall","src":"18826:38:46"},"nodeType":"YulExpressionStatement","src":"18826:38:46"},{"nodeType":"YulAssignment","src":"18877:105:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"18963:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"18977:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"18885:77:46"},"nodeType":"YulFunctionCall","src":"18885:97:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"18877:4:46"}]}]},{"nodeType":"YulAssignment","src":"19003:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"19010:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"19003:3:46"}]}]},"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"18495:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"18502:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"18511:3:46","type":""}],"src":"18394:626:46"},{"body":{"nodeType":"YulBlock","src":"19091:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19108:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19131:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"19113:17:46"},"nodeType":"YulFunctionCall","src":"19113:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19101:6:46"},"nodeType":"YulFunctionCall","src":"19101:37:46"},"nodeType":"YulExpressionStatement","src":"19101:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19079:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19086:3:46","type":""}],"src":"19026:118:46"},{"body":{"nodeType":"YulBlock","src":"19203:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19220:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19242:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"19225:16:46"},"nodeType":"YulFunctionCall","src":"19225:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19213:6:46"},"nodeType":"YulFunctionCall","src":"19213:36:46"},"nodeType":"YulExpressionStatement","src":"19213:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19191:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19198:3:46","type":""}],"src":"19150:105:46"},{"body":{"nodeType":"YulBlock","src":"19324:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19341:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19363:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"19346:16:46"},"nodeType":"YulFunctionCall","src":"19346:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19334:6:46"},"nodeType":"YulFunctionCall","src":"19334:36:46"},"nodeType":"YulExpressionStatement","src":"19334:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19312:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19319:3:46","type":""}],"src":"19261:115:46"},{"body":{"nodeType":"YulBlock","src":"19435:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19452:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19474:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"19457:16:46"},"nodeType":"YulFunctionCall","src":"19457:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19445:6:46"},"nodeType":"YulFunctionCall","src":"19445:36:46"},"nodeType":"YulExpressionStatement","src":"19445:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19423:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19430:3:46","type":""}],"src":"19382:105:46"},{"body":{"nodeType":"YulBlock","src":"19544:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19561:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19582:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"19566:15:46"},"nodeType":"YulFunctionCall","src":"19566:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19554:6:46"},"nodeType":"YulFunctionCall","src":"19554:35:46"},"nodeType":"YulExpressionStatement","src":"19554:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19532:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19539:3:46","type":""}],"src":"19493:102:46"},{"body":{"nodeType":"YulBlock","src":"19699:124:46","statements":[{"nodeType":"YulAssignment","src":"19709:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19721:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19732:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19717:3:46"},"nodeType":"YulFunctionCall","src":"19717:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19709:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"19789:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19802:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19813:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19798:3:46"},"nodeType":"YulFunctionCall","src":"19798:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"19745:43:46"},"nodeType":"YulFunctionCall","src":"19745:71:46"},"nodeType":"YulExpressionStatement","src":"19745:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19671:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"19683:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"19694:4:46","type":""}],"src":"19601:222:46"},{"body":{"nodeType":"YulBlock","src":"19955:206:46","statements":[{"nodeType":"YulAssignment","src":"19965:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19977:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19988:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19973:3:46"},"nodeType":"YulFunctionCall","src":"19973:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19965:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"20045:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20058:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20069:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20054:3:46"},"nodeType":"YulFunctionCall","src":"20054:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"20001:43:46"},"nodeType":"YulFunctionCall","src":"20001:71:46"},"nodeType":"YulExpressionStatement","src":"20001:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"20126:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20139:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20150:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20135:3:46"},"nodeType":"YulFunctionCall","src":"20135:18:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"20082:43:46"},"nodeType":"YulFunctionCall","src":"20082:72:46"},"nodeType":"YulExpressionStatement","src":"20082:72:46"}]},"name":"abi_encode_tuple_t_address_t_bytes32__to_t_address_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19919:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"19931:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"19939:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"19950:4:46","type":""}],"src":"19829:332:46"},{"body":{"nodeType":"YulBlock","src":"20349:371:46","statements":[{"nodeType":"YulAssignment","src":"20359:27:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20371:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20382:3:46","type":"","value":"128"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20367:3:46"},"nodeType":"YulFunctionCall","src":"20367:19:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"20359:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"20440:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20453:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20464:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20449:3:46"},"nodeType":"YulFunctionCall","src":"20449:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"20396:43:46"},"nodeType":"YulFunctionCall","src":"20396:71:46"},"nodeType":"YulExpressionStatement","src":"20396:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"20521:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20534:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20545:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20530:3:46"},"nodeType":"YulFunctionCall","src":"20530:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"20477:43:46"},"nodeType":"YulFunctionCall","src":"20477:72:46"},"nodeType":"YulExpressionStatement","src":"20477:72:46"},{"expression":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"20603:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20616:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20627:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20612:3:46"},"nodeType":"YulFunctionCall","src":"20612:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"20559:43:46"},"nodeType":"YulFunctionCall","src":"20559:72:46"},"nodeType":"YulExpressionStatement","src":"20559:72:46"},{"expression":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"20685:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20698:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20709:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20694:3:46"},"nodeType":"YulFunctionCall","src":"20694:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"20641:43:46"},"nodeType":"YulFunctionCall","src":"20641:72:46"},"nodeType":"YulExpressionStatement","src":"20641:72:46"}]},"name":"abi_encode_tuple_t_address_t_uint256_t_uint256_t_uint256__to_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"20297:9:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"20309:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"20317:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"20325:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"20333:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"20344:4:46","type":""}],"src":"20167:553:46"},{"body":{"nodeType":"YulBlock","src":"20818:118:46","statements":[{"nodeType":"YulAssignment","src":"20828:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20840:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20851:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20836:3:46"},"nodeType":"YulFunctionCall","src":"20836:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"20828:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"20902:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20915:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20926:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20911:3:46"},"nodeType":"YulFunctionCall","src":"20911:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulIdentifier","src":"20864:37:46"},"nodeType":"YulFunctionCall","src":"20864:65:46"},"nodeType":"YulExpressionStatement","src":"20864:65:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"20790:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"20802:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"20813:4:46","type":""}],"src":"20726:210:46"},{"body":{"nodeType":"YulBlock","src":"21040:124:46","statements":[{"nodeType":"YulAssignment","src":"21050:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21062:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21073:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21058:3:46"},"nodeType":"YulFunctionCall","src":"21058:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"21050:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"21130:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21143:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21154:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21139:3:46"},"nodeType":"YulFunctionCall","src":"21139:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"21086:43:46"},"nodeType":"YulFunctionCall","src":"21086:71:46"},"nodeType":"YulExpressionStatement","src":"21086:71:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21012:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"21024:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"21035:4:46","type":""}],"src":"20942:222:46"},{"body":{"nodeType":"YulBlock","src":"21296:206:46","statements":[{"nodeType":"YulAssignment","src":"21306:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21318:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21329:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21314:3:46"},"nodeType":"YulFunctionCall","src":"21314:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"21306:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"21386:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21399:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21410:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21395:3:46"},"nodeType":"YulFunctionCall","src":"21395:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"21342:43:46"},"nodeType":"YulFunctionCall","src":"21342:71:46"},"nodeType":"YulExpressionStatement","src":"21342:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"21467:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21480:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21491:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21476:3:46"},"nodeType":"YulFunctionCall","src":"21476:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"21423:43:46"},"nodeType":"YulFunctionCall","src":"21423:72:46"},"nodeType":"YulExpressionStatement","src":"21423:72:46"}]},"name":"abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21260:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"21272:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"21280:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"21291:4:46","type":""}],"src":"21170:332:46"},{"body":{"nodeType":"YulBlock","src":"21624:193:46","statements":[{"nodeType":"YulAssignment","src":"21634:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21646:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21657:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21642:3:46"},"nodeType":"YulFunctionCall","src":"21642:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"21634:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21681:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21692:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21677:3:46"},"nodeType":"YulFunctionCall","src":"21677:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"21700:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"21706:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"21696:3:46"},"nodeType":"YulFunctionCall","src":"21696:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21670:6:46"},"nodeType":"YulFunctionCall","src":"21670:47:46"},"nodeType":"YulExpressionStatement","src":"21670:47:46"},{"nodeType":"YulAssignment","src":"21726:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"21796:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"21805:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"21734:61:46"},"nodeType":"YulFunctionCall","src":"21734:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"21726:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21596:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"21608:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"21619:4:46","type":""}],"src":"21508:309:46"},{"body":{"nodeType":"YulBlock","src":"21938:141:46","statements":[{"nodeType":"YulAssignment","src":"21948:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21960:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21971:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21956:3:46"},"nodeType":"YulFunctionCall","src":"21956:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"21948:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22045:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22058:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22069:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22054:3:46"},"nodeType":"YulFunctionCall","src":"22054:17:46"}],"functionName":{"name":"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack","nodeType":"YulIdentifier","src":"21984:60:46"},"nodeType":"YulFunctionCall","src":"21984:88:46"},"nodeType":"YulExpressionStatement","src":"21984:88:46"}]},"name":"abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21910:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"21922:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"21933:4:46","type":""}],"src":"21823:256:46"},{"body":{"nodeType":"YulBlock","src":"22206:147:46","statements":[{"nodeType":"YulAssignment","src":"22216:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22228:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22239:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22224:3:46"},"nodeType":"YulFunctionCall","src":"22224:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"22216:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22319:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22332:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22343:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22328:3:46"},"nodeType":"YulFunctionCall","src":"22328:17:46"}],"functionName":{"name":"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address_fromStack","nodeType":"YulIdentifier","src":"22252:66:46"},"nodeType":"YulFunctionCall","src":"22252:94:46"},"nodeType":"YulExpressionStatement","src":"22252:94:46"}]},"name":"abi_encode_tuple_t_contract$_IWitnetRequest_$3829__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"22178:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"22190:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"22201:4:46","type":""}],"src":"22085:268:46"},{"body":{"nodeType":"YulBlock","src":"22491:158:46","statements":[{"nodeType":"YulAssignment","src":"22501:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22513:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22524:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22509:3:46"},"nodeType":"YulFunctionCall","src":"22509:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"22501:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22615:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22628:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22639:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22624:3:46"},"nodeType":"YulFunctionCall","src":"22624:17:46"}],"functionName":{"name":"abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack","nodeType":"YulIdentifier","src":"22537:77:46"},"nodeType":"YulFunctionCall","src":"22537:105:46"},"nodeType":"YulExpressionStatement","src":"22537:105:46"}]},"name":"abi_encode_tuple_t_contract$_WitnetRequestBoard_$481__to_t_address_payable__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"22463:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"22475:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"22486:4:46","type":""}],"src":"22359:290:46"},{"body":{"nodeType":"YulBlock","src":"22785:156:46","statements":[{"nodeType":"YulAssignment","src":"22795:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22807:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22818:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22803:3:46"},"nodeType":"YulFunctionCall","src":"22803:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"22795:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22907:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22920:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22931:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22916:3:46"},"nodeType":"YulFunctionCall","src":"22916:17:46"}],"functionName":{"name":"abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack","nodeType":"YulIdentifier","src":"22831:75:46"},"nodeType":"YulFunctionCall","src":"22831:103:46"},"nodeType":"YulExpressionStatement","src":"22831:103:46"}]},"name":"abi_encode_tuple_t_contract$_WitnetRequestRandomness_$9072__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"22757:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"22769:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"22780:4:46","type":""}],"src":"22655:286:46"},{"body":{"nodeType":"YulBlock","src":"23118:248:46","statements":[{"nodeType":"YulAssignment","src":"23128:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23140:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23151:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23136:3:46"},"nodeType":"YulFunctionCall","src":"23136:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23128:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23175:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23186:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23171:3:46"},"nodeType":"YulFunctionCall","src":"23171:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23194:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23200:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23190:3:46"},"nodeType":"YulFunctionCall","src":"23190:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23164:6:46"},"nodeType":"YulFunctionCall","src":"23164:47:46"},"nodeType":"YulExpressionStatement","src":"23164:47:46"},{"nodeType":"YulAssignment","src":"23220:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23354:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"23228:124:46"},"nodeType":"YulFunctionCall","src":"23228:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23220:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23098:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"23113:4:46","type":""}],"src":"22947:419:46"},{"body":{"nodeType":"YulBlock","src":"23543:248:46","statements":[{"nodeType":"YulAssignment","src":"23553:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23565:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23576:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23561:3:46"},"nodeType":"YulFunctionCall","src":"23561:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23553:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23600:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23611:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23596:3:46"},"nodeType":"YulFunctionCall","src":"23596:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23619:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23625:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23615:3:46"},"nodeType":"YulFunctionCall","src":"23615:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23589:6:46"},"nodeType":"YulFunctionCall","src":"23589:47:46"},"nodeType":"YulExpressionStatement","src":"23589:47:46"},{"nodeType":"YulAssignment","src":"23645:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23779:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"23653:124:46"},"nodeType":"YulFunctionCall","src":"23653:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23645:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23523:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"23538:4:46","type":""}],"src":"23372:419:46"},{"body":{"nodeType":"YulBlock","src":"23968:248:46","statements":[{"nodeType":"YulAssignment","src":"23978:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23990:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24001:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23986:3:46"},"nodeType":"YulFunctionCall","src":"23986:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23978:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24025:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24036:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24021:3:46"},"nodeType":"YulFunctionCall","src":"24021:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"24044:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"24050:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"24040:3:46"},"nodeType":"YulFunctionCall","src":"24040:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24014:6:46"},"nodeType":"YulFunctionCall","src":"24014:47:46"},"nodeType":"YulExpressionStatement","src":"24014:47:46"},{"nodeType":"YulAssignment","src":"24070:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"24204:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"24078:124:46"},"nodeType":"YulFunctionCall","src":"24078:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24070:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23948:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"23963:4:46","type":""}],"src":"23797:419:46"},{"body":{"nodeType":"YulBlock","src":"24393:248:46","statements":[{"nodeType":"YulAssignment","src":"24403:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24415:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24426:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24411:3:46"},"nodeType":"YulFunctionCall","src":"24411:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24403:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24450:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24461:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24446:3:46"},"nodeType":"YulFunctionCall","src":"24446:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"24469:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"24475:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"24465:3:46"},"nodeType":"YulFunctionCall","src":"24465:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24439:6:46"},"nodeType":"YulFunctionCall","src":"24439:47:46"},"nodeType":"YulExpressionStatement","src":"24439:47:46"},{"nodeType":"YulAssignment","src":"24495:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"24629:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"24503:124:46"},"nodeType":"YulFunctionCall","src":"24503:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24495:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24373:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"24388:4:46","type":""}],"src":"24222:419:46"},{"body":{"nodeType":"YulBlock","src":"24818:248:46","statements":[{"nodeType":"YulAssignment","src":"24828:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24840:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24851:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24836:3:46"},"nodeType":"YulFunctionCall","src":"24836:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24828:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24875:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24886:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24871:3:46"},"nodeType":"YulFunctionCall","src":"24871:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"24894:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"24900:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"24890:3:46"},"nodeType":"YulFunctionCall","src":"24890:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24864:6:46"},"nodeType":"YulFunctionCall","src":"24864:47:46"},"nodeType":"YulExpressionStatement","src":"24864:47:46"},{"nodeType":"YulAssignment","src":"24920:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25054:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"24928:124:46"},"nodeType":"YulFunctionCall","src":"24928:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24920:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24798:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"24813:4:46","type":""}],"src":"24647:419:46"},{"body":{"nodeType":"YulBlock","src":"25243:248:46","statements":[{"nodeType":"YulAssignment","src":"25253:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25265:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25276:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25261:3:46"},"nodeType":"YulFunctionCall","src":"25261:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25253:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25300:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25311:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25296:3:46"},"nodeType":"YulFunctionCall","src":"25296:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25319:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"25325:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"25315:3:46"},"nodeType":"YulFunctionCall","src":"25315:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25289:6:46"},"nodeType":"YulFunctionCall","src":"25289:47:46"},"nodeType":"YulExpressionStatement","src":"25289:47:46"},{"nodeType":"YulAssignment","src":"25345:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25479:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"25353:124:46"},"nodeType":"YulFunctionCall","src":"25353:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25345:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"25223:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"25238:4:46","type":""}],"src":"25072:419:46"},{"body":{"nodeType":"YulBlock","src":"25668:248:46","statements":[{"nodeType":"YulAssignment","src":"25678:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25690:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25701:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25686:3:46"},"nodeType":"YulFunctionCall","src":"25686:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25678:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25725:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25736:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25721:3:46"},"nodeType":"YulFunctionCall","src":"25721:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25744:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"25750:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"25740:3:46"},"nodeType":"YulFunctionCall","src":"25740:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25714:6:46"},"nodeType":"YulFunctionCall","src":"25714:47:46"},"nodeType":"YulExpressionStatement","src":"25714:47:46"},{"nodeType":"YulAssignment","src":"25770:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25904:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"25778:124:46"},"nodeType":"YulFunctionCall","src":"25778:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25770:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"25648:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"25663:4:46","type":""}],"src":"25497:419:46"},{"body":{"nodeType":"YulBlock","src":"26068:223:46","statements":[{"nodeType":"YulAssignment","src":"26078:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26090:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26101:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26086:3:46"},"nodeType":"YulFunctionCall","src":"26086:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26078:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26125:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26136:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26121:3:46"},"nodeType":"YulFunctionCall","src":"26121:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"26144:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"26150:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"26140:3:46"},"nodeType":"YulFunctionCall","src":"26140:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26114:6:46"},"nodeType":"YulFunctionCall","src":"26114:47:46"},"nodeType":"YulExpressionStatement","src":"26114:47:46"},{"nodeType":"YulAssignment","src":"26170:114:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"26270:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"26279:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"26178:91:46"},"nodeType":"YulFunctionCall","src":"26178:106:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26170:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26040:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"26052:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"26063:4:46","type":""}],"src":"25922:369:46"},{"body":{"nodeType":"YulBlock","src":"26395:124:46","statements":[{"nodeType":"YulAssignment","src":"26405:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26417:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26428:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26413:3:46"},"nodeType":"YulFunctionCall","src":"26413:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26405:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"26485:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26498:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26509:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26494:3:46"},"nodeType":"YulFunctionCall","src":"26494:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"26441:43:46"},"nodeType":"YulFunctionCall","src":"26441:71:46"},"nodeType":"YulExpressionStatement","src":"26441:71:46"}]},"name":"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26367:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"26379:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"26390:4:46","type":""}],"src":"26297:222:46"},{"body":{"nodeType":"YulBlock","src":"26651:206:46","statements":[{"nodeType":"YulAssignment","src":"26661:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26673:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26684:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26669:3:46"},"nodeType":"YulFunctionCall","src":"26669:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26661:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"26741:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26754:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26765:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26750:3:46"},"nodeType":"YulFunctionCall","src":"26750:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"26697:43:46"},"nodeType":"YulFunctionCall","src":"26697:71:46"},"nodeType":"YulExpressionStatement","src":"26697:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"26822:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26835:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26846:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26831:3:46"},"nodeType":"YulFunctionCall","src":"26831:18:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"26778:43:46"},"nodeType":"YulFunctionCall","src":"26778:72:46"},"nodeType":"YulExpressionStatement","src":"26778:72:46"}]},"name":"abi_encode_tuple_t_uint256_t_bytes32__to_t_uint256_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26615:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"26627:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"26635:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"26646:4:46","type":""}],"src":"26525:332:46"},{"body":{"nodeType":"YulBlock","src":"26959:122:46","statements":[{"nodeType":"YulAssignment","src":"26969:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26981:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26992:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26977:3:46"},"nodeType":"YulFunctionCall","src":"26977:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26969:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"27047:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27060:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27071:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27056:3:46"},"nodeType":"YulFunctionCall","src":"27056:17:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulIdentifier","src":"27005:41:46"},"nodeType":"YulFunctionCall","src":"27005:69:46"},"nodeType":"YulExpressionStatement","src":"27005:69:46"}]},"name":"abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26931:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"26943:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"26954:4:46","type":""}],"src":"26863:218:46"},{"body":{"nodeType":"YulBlock","src":"27128:88:46","statements":[{"nodeType":"YulAssignment","src":"27138:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"27148:18:46"},"nodeType":"YulFunctionCall","src":"27148:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27138:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27197:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"27205:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"27177:19:46"},"nodeType":"YulFunctionCall","src":"27177:33:46"},"nodeType":"YulExpressionStatement","src":"27177:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"27112:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"27121:6:46","type":""}],"src":"27087:129:46"},{"body":{"nodeType":"YulBlock","src":"27262:35:46","statements":[{"nodeType":"YulAssignment","src":"27272:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"27288:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"27282:5:46"},"nodeType":"YulFunctionCall","src":"27282:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27272:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"27255:6:46","type":""}],"src":"27222:75:46"},{"body":{"nodeType":"YulBlock","src":"27369:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"27474:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"27476:16:46"},"nodeType":"YulFunctionCall","src":"27476:18:46"},"nodeType":"YulExpressionStatement","src":"27476:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"27446:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27454:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"27443:2:46"},"nodeType":"YulFunctionCall","src":"27443:30:46"},"nodeType":"YulIf","src":"27440:56:46"},{"nodeType":"YulAssignment","src":"27506:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"27536:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"27514:21:46"},"nodeType":"YulFunctionCall","src":"27514:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"27506:4:46"}]},{"nodeType":"YulAssignment","src":"27580:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"27592:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"27598:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27588:3:46"},"nodeType":"YulFunctionCall","src":"27588:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"27580:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"27353:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"27364:4:46","type":""}],"src":"27303:307:46"},{"body":{"nodeType":"YulBlock","src":"27674:40:46","statements":[{"nodeType":"YulAssignment","src":"27685:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27701:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"27695:5:46"},"nodeType":"YulFunctionCall","src":"27695:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"27685:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"27657:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"27667:6:46","type":""}],"src":"27616:98:46"},{"body":{"nodeType":"YulBlock","src":"27805:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27822:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"27827:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27815:6:46"},"nodeType":"YulFunctionCall","src":"27815:19:46"},"nodeType":"YulExpressionStatement","src":"27815:19:46"},{"nodeType":"YulAssignment","src":"27843:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27862:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"27867:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27858:3:46"},"nodeType":"YulFunctionCall","src":"27858:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"27843:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"27777:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"27782:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"27793:11:46","type":""}],"src":"27720:158:46"},{"body":{"nodeType":"YulBlock","src":"27979:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27996:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"28001:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27989:6:46"},"nodeType":"YulFunctionCall","src":"27989:19:46"},"nodeType":"YulExpressionStatement","src":"27989:19:46"},{"nodeType":"YulAssignment","src":"28017:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28036:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"28041:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28032:3:46"},"nodeType":"YulFunctionCall","src":"28032:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"28017:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"27951:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"27956:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"27967:11:46","type":""}],"src":"27884:168:46"},{"body":{"nodeType":"YulBlock","src":"28154:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28171:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"28176:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28164:6:46"},"nodeType":"YulFunctionCall","src":"28164:19:46"},"nodeType":"YulExpressionStatement","src":"28164:19:46"},{"nodeType":"YulAssignment","src":"28192:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28211:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"28216:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28207:3:46"},"nodeType":"YulFunctionCall","src":"28207:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"28192:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"28126:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"28131:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"28142:11:46","type":""}],"src":"28058:169:46"},{"body":{"nodeType":"YulBlock","src":"28306:775:46","statements":[{"nodeType":"YulAssignment","src":"28316:15:46","value":{"name":"_power","nodeType":"YulIdentifier","src":"28325:6:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"28316:5:46"}]},{"nodeType":"YulAssignment","src":"28340:14:46","value":{"name":"_base","nodeType":"YulIdentifier","src":"28349:5:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"28340:4:46"}]},{"body":{"nodeType":"YulBlock","src":"28398:677:46","statements":[{"body":{"nodeType":"YulBlock","src":"28486:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"28488:16:46"},"nodeType":"YulFunctionCall","src":"28488:18:46"},"nodeType":"YulExpressionStatement","src":"28488:18:46"}]},"condition":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"28464:4:46"},{"arguments":[{"name":"max","nodeType":"YulIdentifier","src":"28474:3:46"},{"name":"base","nodeType":"YulIdentifier","src":"28479:4:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"28470:3:46"},"nodeType":"YulFunctionCall","src":"28470:14:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"28461:2:46"},"nodeType":"YulFunctionCall","src":"28461:24:46"},"nodeType":"YulIf","src":"28458:50:46"},{"body":{"nodeType":"YulBlock","src":"28553:419:46","statements":[{"nodeType":"YulAssignment","src":"28933:25:46","value":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"28946:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"28953:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"28942:3:46"},"nodeType":"YulFunctionCall","src":"28942:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"28933:5:46"}]}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"28528:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"28538:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"28524:3:46"},"nodeType":"YulFunctionCall","src":"28524:16:46"},"nodeType":"YulIf","src":"28521:451:46"},{"nodeType":"YulAssignment","src":"28985:23:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"28997:4:46"},{"name":"base","nodeType":"YulIdentifier","src":"29003:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"28993:3:46"},"nodeType":"YulFunctionCall","src":"28993:15:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"28985:4:46"}]},{"nodeType":"YulAssignment","src":"29021:44:46","value":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"29056:8:46"}],"functionName":{"name":"shift_right_1_unsigned","nodeType":"YulIdentifier","src":"29033:22:46"},"nodeType":"YulFunctionCall","src":"29033:32:46"},"variableNames":[{"name":"exponent","nodeType":"YulIdentifier","src":"29021:8:46"}]}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"28374:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"28384:1:46","type":"","value":"1"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"28371:2:46"},"nodeType":"YulFunctionCall","src":"28371:15:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"28387:2:46","statements":[]},"pre":{"nodeType":"YulBlock","src":"28367:3:46","statements":[]},"src":"28363:712:46"}]},"name":"checked_exp_helper","nodeType":"YulFunctionDefinition","parameters":[{"name":"_power","nodeType":"YulTypedName","src":"28261:6:46","type":""},{"name":"_base","nodeType":"YulTypedName","src":"28269:5:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"28276:8:46","type":""},{"name":"max","nodeType":"YulTypedName","src":"28286:3:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"28294:5:46","type":""},{"name":"base","nodeType":"YulTypedName","src":"28301:4:46","type":""}],"src":"28233:848:46"},{"body":{"nodeType":"YulBlock","src":"29151:217:46","statements":[{"nodeType":"YulAssignment","src":"29161:31:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"29187:4:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"29169:17:46"},"nodeType":"YulFunctionCall","src":"29169:23:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"29161:4:46"}]},{"nodeType":"YulAssignment","src":"29201:37:46","value":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"29229:8:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"29213:15:46"},"nodeType":"YulFunctionCall","src":"29213:25:46"},"variableNames":[{"name":"exponent","nodeType":"YulIdentifier","src":"29201:8:46"}]},{"nodeType":"YulAssignment","src":"29248:113:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"29278:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"29284:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"29294:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"checked_exp_unsigned","nodeType":"YulIdentifier","src":"29257:20:46"},"nodeType":"YulFunctionCall","src":"29257:104:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"29248:5:46"}]}]},"name":"checked_exp_t_uint256_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"base","nodeType":"YulTypedName","src":"29126:4:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"29132:8:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"29145:5:46","type":""}],"src":"29087:281:46"},{"body":{"nodeType":"YulBlock","src":"29434:1013:46","statements":[{"body":{"nodeType":"YulBlock","src":"29629:20:46","statements":[{"nodeType":"YulAssignment","src":"29631:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29640:1:46","type":"","value":"1"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"29631:5:46"}]},{"nodeType":"YulLeave","src":"29642:5:46"}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"29619:8:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"29612:6:46"},"nodeType":"YulFunctionCall","src":"29612:16:46"},"nodeType":"YulIf","src":"29609:40:46"},{"body":{"nodeType":"YulBlock","src":"29674:20:46","statements":[{"nodeType":"YulAssignment","src":"29676:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29685:1:46","type":"","value":"0"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"29676:5:46"}]},{"nodeType":"YulLeave","src":"29687:5:46"}]},"condition":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"29668:4:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"29661:6:46"},"nodeType":"YulFunctionCall","src":"29661:12:46"},"nodeType":"YulIf","src":"29658:36:46"},{"cases":[{"body":{"nodeType":"YulBlock","src":"29804:20:46","statements":[{"nodeType":"YulAssignment","src":"29806:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29815:1:46","type":"","value":"1"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"29806:5:46"}]},{"nodeType":"YulLeave","src":"29817:5:46"}]},"nodeType":"YulCase","src":"29797:27:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29802:1:46","type":"","value":"1"}},{"body":{"nodeType":"YulBlock","src":"29848:176:46","statements":[{"body":{"nodeType":"YulBlock","src":"29883:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"29885:16:46"},"nodeType":"YulFunctionCall","src":"29885:18:46"},"nodeType":"YulExpressionStatement","src":"29885:18:46"}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"29868:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"29878:3:46","type":"","value":"255"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"29865:2:46"},"nodeType":"YulFunctionCall","src":"29865:17:46"},"nodeType":"YulIf","src":"29862:43:46"},{"nodeType":"YulAssignment","src":"29918:25:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"29931:1:46","type":"","value":"2"},{"name":"exponent","nodeType":"YulIdentifier","src":"29934:8:46"}],"functionName":{"name":"exp","nodeType":"YulIdentifier","src":"29927:3:46"},"nodeType":"YulFunctionCall","src":"29927:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"29918:5:46"}]},{"body":{"nodeType":"YulBlock","src":"29974:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"29976:16:46"},"nodeType":"YulFunctionCall","src":"29976:18:46"},"nodeType":"YulExpressionStatement","src":"29976:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"29962:5:46"},{"name":"max","nodeType":"YulIdentifier","src":"29969:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"29959:2:46"},"nodeType":"YulFunctionCall","src":"29959:14:46"},"nodeType":"YulIf","src":"29956:40:46"},{"nodeType":"YulLeave","src":"30009:5:46"}]},"nodeType":"YulCase","src":"29833:191:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29838:1:46","type":"","value":"2"}}],"expression":{"name":"base","nodeType":"YulIdentifier","src":"29754:4:46"},"nodeType":"YulSwitch","src":"29747:277:46"},{"body":{"nodeType":"YulBlock","src":"30156:123:46","statements":[{"nodeType":"YulAssignment","src":"30170:28:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"30183:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"30189:8:46"}],"functionName":{"name":"exp","nodeType":"YulIdentifier","src":"30179:3:46"},"nodeType":"YulFunctionCall","src":"30179:19:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"30170:5:46"}]},{"body":{"nodeType":"YulBlock","src":"30229:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"30231:16:46"},"nodeType":"YulFunctionCall","src":"30231:18:46"},"nodeType":"YulExpressionStatement","src":"30231:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"30217:5:46"},{"name":"max","nodeType":"YulIdentifier","src":"30224:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"30214:2:46"},"nodeType":"YulFunctionCall","src":"30214:14:46"},"nodeType":"YulIf","src":"30211:40:46"},{"nodeType":"YulLeave","src":"30264:5:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"30059:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"30065:2:46","type":"","value":"11"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"30056:2:46"},"nodeType":"YulFunctionCall","src":"30056:12:46"},{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"30073:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"30083:2:46","type":"","value":"78"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"30070:2:46"},"nodeType":"YulFunctionCall","src":"30070:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"30052:3:46"},"nodeType":"YulFunctionCall","src":"30052:35:46"},{"arguments":[{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"30108:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"30114:3:46","type":"","value":"307"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"30105:2:46"},"nodeType":"YulFunctionCall","src":"30105:13:46"},{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"30123:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"30133:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"30120:2:46"},"nodeType":"YulFunctionCall","src":"30120:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"30101:3:46"},"nodeType":"YulFunctionCall","src":"30101:36:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"30036:2:46"},"nodeType":"YulFunctionCall","src":"30036:111:46"},"nodeType":"YulIf","src":"30033:246:46"},{"nodeType":"YulAssignment","src":"30289:57:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"30323:1:46","type":"","value":"1"},{"name":"base","nodeType":"YulIdentifier","src":"30326:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"30332:8:46"},{"name":"max","nodeType":"YulIdentifier","src":"30342:3:46"}],"functionName":{"name":"checked_exp_helper","nodeType":"YulIdentifier","src":"30304:18:46"},"nodeType":"YulFunctionCall","src":"30304:42:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"30289:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"30296:4:46"}]},{"body":{"nodeType":"YulBlock","src":"30385:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"30387:16:46"},"nodeType":"YulFunctionCall","src":"30387:18:46"},"nodeType":"YulExpressionStatement","src":"30387:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"30362:5:46"},{"arguments":[{"name":"max","nodeType":"YulIdentifier","src":"30373:3:46"},{"name":"base","nodeType":"YulIdentifier","src":"30378:4:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"30369:3:46"},"nodeType":"YulFunctionCall","src":"30369:14:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"30359:2:46"},"nodeType":"YulFunctionCall","src":"30359:25:46"},"nodeType":"YulIf","src":"30356:51:46"},{"nodeType":"YulAssignment","src":"30416:25:46","value":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"30429:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"30436:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"30425:3:46"},"nodeType":"YulFunctionCall","src":"30425:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"30416:5:46"}]}]},"name":"checked_exp_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"base","nodeType":"YulTypedName","src":"29404:4:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"29410:8:46","type":""},{"name":"max","nodeType":"YulTypedName","src":"29420:3:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"29428:5:46","type":""}],"src":"29374:1073:46"},{"body":{"nodeType":"YulBlock","src":"30501:300:46","statements":[{"nodeType":"YulAssignment","src":"30511:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"30534:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"30516:17:46"},"nodeType":"YulFunctionCall","src":"30516:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"30511:1:46"}]},{"nodeType":"YulAssignment","src":"30545:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"30568:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"30550:17:46"},"nodeType":"YulFunctionCall","src":"30550:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"30545:1:46"}]},{"body":{"nodeType":"YulBlock","src":"30743:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"30745:16:46"},"nodeType":"YulFunctionCall","src":"30745:18:46"},"nodeType":"YulExpressionStatement","src":"30745:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"30655:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"30648:6:46"},"nodeType":"YulFunctionCall","src":"30648:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"30641:6:46"},"nodeType":"YulFunctionCall","src":"30641:17:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"30663:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"30670:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"x","nodeType":"YulIdentifier","src":"30738:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"30666:3:46"},"nodeType":"YulFunctionCall","src":"30666:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"30660:2:46"},"nodeType":"YulFunctionCall","src":"30660:81:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"30637:3:46"},"nodeType":"YulFunctionCall","src":"30637:105:46"},"nodeType":"YulIf","src":"30634:131:46"},{"nodeType":"YulAssignment","src":"30775:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"30790:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"30793:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"30786:3:46"},"nodeType":"YulFunctionCall","src":"30786:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"30775:7:46"}]}]},"name":"checked_mul_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"30484:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"30487:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"30493:7:46","type":""}],"src":"30453:348:46"},{"body":{"nodeType":"YulBlock","src":"30852:146:46","statements":[{"nodeType":"YulAssignment","src":"30862:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"30885:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"30867:17:46"},"nodeType":"YulFunctionCall","src":"30867:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"30862:1:46"}]},{"nodeType":"YulAssignment","src":"30896:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"30919:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"30901:17:46"},"nodeType":"YulFunctionCall","src":"30901:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"30896:1:46"}]},{"body":{"nodeType":"YulBlock","src":"30943:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"30945:16:46"},"nodeType":"YulFunctionCall","src":"30945:18:46"},"nodeType":"YulExpressionStatement","src":"30945:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"30937:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"30940:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"30934:2:46"},"nodeType":"YulFunctionCall","src":"30934:8:46"},"nodeType":"YulIf","src":"30931:34:46"},{"nodeType":"YulAssignment","src":"30975:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"30987:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"30990:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"30983:3:46"},"nodeType":"YulFunctionCall","src":"30983:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"30975:4:46"}]}]},"name":"checked_sub_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"30838:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"30841:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"30847:4:46","type":""}],"src":"30807:191:46"},{"body":{"nodeType":"YulBlock","src":"31047:142:46","statements":[{"nodeType":"YulAssignment","src":"31057:23:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"31078:1:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"31062:15:46"},"nodeType":"YulFunctionCall","src":"31062:18:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"31057:1:46"}]},{"nodeType":"YulAssignment","src":"31089:23:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"31110:1:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"31094:15:46"},"nodeType":"YulFunctionCall","src":"31094:18:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"31089:1:46"}]},{"body":{"nodeType":"YulBlock","src":"31134:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"31136:16:46"},"nodeType":"YulFunctionCall","src":"31136:18:46"},"nodeType":"YulExpressionStatement","src":"31136:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"31128:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"31131:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"31125:2:46"},"nodeType":"YulFunctionCall","src":"31125:8:46"},"nodeType":"YulIf","src":"31122:34:46"},{"nodeType":"YulAssignment","src":"31166:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"31178:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"31181:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"31174:3:46"},"nodeType":"YulFunctionCall","src":"31174:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"31166:4:46"}]}]},"name":"checked_sub_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"31033:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"31036:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"31042:4:46","type":""}],"src":"31004:185:46"},{"body":{"nodeType":"YulBlock","src":"31240:51:46","statements":[{"nodeType":"YulAssignment","src":"31250:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"31279:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"31261:17:46"},"nodeType":"YulFunctionCall","src":"31261:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31250:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31222:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31232:7:46","type":""}],"src":"31195:96:46"},{"body":{"nodeType":"YulBlock","src":"31350:51:46","statements":[{"nodeType":"YulAssignment","src":"31360:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"31389:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"31371:17:46"},"nodeType":"YulFunctionCall","src":"31371:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31360:7:46"}]}]},"name":"cleanup_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31332:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31342:7:46","type":""}],"src":"31297:104:46"},{"body":{"nodeType":"YulBlock","src":"31449:48:46","statements":[{"nodeType":"YulAssignment","src":"31459:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"31484:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"31477:6:46"},"nodeType":"YulFunctionCall","src":"31477:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"31470:6:46"},"nodeType":"YulFunctionCall","src":"31470:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31459:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31431:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31441:7:46","type":""}],"src":"31407:90:46"},{"body":{"nodeType":"YulBlock","src":"31548:32:46","statements":[{"nodeType":"YulAssignment","src":"31558:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"31569:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31558:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31530:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31540:7:46","type":""}],"src":"31503:77:46"},{"body":{"nodeType":"YulBlock","src":"31648:51:46","statements":[{"nodeType":"YulAssignment","src":"31658:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"31687:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"31669:17:46"},"nodeType":"YulFunctionCall","src":"31669:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31658:7:46"}]}]},"name":"cleanup_t_contract$_Clonable_$7948","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31630:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31640:7:46","type":""}],"src":"31586:113:46"},{"body":{"nodeType":"YulBlock","src":"31750:81:46","statements":[{"nodeType":"YulAssignment","src":"31760:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"31775:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"31782:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"31771:3:46"},"nodeType":"YulFunctionCall","src":"31771:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31760:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31732:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31742:7:46","type":""}],"src":"31705:126:46"},{"body":{"nodeType":"YulBlock","src":"31882:32:46","statements":[{"nodeType":"YulAssignment","src":"31892:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"31903:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31892:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31864:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31874:7:46","type":""}],"src":"31837:77:46"},{"body":{"nodeType":"YulBlock","src":"31964:49:46","statements":[{"nodeType":"YulAssignment","src":"31974:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"31989:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"31996:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"31985:3:46"},"nodeType":"YulFunctionCall","src":"31985:22:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"31974:7:46"}]}]},"name":"cleanup_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"31946:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"31956:7:46","type":""}],"src":"31920:93:46"},{"body":{"nodeType":"YulBlock","src":"32063:57:46","statements":[{"nodeType":"YulAssignment","src":"32073:41:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32088:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"32095:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"32084:3:46"},"nodeType":"YulFunctionCall","src":"32084:30:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"32073:7:46"}]}]},"name":"cleanup_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32045:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"32055:7:46","type":""}],"src":"32019:101:46"},{"body":{"nodeType":"YulBlock","src":"32169:43:46","statements":[{"nodeType":"YulAssignment","src":"32179:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32194:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"32201:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"32190:3:46"},"nodeType":"YulFunctionCall","src":"32190:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"32179:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32151:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"32161:7:46","type":""}],"src":"32126:86:46"},{"body":{"nodeType":"YulBlock","src":"32295:66:46","statements":[{"nodeType":"YulAssignment","src":"32305:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32349:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"32318:30:46"},"nodeType":"YulFunctionCall","src":"32318:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"32305:9:46"}]}]},"name":"convert_t_contract$_Clonable_$7948_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32275:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"32285:9:46","type":""}],"src":"32218:143:46"},{"body":{"nodeType":"YulBlock","src":"32450:66:46","statements":[{"nodeType":"YulAssignment","src":"32460:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32504:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"32473:30:46"},"nodeType":"YulFunctionCall","src":"32473:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"32460:9:46"}]}]},"name":"convert_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32430:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"32440:9:46","type":""}],"src":"32367:149:46"},{"body":{"nodeType":"YulBlock","src":"32616:74:46","statements":[{"nodeType":"YulAssignment","src":"32626:58:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32678:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address_payable","nodeType":"YulIdentifier","src":"32639:38:46"},"nodeType":"YulFunctionCall","src":"32639:45:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"32626:9:46"}]}]},"name":"convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32596:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"32606:9:46","type":""}],"src":"32522:168:46"},{"body":{"nodeType":"YulBlock","src":"32788:66:46","statements":[{"nodeType":"YulAssignment","src":"32798:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32842:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"32811:30:46"},"nodeType":"YulFunctionCall","src":"32811:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"32798:9:46"}]}]},"name":"convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32768:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"32778:9:46","type":""}],"src":"32696:158:46"},{"body":{"nodeType":"YulBlock","src":"32920:66:46","statements":[{"nodeType":"YulAssignment","src":"32930:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"32974:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"32943:30:46"},"nodeType":"YulFunctionCall","src":"32943:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"32930:9:46"}]}]},"name":"convert_t_uint160_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"32900:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"32910:9:46","type":""}],"src":"32860:126:46"},{"body":{"nodeType":"YulBlock","src":"33060:66:46","statements":[{"nodeType":"YulAssignment","src":"33070:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"33114:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"33083:30:46"},"nodeType":"YulFunctionCall","src":"33083:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"33070:9:46"}]}]},"name":"convert_t_uint160_to_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"33040:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"33050:9:46","type":""}],"src":"32992:134:46"},{"body":{"nodeType":"YulBlock","src":"33192:53:46","statements":[{"nodeType":"YulAssignment","src":"33202:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"33233:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"33215:17:46"},"nodeType":"YulFunctionCall","src":"33215:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"33202:9:46"}]}]},"name":"convert_t_uint160_to_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"33172:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"33182:9:46","type":""}],"src":"33132:113:46"},{"body":{"nodeType":"YulBlock","src":"33302:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"33325:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"33330:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"33335:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"33312:12:46"},"nodeType":"YulFunctionCall","src":"33312:30:46"},"nodeType":"YulExpressionStatement","src":"33312:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"33383:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"33388:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33379:3:46"},"nodeType":"YulFunctionCall","src":"33379:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"33397:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"33372:6:46"},"nodeType":"YulFunctionCall","src":"33372:27:46"},"nodeType":"YulExpressionStatement","src":"33372:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"33284:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"33289:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"33294:6:46","type":""}],"src":"33251:154:46"},{"body":{"nodeType":"YulBlock","src":"33460:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33470:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"33479:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"33474:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"33539:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"33564:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"33569:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33560:3:46"},"nodeType":"YulFunctionCall","src":"33560:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"33583:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"33588:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33579:3:46"},"nodeType":"YulFunctionCall","src":"33579:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"33573:5:46"},"nodeType":"YulFunctionCall","src":"33573:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"33553:6:46"},"nodeType":"YulFunctionCall","src":"33553:39:46"},"nodeType":"YulExpressionStatement","src":"33553:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"33500:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"33503:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"33497:2:46"},"nodeType":"YulFunctionCall","src":"33497:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"33511:19:46","statements":[{"nodeType":"YulAssignment","src":"33513:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"33522:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"33525:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33518:3:46"},"nodeType":"YulFunctionCall","src":"33518:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"33513:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"33493:3:46","statements":[]},"src":"33489:113:46"},{"body":{"nodeType":"YulBlock","src":"33636:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"33686:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"33691:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33682:3:46"},"nodeType":"YulFunctionCall","src":"33682:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"33700:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"33675:6:46"},"nodeType":"YulFunctionCall","src":"33675:27:46"},"nodeType":"YulExpressionStatement","src":"33675:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"33617:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"33620:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"33614:2:46"},"nodeType":"YulFunctionCall","src":"33614:13:46"},"nodeType":"YulIf","src":"33611:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"33442:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"33447:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"33452:6:46","type":""}],"src":"33411:307:46"},{"body":{"nodeType":"YulBlock","src":"33767:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33777:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"33799:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"33829:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"33807:21:46"},"nodeType":"YulFunctionCall","src":"33807:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33795:3:46"},"nodeType":"YulFunctionCall","src":"33795:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"33781:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"33946:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"33948:16:46"},"nodeType":"YulFunctionCall","src":"33948:18:46"},"nodeType":"YulExpressionStatement","src":"33948:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"33889:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"33901:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"33886:2:46"},"nodeType":"YulFunctionCall","src":"33886:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"33925:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"33937:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"33922:2:46"},"nodeType":"YulFunctionCall","src":"33922:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"33883:2:46"},"nodeType":"YulFunctionCall","src":"33883:62:46"},"nodeType":"YulIf","src":"33880:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"33984:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"33988:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"33977:6:46"},"nodeType":"YulFunctionCall","src":"33977:22:46"},"nodeType":"YulExpressionStatement","src":"33977:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"33753:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"33761:4:46","type":""}],"src":"33724:281:46"},{"body":{"nodeType":"YulBlock","src":"34039:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34056:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34059:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34049:6:46"},"nodeType":"YulFunctionCall","src":"34049:88:46"},"nodeType":"YulExpressionStatement","src":"34049:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34153:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"34156:4:46","type":"","value":"0x01"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34146:6:46"},"nodeType":"YulFunctionCall","src":"34146:15:46"},"nodeType":"YulExpressionStatement","src":"34146:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34177:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34180:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"34170:6:46"},"nodeType":"YulFunctionCall","src":"34170:15:46"},"nodeType":"YulExpressionStatement","src":"34170:15:46"}]},"name":"panic_error_0x01","nodeType":"YulFunctionDefinition","src":"34011:180:46"},{"body":{"nodeType":"YulBlock","src":"34225:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34242:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34245:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34235:6:46"},"nodeType":"YulFunctionCall","src":"34235:88:46"},"nodeType":"YulExpressionStatement","src":"34235:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34339:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"34342:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34332:6:46"},"nodeType":"YulFunctionCall","src":"34332:15:46"},"nodeType":"YulExpressionStatement","src":"34332:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34363:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34366:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"34356:6:46"},"nodeType":"YulFunctionCall","src":"34356:15:46"},"nodeType":"YulExpressionStatement","src":"34356:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"34197:180:46"},{"body":{"nodeType":"YulBlock","src":"34411:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34428:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34431:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34421:6:46"},"nodeType":"YulFunctionCall","src":"34421:88:46"},"nodeType":"YulExpressionStatement","src":"34421:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34525:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"34528:4:46","type":"","value":"0x21"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34518:6:46"},"nodeType":"YulFunctionCall","src":"34518:15:46"},"nodeType":"YulExpressionStatement","src":"34518:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34549:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34552:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"34542:6:46"},"nodeType":"YulFunctionCall","src":"34542:15:46"},"nodeType":"YulExpressionStatement","src":"34542:15:46"}]},"name":"panic_error_0x21","nodeType":"YulFunctionDefinition","src":"34383:180:46"},{"body":{"nodeType":"YulBlock","src":"34597:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34614:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34617:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34607:6:46"},"nodeType":"YulFunctionCall","src":"34607:88:46"},"nodeType":"YulExpressionStatement","src":"34607:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34711:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"34714:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34704:6:46"},"nodeType":"YulFunctionCall","src":"34704:15:46"},"nodeType":"YulExpressionStatement","src":"34704:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34735:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34738:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"34728:6:46"},"nodeType":"YulFunctionCall","src":"34728:15:46"},"nodeType":"YulExpressionStatement","src":"34728:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"34569:180:46"},{"body":{"nodeType":"YulBlock","src":"34783:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34800:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34803:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34793:6:46"},"nodeType":"YulFunctionCall","src":"34793:88:46"},"nodeType":"YulExpressionStatement","src":"34793:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34897:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"34900:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34890:6:46"},"nodeType":"YulFunctionCall","src":"34890:15:46"},"nodeType":"YulExpressionStatement","src":"34890:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34921:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"34924:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"34914:6:46"},"nodeType":"YulFunctionCall","src":"34914:15:46"},"nodeType":"YulExpressionStatement","src":"34914:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"34755:180:46"},{"body":{"nodeType":"YulBlock","src":"35030:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35047:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"35050:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"35040:6:46"},"nodeType":"YulFunctionCall","src":"35040:12:46"},"nodeType":"YulExpressionStatement","src":"35040:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"34941:117:46"},{"body":{"nodeType":"YulBlock","src":"35153:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35170:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"35173:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"35163:6:46"},"nodeType":"YulFunctionCall","src":"35163:12:46"},"nodeType":"YulExpressionStatement","src":"35163:12:46"}]},"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulFunctionDefinition","src":"35064:117:46"},{"body":{"nodeType":"YulBlock","src":"35276:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35293:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"35296:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"35286:6:46"},"nodeType":"YulFunctionCall","src":"35286:12:46"},"nodeType":"YulExpressionStatement","src":"35286:12:46"}]},"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulFunctionDefinition","src":"35187:117:46"},{"body":{"nodeType":"YulBlock","src":"35399:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35416:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"35419:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"35409:6:46"},"nodeType":"YulFunctionCall","src":"35409:12:46"},"nodeType":"YulExpressionStatement","src":"35409:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"35310:117:46"},{"body":{"nodeType":"YulBlock","src":"35522:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35539:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"35542:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"35532:6:46"},"nodeType":"YulFunctionCall","src":"35532:12:46"},"nodeType":"YulExpressionStatement","src":"35532:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"35433:117:46"},{"body":{"nodeType":"YulBlock","src":"35645:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35662:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"35665:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"35655:6:46"},"nodeType":"YulFunctionCall","src":"35655:12:46"},"nodeType":"YulExpressionStatement","src":"35655:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"35556:117:46"},{"body":{"nodeType":"YulBlock","src":"35727:54:46","statements":[{"nodeType":"YulAssignment","src":"35737:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35755:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"35762:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35751:3:46"},"nodeType":"YulFunctionCall","src":"35751:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35771:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"35767:3:46"},"nodeType":"YulFunctionCall","src":"35767:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"35747:3:46"},"nodeType":"YulFunctionCall","src":"35747:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"35737:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35710:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"35720:6:46","type":""}],"src":"35679:102:46"},{"body":{"nodeType":"YulBlock","src":"35838:51:46","statements":[{"nodeType":"YulAssignment","src":"35848:34:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"35873:1:46","type":"","value":"1"},{"name":"value","nodeType":"YulIdentifier","src":"35876:5:46"}],"functionName":{"name":"shr","nodeType":"YulIdentifier","src":"35869:3:46"},"nodeType":"YulFunctionCall","src":"35869:13:46"},"variableNames":[{"name":"newValue","nodeType":"YulIdentifier","src":"35848:8:46"}]}]},"name":"shift_right_1_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35819:5:46","type":""}],"returnVariables":[{"name":"newValue","nodeType":"YulTypedName","src":"35829:8:46","type":""}],"src":"35787:102:46"},{"body":{"nodeType":"YulBlock","src":"36001:115:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36023:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36031:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36019:3:46"},"nodeType":"YulFunctionCall","src":"36019:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573733a206661756c74792072616e646f6d69","kind":"string","nodeType":"YulLiteral","src":"36035:34:46","type":"","value":"WitnetRandomness: faulty randomi"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36012:6:46"},"nodeType":"YulFunctionCall","src":"36012:58:46"},"nodeType":"YulExpressionStatement","src":"36012:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36091:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36099:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36087:3:46"},"nodeType":"YulFunctionCall","src":"36087:15:46"},{"hexValue":"7a65","kind":"string","nodeType":"YulLiteral","src":"36104:4:46","type":"","value":"ze"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36080:6:46"},"nodeType":"YulFunctionCall","src":"36080:29:46"},"nodeType":"YulExpressionStatement","src":"36080:29:46"}]},"name":"store_literal_in_memory_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"35993:6:46","type":""}],"src":"35895:221:46"},{"body":{"nodeType":"YulBlock","src":"36228:118:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36250:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36258:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36246:3:46"},"nodeType":"YulFunctionCall","src":"36246:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573733a20616c726561647920696e69746961","kind":"string","nodeType":"YulLiteral","src":"36262:34:46","type":"","value":"WitnetRandomness: already initia"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36239:6:46"},"nodeType":"YulFunctionCall","src":"36239:58:46"},"nodeType":"YulExpressionStatement","src":"36239:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36318:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36326:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36314:3:46"},"nodeType":"YulFunctionCall","src":"36314:15:46"},{"hexValue":"6c697a6564","kind":"string","nodeType":"YulLiteral","src":"36331:7:46","type":"","value":"lized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36307:6:46"},"nodeType":"YulFunctionCall","src":"36307:32:46"},"nodeType":"YulExpressionStatement","src":"36307:32:46"}]},"name":"store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"36220:6:46","type":""}],"src":"36122:224:46"},{"body":{"nodeType":"YulBlock","src":"36458:116:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36480:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36488:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36476:3:46"},"nodeType":"YulFunctionCall","src":"36476:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573733a2070656e64696e672072616e646f6d","kind":"string","nodeType":"YulLiteral","src":"36492:34:46","type":"","value":"WitnetRandomness: pending random"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36469:6:46"},"nodeType":"YulFunctionCall","src":"36469:58:46"},"nodeType":"YulExpressionStatement","src":"36469:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36548:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36556:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36544:3:46"},"nodeType":"YulFunctionCall","src":"36544:15:46"},{"hexValue":"697a65","kind":"string","nodeType":"YulLiteral","src":"36561:5:46","type":"","value":"ize"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36537:6:46"},"nodeType":"YulFunctionCall","src":"36537:30:46"},"nodeType":"YulExpressionStatement","src":"36537:30:46"}]},"name":"store_literal_in_memory_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"36450:6:46","type":""}],"src":"36352:222:46"},{"body":{"nodeType":"YulBlock","src":"36686:71:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36708:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36716:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36704:3:46"},"nodeType":"YulFunctionCall","src":"36704:14:46"},{"hexValue":"5573696e675769746e65743a2072657761726420746f6f206c6f77","kind":"string","nodeType":"YulLiteral","src":"36720:29:46","type":"","value":"UsingWitnet: reward too low"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36697:6:46"},"nodeType":"YulFunctionCall","src":"36697:53:46"},"nodeType":"YulExpressionStatement","src":"36697:53:46"}]},"name":"store_literal_in_memory_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"36678:6:46","type":""}],"src":"36580:177:46"},{"body":{"nodeType":"YulBlock","src":"36869:68:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"36891:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"36899:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36887:3:46"},"nodeType":"YulFunctionCall","src":"36887:14:46"},{"hexValue":"436c6f6e61626c653a2043524541544532206661696c6564","kind":"string","nodeType":"YulLiteral","src":"36903:26:46","type":"","value":"Clonable: CREATE2 failed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36880:6:46"},"nodeType":"YulFunctionCall","src":"36880:50:46"},"nodeType":"YulExpressionStatement","src":"36880:50:46"}]},"name":"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"36861:6:46","type":""}],"src":"36763:174:46"},{"body":{"nodeType":"YulBlock","src":"37049:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"37071:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"37079:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37067:3:46"},"nodeType":"YulFunctionCall","src":"37067:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573733a206e6f742072616e646f6d697a6564","kind":"string","nodeType":"YulLiteral","src":"37083:34:46","type":"","value":"WitnetRandomness: not randomized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37060:6:46"},"nodeType":"YulFunctionCall","src":"37060:58:46"},"nodeType":"YulExpressionStatement","src":"37060:58:46"}]},"name":"store_literal_in_memory_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"37041:6:46","type":""}],"src":"36943:182:46"},{"body":{"nodeType":"YulBlock","src":"37237:67:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"37259:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"37267:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37255:3:46"},"nodeType":"YulFunctionCall","src":"37255:14:46"},{"hexValue":"436c6f6e61626c653a20435245415445206661696c6564","kind":"string","nodeType":"YulLiteral","src":"37271:25:46","type":"","value":"Clonable: CREATE failed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37248:6:46"},"nodeType":"YulFunctionCall","src":"37248:49:46"},"nodeType":"YulExpressionStatement","src":"37248:49:46"}]},"name":"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"37229:6:46","type":""}],"src":"37131:173:46"},{"body":{"nodeType":"YulBlock","src":"37361:87:46","statements":[{"body":{"nodeType":"YulBlock","src":"37426:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"37435:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"37438:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"37428:6:46"},"nodeType":"YulFunctionCall","src":"37428:12:46"},"nodeType":"YulExpressionStatement","src":"37428:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37384:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37417:5:46"}],"functionName":{"name":"cleanup_t_address_payable","nodeType":"YulIdentifier","src":"37391:25:46"},"nodeType":"YulFunctionCall","src":"37391:32:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"37381:2:46"},"nodeType":"YulFunctionCall","src":"37381:43:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"37374:6:46"},"nodeType":"YulFunctionCall","src":"37374:51:46"},"nodeType":"YulIf","src":"37371:71:46"}]},"name":"validator_revert_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"37354:5:46","type":""}],"src":"37310:138:46"},{"body":{"nodeType":"YulBlock","src":"37494:76:46","statements":[{"body":{"nodeType":"YulBlock","src":"37548:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"37557:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"37560:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"37550:6:46"},"nodeType":"YulFunctionCall","src":"37550:12:46"},"nodeType":"YulExpressionStatement","src":"37550:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37517:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37539:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"37524:14:46"},"nodeType":"YulFunctionCall","src":"37524:21:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"37514:2:46"},"nodeType":"YulFunctionCall","src":"37514:32:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"37507:6:46"},"nodeType":"YulFunctionCall","src":"37507:40:46"},"nodeType":"YulIf","src":"37504:60:46"}]},"name":"validator_revert_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"37487:5:46","type":""}],"src":"37454:116:46"},{"body":{"nodeType":"YulBlock","src":"37619:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"37676:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"37685:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"37688:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"37678:6:46"},"nodeType":"YulFunctionCall","src":"37678:12:46"},"nodeType":"YulExpressionStatement","src":"37678:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37642:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37667:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"37649:17:46"},"nodeType":"YulFunctionCall","src":"37649:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"37639:2:46"},"nodeType":"YulFunctionCall","src":"37639:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"37632:6:46"},"nodeType":"YulFunctionCall","src":"37632:43:46"},"nodeType":"YulIf","src":"37629:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"37612:5:46","type":""}],"src":"37576:122:46"},{"body":{"nodeType":"YulBlock","src":"37764:96:46","statements":[{"body":{"nodeType":"YulBlock","src":"37838:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"37847:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"37850:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"37840:6:46"},"nodeType":"YulFunctionCall","src":"37840:12:46"},"nodeType":"YulExpressionStatement","src":"37840:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37787:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37829:5:46"}],"functionName":{"name":"cleanup_t_contract$_Clonable_$7948","nodeType":"YulIdentifier","src":"37794:34:46"},"nodeType":"YulFunctionCall","src":"37794:41:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"37784:2:46"},"nodeType":"YulFunctionCall","src":"37784:52:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"37777:6:46"},"nodeType":"YulFunctionCall","src":"37777:60:46"},"nodeType":"YulIf","src":"37774:80:46"}]},"name":"validator_revert_t_contract$_Clonable_$7948","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"37757:5:46","type":""}],"src":"37704:156:46"},{"body":{"nodeType":"YulBlock","src":"37925:56:46","statements":[{"body":{"nodeType":"YulBlock","src":"37959:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"37968:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"37971:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"37961:6:46"},"nodeType":"YulFunctionCall","src":"37961:12:46"},"nodeType":"YulExpressionStatement","src":"37961:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37948:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"37955:1:46","type":"","value":"4"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"37945:2:46"},"nodeType":"YulFunctionCall","src":"37945:12:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"37938:6:46"},"nodeType":"YulFunctionCall","src":"37938:20:46"},"nodeType":"YulIf","src":"37935:40:46"}]},"name":"validator_revert_t_enum$_QueryStatus_$4315","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"37918:5:46","type":""}],"src":"37866:115:46"},{"body":{"nodeType":"YulBlock","src":"38030:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"38087:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"38096:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"38099:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"38089:6:46"},"nodeType":"YulFunctionCall","src":"38089:12:46"},"nodeType":"YulExpressionStatement","src":"38089:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38053:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38078:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"38060:17:46"},"nodeType":"YulFunctionCall","src":"38060:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"38050:2:46"},"nodeType":"YulFunctionCall","src":"38050:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"38043:6:46"},"nodeType":"YulFunctionCall","src":"38043:43:46"},"nodeType":"YulIf","src":"38040:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"38023:5:46","type":""}],"src":"37987:122:46"},{"body":{"nodeType":"YulBlock","src":"38157:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"38213:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"38222:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"38225:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"38215:6:46"},"nodeType":"YulFunctionCall","src":"38215:12:46"},"nodeType":"YulExpressionStatement","src":"38215:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38180:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38204:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"38187:16:46"},"nodeType":"YulFunctionCall","src":"38187:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"38177:2:46"},"nodeType":"YulFunctionCall","src":"38177:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"38170:6:46"},"nodeType":"YulFunctionCall","src":"38170:42:46"},"nodeType":"YulIf","src":"38167:62:46"}]},"name":"validator_revert_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"38150:5:46","type":""}],"src":"38115:120:46"},{"body":{"nodeType":"YulBlock","src":"38283:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"38339:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"38348:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"38351:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"38341:6:46"},"nodeType":"YulFunctionCall","src":"38341:12:46"},"nodeType":"YulExpressionStatement","src":"38341:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38306:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38330:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"38313:16:46"},"nodeType":"YulFunctionCall","src":"38313:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"38303:2:46"},"nodeType":"YulFunctionCall","src":"38303:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"38296:6:46"},"nodeType":"YulFunctionCall","src":"38296:42:46"},"nodeType":"YulIf","src":"38293:62:46"}]},"name":"validator_revert_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"38276:5:46","type":""}],"src":"38241:120:46"},{"body":{"nodeType":"YulBlock","src":"38408:77:46","statements":[{"body":{"nodeType":"YulBlock","src":"38463:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"38472:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"38475:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"38465:6:46"},"nodeType":"YulFunctionCall","src":"38465:12:46"},"nodeType":"YulExpressionStatement","src":"38465:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38431:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38454:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"38438:15:46"},"nodeType":"YulFunctionCall","src":"38438:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"38428:2:46"},"nodeType":"YulFunctionCall","src":"38428:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"38421:6:46"},"nodeType":"YulFunctionCall","src":"38421:41:46"},"nodeType":"YulIf","src":"38418:61:46"}]},"name":"validator_revert_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"38401:5:46","type":""}],"src":"38367:118:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_memory_to_memory(src, dst, length)\n    }\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_t_bool_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bool(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    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\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_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_contract$_Clonable_$7948_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_contract$_Clonable_$7948(value)\n    }\n\n    function abi_decode_t_enum$_QueryStatus_$4315_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_enum$_QueryStatus_$4315(value)\n    }\n\n    // struct Witnet.Buffer\n    function abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // data\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // cursor\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint32_fromMemory(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.CBOR\n    function abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0xc0)\n\n        {\n            // buffer\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // initialByte\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // majorType\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // additionalInformation\n\n            let offset := 96\n\n            mstore(add(value, 0x60), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // len\n\n            let offset := 128\n\n            mstore(add(value, 0x80), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // tag\n\n            let offset := 160\n\n            mstore(add(value, 0xa0), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Result\n    function abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // success\n\n            let offset := 0\n\n            mstore(add(value, 0x00), abi_decode_t_bool_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // value\n\n            let offset := mload(add(headStart, 32))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x20), abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\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_t_uint32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint64_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint8_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_address_payable_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bool_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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\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_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_contract$_Clonable_$7948_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_contract$_Clonable_$7948_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_enum$_QueryStatus_$4315_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_enum$_QueryStatus_$4315_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_Result_$4342_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory(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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint256_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint32t_uint256t_bytes32(headStart, dataEnd) -> value0, value1, value2 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint32(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 := 64\n\n            value2 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint32t_uint256t_uint256(headStart, dataEnd) -> value0, value1, value2 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint32(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 := 64\n\n            value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\n    }\n\n    function abi_encode_t_bool_to_t_bool(value, pos) {\n        mstore(pos, cleanup_t_bool(value))\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_bytes_memory_ptr_to_t_bytes_memory_ptr(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr(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_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$_Clonable_$7948_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_Clonable_$7948_to_t_address(value))\n    }\n\n    function abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_IWitnetRequest_$3829_to_t_address(value))\n    }\n\n    function abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable(value))\n    }\n\n    function abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address(value))\n    }\n\n    function abi_encode_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n        store_literal_in_memory_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n        store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 35)\n        store_literal_in_memory_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n        store_literal_in_memory_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n        store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n        store_literal_in_memory_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n        store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e(pos)\n        end := add(pos, 32)\n    }\n\n    // struct Witnet.Buffer -> struct Witnet.Buffer\n    function abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // data\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(memberValue0, tail)\n\n        }\n\n        {\n            // cursor\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint32_to_t_uint32(memberValue0, add(pos, 0x20))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Result -> struct Witnet.Result\n    function abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // success\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // value\n\n            let memberValue0 := mload(add(value, 0x20))\n\n            mstore(add(pos, 0x20), sub(tail, pos))\n            tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr(memberValue0, tail)\n\n        }\n\n        end := tail\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_uint32_to_t_uint32(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_t_uint32_to_t_uint32_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8(value, pos) {\n        mstore(pos, cleanup_t_uint8(value))\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_bytes32__to_t_address_t_bytes32__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_bytes32_to_t_bytes32_fromStack(value1,  add(headStart, 32))\n\n    }\n\n    function abi_encode_tuple_t_address_t_uint256_t_uint256_t_uint256__to_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n        tail := add(headStart, 128)\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        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    }\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__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$_Clonable_$7948__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_contract$_IWitnetRequest_$3829__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_contract$_WitnetRequestBoard_$481__to_t_address_payable__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_contract$_WitnetRequestRandomness_$9072__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2__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_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c__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_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae__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_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b__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_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__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_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692__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_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__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_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_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_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack(value0,  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_bytes32__to_t_uint256_t_bytes32__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_bytes32_to_t_bytes32_fromStack(value1,  add(headStart, 32))\n\n    }\n\n    function abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint32_to_t_uint32_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_length_t_bytes_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_storeLengthForEncoding_t_bytes_memory_ptr(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_exp_helper(_power, _base, exponent, max) -> power, base {\n        power := _power\n        base  := _base\n        for { } gt(exponent, 1) {}\n        {\n            // overflow check for base * base\n            if gt(base, div(max, base)) { panic_error_0x11() }\n            if and(exponent, 1)\n            {\n                // No checks for power := mul(power, base) needed, because the check\n                // for base * base above is sufficient, since:\n                // |power| <= base (proof by induction) and thus:\n                // |power * base| <= base * base <= max <= |min| (for signed)\n                // (this is equally true for signed and unsigned exp)\n                power := mul(power, base)\n            }\n            base := mul(base, base)\n            exponent := shift_right_1_unsigned(exponent)\n        }\n    }\n\n    function checked_exp_t_uint256_t_uint8(base, exponent) -> power {\n        base := cleanup_t_uint256(base)\n        exponent := cleanup_t_uint8(exponent)\n\n        power := checked_exp_unsigned(base, exponent, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n\n    }\n\n    function checked_exp_unsigned(base, exponent, max) -> power {\n        // This function currently cannot be inlined because of the\n        // \"leave\" statements. We have to improve the optimizer.\n\n        // Note that 0**0 == 1\n        if iszero(exponent) { power := 1 leave }\n        if iszero(base) { power := 0 leave }\n\n        // Specializations for small bases\n        switch base\n        // 0 is handled above\n        case 1 { power := 1 leave }\n        case 2\n        {\n            if gt(exponent, 255) { panic_error_0x11() }\n            power := exp(2, exponent)\n            if gt(power, max) { panic_error_0x11() }\n            leave\n        }\n        if or(\n            and(lt(base, 11), lt(exponent, 78)),\n            and(lt(base, 307), lt(exponent, 32))\n        )\n        {\n            power := exp(base, exponent)\n            if gt(power, max) { panic_error_0x11() }\n            leave\n        }\n\n        power, base := checked_exp_helper(1, base, exponent, max)\n\n        if gt(power, div(max, base)) { panic_error_0x11() }\n        power := mul(power, base)\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 checked_sub_t_uint8(x, y) -> diff {\n        x := cleanup_t_uint8(x)\n        y := cleanup_t_uint8(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_address_payable(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_contract$_Clonable_$7948(value) -> cleaned {\n        cleaned := cleanup_t_address(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_uint32(value) -> cleaned {\n        cleaned := and(value, 0xffffffff)\n    }\n\n    function cleanup_t_uint64(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffff)\n    }\n\n    function cleanup_t_uint8(value) -> cleaned {\n        cleaned := and(value, 0xff)\n    }\n\n    function convert_t_contract$_Clonable_$7948_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_contract$_IWitnetRequest_$3829_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable(value) -> converted {\n        converted := convert_t_uint160_to_t_address_payable(value)\n    }\n\n    function convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_uint160_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_address_payable(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_uint160(value) -> converted {\n        converted := cleanup_t_uint160(value)\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 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 panic_error_0x01() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x01)\n        revert(0, 0x24)\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_0x21() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x21)\n        revert(0, 0x24)\n    }\n\n    function panic_error_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() {\n        revert(0, 0)\n    }\n\n    function revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function shift_right_1_unsigned(value) -> newValue {\n        newValue :=\n\n        shr(1, value)\n\n    }\n\n    function store_literal_in_memory_2063d17e40f52e2680483996eebc5eb14841a31f35c049e2b83eef96cc3ab1c2(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomness: faulty randomi\")\n\n        mstore(add(memPtr, 32), \"ze\")\n\n    }\n\n    function store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomness: already initia\")\n\n        mstore(add(memPtr, 32), \"lized\")\n\n    }\n\n    function store_literal_in_memory_2ccb45f5bf081c7ce3a014d3becfd9889cc2ed630aa4db79533f91e96077c0ae(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomness: pending random\")\n\n        mstore(add(memPtr, 32), \"ize\")\n\n    }\n\n    function store_literal_in_memory_55f80fc360f2082a848e28d63f54a94763dc2b59c75e9fef1bf56b42af6f071b(memPtr) {\n\n        mstore(add(memPtr, 0), \"UsingWitnet: reward too low\")\n\n    }\n\n    function store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf(memPtr) {\n\n        mstore(add(memPtr, 0), \"Clonable: CREATE2 failed\")\n\n    }\n\n    function store_literal_in_memory_8c09ea17e2de3ad790d29399fa76d05d6700bd912e14021f467bb3897d40c692(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomness: not randomized\")\n\n    }\n\n    function store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e(memPtr) {\n\n        mstore(add(memPtr, 0), \"Clonable: CREATE failed\")\n\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    function validator_revert_t_bool(value) {\n        if iszero(eq(value, cleanup_t_bool(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_contract$_Clonable_$7948(value) {\n        if iszero(eq(value, cleanup_t_contract$_Clonable_$7948(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_enum$_QueryStatus_$4315(value) {\n        if iszero(lt(value, 4)) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint32(value) {\n        if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint64(value) {\n        if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint8(value) {\n        if iszero(eq(value, cleanup_t_uint8(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"257":[{"length":32,"start":1795},{"length":32,"start":3317},{"length":32,"start":3491},{"length":32,"start":4806},{"length":32,"start":5007},{"length":32,"start":5204},{"length":32,"start":5779},{"length":32,"start":5987},{"length":32,"start":6625},{"length":32,"start":6808}],"7850":[{"length":32,"start":2400},{"length":32,"start":2506},{"length":32,"start":3787},{"length":32,"start":4051},{"length":32,"start":5383},{"length":32,"start":5648}]},"linkReferences":{},"object":"6080604052600436106101095760003560e01c80639938fd0c11610095578063a60ee26811610064578063a60ee2681461038b578063daaa360c146103c8578063e35329f814610405578063e7d4a01614610435578063fb476cad1461047257610109565b80639938fd0c146102b85780639bc86fec146102e3578063a04daef014610320578063a3252f681461034b57610109565b806340b41daa116100dc57806340b41daa146101de578063439fab911461021b57806346d1d21a14610244578063699b328a1461026f5780637104ddb21461028d57610109565b806309ed46071461010e57806324cbbfc11461013957806336b651bb146101765780633b13e76e146101b3575b600080fd5b34801561011a57600080fd5b506101236104af565b6040516101309190612626565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b919061219c565b6104c7565b60405161016d91906127d8565b60405180910390f35b34801561018257600080fd5b5061019d600480360381019061019891906120ef565b61050d565b6040516101aa9190612794565b60405180910390f35b3480156101bf57600080fd5b506101c861055c565b6040516101d59190612677565b60405180910390f35b3480156101ea57600080fd5b50610205600480360381019061020091906120ef565b610580565b6040516102129190612794565b60405180910390f35b34801561022757600080fd5b50610242600480360381019061023d9190612003565b61061c565b005b34801561025057600080fd5b50610259610701565b604051610266919061265c565b60405180910390f35b610277610725565b6040516102849190612794565b60405180910390f35b34801561029957600080fd5b506102a261095e565b6040516102af919061251c565b60405180910390f35b3480156102c457600080fd5b506102cd610982565b6040516102da9190612794565b60405180910390f35b3480156102ef57600080fd5b5061030a600480360381019061030591906120ef565b610988565b60405161031791906125a5565b60405180910390f35b34801561032c57600080fd5b506103356109c6565b60405161034291906125a5565b60405180910390f35b34801561035757600080fd5b50610372600480360381019061036d91906120ef565b610a1d565b6040516103829493929190612560565b60405180910390f35b34801561039757600080fd5b506103b260048036038101906103ad91906120ef565b610a7e565b6040516103bf9190612794565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611fa9565b610a90565b6040516103fc9190612626565b60405180910390f35b61041f600480360381019061041a91906120ef565b610aab565b60405161042c9190612794565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190612149565b610b40565b60405161046991906127d8565b60405180910390f35b34801561047e57600080fd5b50610499600480360381019061049491906120ef565b610bc7565b6040516104a691906125c0565b60405180910390f35b60006104b9610ec6565b90506104c48161104f565b90565b60006105048484336104d886610bc7565b6040516020016104e9929190612537565b60405160208183030381529060405280519060200120610b40565b90509392505050565b600080821161051f5761051e612c52565b5b600060015490508083116105525761054d8360026000848152602001908152602001600020600101546111ed565b610554565b805b915050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156105fd576105f882600154611225565b610615565b60026000838152602001908152602001600020600201545b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a2906126b2565b60405180910390fd5b808060200190518101906106bf9190611f4f565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600043600154101561094a57600061075c60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16611274565b80935081925050506000600260004381526020019081526020016000209050818160030181905550338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600154905080826001018190555043600260008381526020019081526020016000206002018190555043600181905550803373ffffffffffffffffffffffffffffffffffffffff167faf291bb4e1767569c77502edb6ad1009e856f57c09f214886c6becc9836c20c08560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309bd5a606040518163ffffffff1660e01b815260040160206040518083038186803b15801561089957600080fd5b505afa1580156108ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108d19190611fd6565b6040516108df9291906127af565b60405180910390a334841015610942573373ffffffffffffffffffffffffffffffffffffffff166108fc85346109159190612a52565b9081150290604051600060405180830381858888f19350505050158015610940573d6000803e3d6000fd5b505b50505061095a565b61095343610aab565b905061095b565b5b90565b7f000000000000000000000000000000000000000000000000000000000000000081565b60015481565b60008060026000848152602001908152602001600020905060008160030154141580156109be57506109bd8160030154611377565b5b915050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6000806000806000600260008781526020019081526020016000209050806003015493508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1694508060010154925080600201549150509193509193565b6000610a8982611450565b9050919050565b6000610a9b82611502565b9050610aa68161104f565b919050565b6000806002600084815260200190815260200160002090506000816003015414610adf57610adc816003015461168e565b91505b34821015610b3a573373ffffffffffffffffffffffffffffffffffffffff166108fc8334610b0d9190612a52565b9081150290604051600060405180830381858888f19350505050158015610b38573d6000803e3d6000fd5b505b50919050565b600080610b4c856117f8565b60ff610b589190612a86565b905060006001826002610b6b91906128da565b610b759190612a52565b8486604051602001610b889291906125db565b6040516020818303038152906040528051906020012060001c1690508160ff168663ffffffff1682610bba91906129f8565b901c925050509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610c3f57610c3c82610580565b91505b6000600260008481526020019081526020016000206003015490506000811415610c9e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c9590612732565b60405180910390fd5b610ca781611377565b610ce6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cdd906126d2565b60405180910390fd5b6000610cf1826119d7565b90507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663a8604c1a826040518263ffffffff1660e01b8152600401610d4c9190612772565b60206040518083038186803b158015610d6457600080fd5b505afa158015610d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9c9190611f7c565b15610e53577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663cf62d115826040518263ffffffff1660e01b8152600401610dfa9190612772565b60206040518083038186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e4a9190611fd6565b92505050610ec1565b6000600260008681526020019081526020016000206002015490506000811415610eb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea990612692565b60405180910390fd5b610ebb81610bc7565b93505050505b919050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610fba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fb190612752565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309ed46076040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156110ba57600080fd5b505af11580156110ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110f2919061204c565b90508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b815260040161112d919061251c565b600060405180830381600087803b15801561114757600080fd5b505af115801561115b573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff1663439fab918260405160200161118c919061251c565b6040516020818303038152906040526040518263ffffffff1660e01b81526004016111b79190612604565b600060405180830381600087803b1580156111d157600080fd5b505af11580156111e5573d6000803e3d6000fd5b505050505050565b600081831161121b576112168360026000858152602001908152602001600020600101546111ed565b61121d565b815b905092915050565b6000818310156112545761124f836002600085815260200190815260200160002060010154611225565b61126c565b60026000838152602001908152602001600020600201545b905092915050565b60008061127f611a94565b9050348111156112c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112bb906126f2565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b281a7bd82856040518363ffffffff1660e01b815260040161131e9190612641565b6020604051808303818588803b15801561133757600080fd5b505af115801561134b573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611370919061211c565b9150915091565b60006002600381111561138d5761138c612cb0565b5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16636f07abcc846040518263ffffffff1660e01b81526004016113e69190612794565b60206040518083038186803b1580156113fe57600080fd5b505afa158015611412573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114369190612079565b600381111561144857611447612cb0565b5b149050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d2e87561836040518263ffffffff1660e01b81526004016114ab9190612794565b60206040518083038186803b1580156114c357600080fd5b505afa1580156114d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114fb919061211c565b9050919050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115ee90612712565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b6000807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16631dd27daf846040518263ffffffff1660e01b81526004016116ea9190612794565b60206040518083038186803b15801561170257600080fd5b505afa158015611716573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061173a919061211c565b90506000611746611a94565b905060008282111561176157828261175e9190612a52565b90505b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166366bfdc7582876040518363ffffffff1660e01b81526004016117bb9190612794565b6000604051808303818588803b1580156117d457600080fd5b505af11580156117e8573d6000803e3d6000fd5b5050505050809350505050919050565b600080604051806104000160405280600060ff168152602001600960ff168152602001600160ff168152602001600a60ff168152602001600d60ff168152602001601560ff168152602001600260ff168152602001601d60ff168152602001600b60ff168152602001600e60ff168152602001601060ff168152602001601260ff168152602001601660ff168152602001601960ff168152602001600360ff168152602001601e60ff168152602001600860ff168152602001600c60ff168152602001601460ff168152602001601c60ff168152602001600f60ff168152602001601160ff168152602001601860ff168152602001600760ff168152602001601360ff168152602001601b60ff168152602001601760ff168152602001600660ff168152602001601a60ff168152602001600560ff168152602001600460ff168152602001601f60ff16815250905060018363ffffffff16901c8317925060028363ffffffff16901c8317925060048363ffffffff16901c8317925060088363ffffffff16901c8317925060108363ffffffff16901c8317925080601b6307c4acdd8563ffffffff166119ab91906129f8565b63ffffffff16901c63ffffffff16602081106119ca576119c9612cdf565b5b6020020151915050919050565b6119df611b44565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d4da69ac836040518263ffffffff1660e01b8152600401611a389190612794565b60006040518083038186803b158015611a5057600080fd5b505afa158015611a64573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611a8d91906120a6565b9050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d2e875613a6040518263ffffffff1660e01b8152600401611aef9190612794565b60206040518083038186803b158015611b0757600080fd5b505afa158015611b1b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b3f919061211c565b905090565b6040518060400160405280600015158152602001611b60611b66565b81525090565b6040518060c00160405280611b79611bbf565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b604051806040016040528060608152602001600063ffffffff1681525090565b6000611bf2611bed84612818565b6127f3565b905082815260208101848484011115611c0e57611c0d612d4c565b5b611c19848285612bdf565b509392505050565b6000611c34611c2f84612818565b6127f3565b905082815260208101848484011115611c5057611c4f612d4c565b5b611c5b848285612bee565b509392505050565b600081519050611c7281612f0a565b92915050565b600081519050611c8781612f21565b92915050565b600081359050611c9c81612f38565b92915050565b600081519050611cb181612f38565b92915050565b600082601f830112611ccc57611ccb612d3d565b5b8135611cdc848260208601611bdf565b91505092915050565b600082601f830112611cfa57611cf9612d3d565b5b8151611d0a848260208601611c21565b91505092915050565b600081519050611d2281612f4f565b92915050565b600081519050611d3781612f66565b92915050565b600060408284031215611d5357611d52612d42565b5b611d5d60406127f3565b9050600082015167ffffffffffffffff811115611d7d57611d7c612d47565b5b611d8984828501611ce5565b6000830152506020611d9d84828501611f10565b60208301525092915050565b600060c08284031215611dbf57611dbe612d42565b5b611dc960c06127f3565b9050600082015167ffffffffffffffff811115611de957611de8612d47565b5b611df584828501611d3d565b6000830152506020611e0984828501611f3a565b6020830152506040611e1d84828501611f3a565b6040830152506060611e3184828501611f3a565b6060830152506080611e4584828501611f25565b60808301525060a0611e5984828501611f25565b60a08301525092915050565b600060408284031215611e7b57611e7a612d42565b5b611e8560406127f3565b90506000611e9584828501611c78565b600083015250602082015167ffffffffffffffff811115611eb957611eb8612d47565b5b611ec584828501611da9565b60208301525092915050565b600081359050611ee081612f76565b92915050565b600081519050611ef581612f76565b92915050565b600081359050611f0a81612f8d565b92915050565b600081519050611f1f81612f8d565b92915050565b600081519050611f3481612fa4565b92915050565b600081519050611f4981612fbb565b92915050565b600060208284031215611f6557611f64612d56565b5b6000611f7384828501611c63565b91505092915050565b600060208284031215611f9257611f91612d56565b5b6000611fa084828501611c78565b91505092915050565b600060208284031215611fbf57611fbe612d56565b5b6000611fcd84828501611c8d565b91505092915050565b600060208284031215611fec57611feb612d56565b5b6000611ffa84828501611ca2565b91505092915050565b60006020828403121561201957612018612d56565b5b600082013567ffffffffffffffff81111561203757612036612d51565b5b61204384828501611cb7565b91505092915050565b60006020828403121561206257612061612d56565b5b600061207084828501611d13565b91505092915050565b60006020828403121561208f5761208e612d56565b5b600061209d84828501611d28565b91505092915050565b6000602082840312156120bc576120bb612d56565b5b600082015167ffffffffffffffff8111156120da576120d9612d51565b5b6120e684828501611e65565b91505092915050565b60006020828403121561210557612104612d56565b5b600061211384828501611ed1565b91505092915050565b60006020828403121561213257612131612d56565b5b600061214084828501611ee6565b91505092915050565b60008060006060848603121561216257612161612d56565b5b600061217086828701611efb565b935050602061218186828701611ed1565b925050604061219286828701611c8d565b9150509250925092565b6000806000606084860312156121b5576121b4612d56565b5b60006121c386828701611efb565b93505060206121d486828701611ed1565b92505060406121e586828701611ed1565b9150509250925092565b6121f881612aba565b82525050565b61220781612ade565b82525050565b61221681612ade565b82525050565b61222581612aea565b82525050565b600061223682612849565b6122408185612854565b9350612250818560208601612bee565b61225981612d5b565b840191505092915050565b600061226f82612849565b6122798185612865565b9350612289818560208601612bee565b61229281612d5b565b840191505092915050565b6122a681612b61565b82525050565b6122b581612b73565b82525050565b6122c481612b85565b82525050565b6122d381612b97565b82525050565b60006122e6602283612876565b91506122f182612d79565b604082019050919050565b6000612309602583612876565b915061231482612dc8565b604082019050919050565b600061232c602383612876565b915061233782612e17565b604082019050919050565b600061234f601b83612876565b915061235a82612e66565b602082019050919050565b6000612372601883612876565b915061237d82612e8f565b602082019050919050565b6000612395602083612876565b91506123a082612eb8565b602082019050919050565b60006123b8601783612876565b91506123c382612ee1565b602082019050919050565b600060408301600083015184820360008601526123eb828261222b565b915050602083015161240060208601826124e0565b508091505092915050565b600060c083016000830151848203600086015261242882826123ce565b915050602083015161243d602086018261250d565b506040830151612450604086018261250d565b506060830151612463606086018261250d565b50608083015161247660808601826124fe565b5060a083015161248960a08601826124fe565b508091505092915050565b60006040830160008301516124ac60008601826121fe565b50602083015184820360208601526124c4828261240b565b9150508091505092915050565b6124da81612b26565b82525050565b6124e981612b30565b82525050565b6124f881612b30565b82525050565b61250781612b40565b82525050565b61251681612b54565b82525050565b600060208201905061253160008301846121ef565b92915050565b600060408201905061254c60008301856121ef565b612559602083018461221c565b9392505050565b600060808201905061257560008301876121ef565b61258260208301866124d1565b61258f60408301856124d1565b61259c60608301846124d1565b95945050505050565b60006020820190506125ba600083018461220d565b92915050565b60006020820190506125d5600083018461221c565b92915050565b60006040820190506125f0600083018561221c565b6125fd60208301846124d1565b9392505050565b6000602082019050818103600083015261261e8184612264565b905092915050565b600060208201905061263b600083018461229d565b92915050565b600060208201905061265660008301846122ac565b92915050565b600060208201905061267160008301846122bb565b92915050565b600060208201905061268c60008301846122ca565b92915050565b600060208201905081810360008301526126ab816122d9565b9050919050565b600060208201905081810360008301526126cb816122fc565b9050919050565b600060208201905081810360008301526126eb8161231f565b9050919050565b6000602082019050818103600083015261270b81612342565b9050919050565b6000602082019050818103600083015261272b81612365565b9050919050565b6000602082019050818103600083015261274b81612388565b9050919050565b6000602082019050818103600083015261276b816123ab565b9050919050565b6000602082019050818103600083015261278c8184612494565b905092915050565b60006020820190506127a960008301846124d1565b92915050565b60006040820190506127c460008301856124d1565b6127d1602083018461221c565b9392505050565b60006020820190506127ed60008301846124ef565b92915050565b60006127fd61280e565b90506128098282612c21565b919050565b6000604051905090565b600067ffffffffffffffff82111561283357612832612d0e565b5b61283c82612d5b565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000808291508390505b60018511156128d1578086048111156128ad576128ac612c81565b5b60018516156128bc5780820291505b80810290506128ca85612d6c565b9450612891565b94509492505050565b60006128e582612b26565b91506128f083612b54565b925061291d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612925565b905092915050565b60008261293557600190506129f1565b8161294357600090506129f1565b8160018114612959576002811461296357612992565b60019150506129f1565b60ff84111561297557612974612c81565b5b8360020a91508482111561298c5761298b612c81565b5b506129f1565b5060208310610133831016604e8410600b84101617156129c75782820a9050838111156129c2576129c1612c81565b5b6129f1565b6129d48484846001612887565b925090508184048111156129eb576129ea612c81565b5b81810290505b9392505050565b6000612a0382612b26565b9150612a0e83612b26565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612a4757612a46612c81565b5b828202905092915050565b6000612a5d82612b26565b9150612a6883612b26565b925082821015612a7b57612a7a612c81565b5b828203905092915050565b6000612a9182612b54565b9150612a9c83612b54565b925082821015612aaf57612aae612c81565b5b828203905092915050565b6000612ac582612b06565b9050919050565b6000612ad782612b06565b9050919050565b60008115159050919050565b6000819050919050565b6000612aff82612aba565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b6000612b6c82612ba9565b9050919050565b6000612b7e82612ba9565b9050919050565b6000612b9082612bbb565b9050919050565b6000612ba282612ba9565b9050919050565b6000612bb482612bcd565b9050919050565b6000612bc682612bcd565b9050919050565b6000612bd882612b06565b9050919050565b82818337600083830152505050565b60005b83811015612c0c578082015181840152602081019050612bf1565b83811115612c1b576000848401525b50505050565b612c2a82612d5b565b810181811067ffffffffffffffff82111715612c4957612c48612d0e565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f5769746e657452616e646f6d6e6573733a206661756c74792072616e646f6d6960008201527f7a65000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573733a20616c726561647920696e6974696160008201527f6c697a6564000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573733a2070656e64696e672072616e646f6d60008201527f697a650000000000000000000000000000000000000000000000000000000000602082015250565b7f5573696e675769746e65743a2072657761726420746f6f206c6f770000000000600082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e657452616e646f6d6e6573733a206e6f742072616e646f6d697a6564600082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b612f1381612acc565b8114612f1e57600080fd5b50565b612f2a81612ade565b8114612f3557600080fd5b50565b612f4181612aea565b8114612f4c57600080fd5b50565b612f5881612af4565b8114612f6357600080fd5b50565b60048110612f7357600080fd5b50565b612f7f81612b26565b8114612f8a57600080fd5b50565b612f9681612b30565b8114612fa157600080fd5b50565b612fad81612b40565b8114612fb857600080fd5b50565b612fc481612b54565b8114612fcf57600080fd5b5056fea2646970667358221220f4691b938720c3e8f10b1b6d4c19bdf6f673f6bcd601a4aee2842c50207e6baa64736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x109 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9938FD0C GT PUSH2 0x95 JUMPI DUP1 PUSH4 0xA60EE268 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0xA60EE268 EQ PUSH2 0x38B JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x3C8 JUMPI DUP1 PUSH4 0xE35329F8 EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0xE7D4A016 EQ PUSH2 0x435 JUMPI DUP1 PUSH4 0xFB476CAD EQ PUSH2 0x472 JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9938FD0C EQ PUSH2 0x2B8 JUMPI DUP1 PUSH4 0x9BC86FEC EQ PUSH2 0x2E3 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x320 JUMPI DUP1 PUSH4 0xA3252F68 EQ PUSH2 0x34B JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x40B41DAA GT PUSH2 0xDC JUMPI DUP1 PUSH4 0x40B41DAA EQ PUSH2 0x1DE JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x21B JUMPI DUP1 PUSH4 0x46D1D21A EQ PUSH2 0x244 JUMPI DUP1 PUSH4 0x699B328A EQ PUSH2 0x26F JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x28D JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x10E JUMPI DUP1 PUSH4 0x24CBBFC1 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x36B651BB EQ PUSH2 0x176 JUMPI DUP1 PUSH4 0x3B13E76E EQ PUSH2 0x1B3 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x11A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x123 PUSH2 0x4AF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x2626 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x145 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x160 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15B SWAP2 SWAP1 PUSH2 0x219C JUMP JUMPDEST PUSH2 0x4C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x16D SWAP2 SWAP1 PUSH2 0x27D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x182 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x19D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x198 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0x50D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C8 PUSH2 0x55C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1D5 SWAP2 SWAP1 PUSH2 0x2677 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x200 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0x580 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x212 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x227 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x242 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23D SWAP2 SWAP1 PUSH2 0x2003 JUMP JUMPDEST PUSH2 0x61C JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x250 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x259 PUSH2 0x701 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x266 SWAP2 SWAP1 PUSH2 0x265C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x277 PUSH2 0x725 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x284 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x299 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2A2 PUSH2 0x95E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AF SWAP2 SWAP1 PUSH2 0x251C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2CD PUSH2 0x982 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2DA SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x305 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0x988 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x317 SWAP2 SWAP1 PUSH2 0x25A5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x32C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x335 PUSH2 0x9C6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x342 SWAP2 SWAP1 PUSH2 0x25A5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x357 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x372 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x36D SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xA1D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x382 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2560 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x397 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3B2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3AD SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xA7E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3BF SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3EA SWAP2 SWAP1 PUSH2 0x1FA9 JUMP JUMPDEST PUSH2 0xA90 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x2626 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41A SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xAAB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x42C SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x441 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x45C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x457 SWAP2 SWAP1 PUSH2 0x2149 JUMP JUMPDEST PUSH2 0xB40 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x469 SWAP2 SWAP1 PUSH2 0x27D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x47E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x499 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x494 SWAP2 SWAP1 PUSH2 0x20EF JUMP JUMPDEST PUSH2 0xBC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A6 SWAP2 SWAP1 PUSH2 0x25C0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x4B9 PUSH2 0xEC6 JUMP JUMPDEST SWAP1 POP PUSH2 0x4C4 DUP2 PUSH2 0x104F JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP5 DUP5 CALLER PUSH2 0x4D8 DUP7 PUSH2 0xBC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4E9 SWAP3 SWAP2 SWAP1 PUSH2 0x2537 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH2 0xB40 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x51F JUMPI PUSH2 0x51E PUSH2 0x2C52 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP4 GT PUSH2 0x552 JUMPI PUSH2 0x54D DUP4 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x11ED JUMP JUMPDEST PUSH2 0x554 JUMP JUMPDEST DUP1 JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x5FD JUMPI PUSH2 0x5F8 DUP3 PUSH1 0x1 SLOAD PUSH2 0x1225 JUMP JUMPDEST PUSH2 0x615 JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6AB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A2 SWAP1 PUSH2 0x26B2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x6BF SWAP2 SWAP1 PUSH2 0x1F4F JUMP JUMPDEST 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 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 NUMBER PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x94A JUMPI PUSH1 0x0 PUSH2 0x75C PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x1274 JUMP JUMPDEST DUP1 SWAP4 POP DUP2 SWAP3 POP POP POP PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 NUMBER DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP2 DUP2 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP3 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x1 DUP2 SWAP1 SSTORE POP DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xAF291BB4E1767569C77502EDB6AD1009E856F57C09F214886C6BECC9836C20C0 DUP6 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9BD5A60 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 0x899 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8AD 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 0x8D1 SWAP2 SWAP1 PUSH2 0x1FD6 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8DF SWAP3 SWAP2 SWAP1 PUSH2 0x27AF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 CALLVALUE DUP5 LT ISZERO PUSH2 0x942 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP6 CALLVALUE PUSH2 0x915 SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x940 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST POP POP POP PUSH2 0x95A JUMP JUMPDEST PUSH2 0x953 NUMBER PUSH2 0xAAB JUMP JUMPDEST SWAP1 POP PUSH2 0x95B JUMP JUMPDEST JUMPDEST SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x3 ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x9BE JUMPI POP PUSH2 0x9BD DUP2 PUSH1 0x3 ADD SLOAD PUSH2 0x1377 JUMP JUMPDEST JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x3 ADD SLOAD SWAP4 POP DUP1 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP5 POP DUP1 PUSH1 0x1 ADD SLOAD SWAP3 POP DUP1 PUSH1 0x2 ADD SLOAD SWAP2 POP POP SWAP2 SWAP4 POP SWAP2 SWAP4 JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA89 DUP3 PUSH2 0x1450 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA9B DUP3 PUSH2 0x1502 JUMP JUMPDEST SWAP1 POP PUSH2 0xAA6 DUP2 PUSH2 0x104F JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x3 ADD SLOAD EQ PUSH2 0xADF JUMPI PUSH2 0xADC DUP2 PUSH1 0x3 ADD SLOAD PUSH2 0x168E JUMP JUMPDEST SWAP2 POP JUMPDEST CALLVALUE DUP3 LT ISZERO PUSH2 0xB3A JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP4 CALLVALUE PUSH2 0xB0D SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0xB38 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB4C DUP6 PUSH2 0x17F8 JUMP JUMPDEST PUSH1 0xFF PUSH2 0xB58 SWAP2 SWAP1 PUSH2 0x2A86 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x2 PUSH2 0xB6B SWAP2 SWAP1 PUSH2 0x28DA JUMP JUMPDEST PUSH2 0xB75 SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST DUP5 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB88 SWAP3 SWAP2 SWAP1 PUSH2 0x25DB 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 0x0 SHR AND SWAP1 POP DUP2 PUSH1 0xFF AND DUP7 PUSH4 0xFFFFFFFF AND DUP3 PUSH2 0xBBA SWAP2 SWAP1 PUSH2 0x29F8 JUMP JUMPDEST SWAP1 SHR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC3F JUMPI PUSH2 0xC3C DUP3 PUSH2 0x580 JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0xC9E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC95 SWAP1 PUSH2 0x2732 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCA7 DUP2 PUSH2 0x1377 JUMP JUMPDEST PUSH2 0xCE6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCDD SWAP1 PUSH2 0x26D2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xCF1 DUP3 PUSH2 0x19D7 JUMP JUMPDEST SWAP1 POP PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA8604C1A DUP3 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD4C SWAP2 SWAP1 PUSH2 0x2772 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xD64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xD78 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 0xD9C SWAP2 SWAP1 PUSH2 0x1F7C JUMP JUMPDEST ISZERO PUSH2 0xE53 JUMPI PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xCF62D115 DUP3 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDFA SWAP2 SWAP1 PUSH2 0x2772 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xE26 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 0xE4A SWAP2 SWAP1 PUSH2 0x1FD6 JUMP JUMPDEST SWAP3 POP POP POP PUSH2 0xEC1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0xEB2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEA9 SWAP1 PUSH2 0x2692 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xEBB DUP2 PUSH2 0xBC7 JUMP JUMPDEST SWAP4 POP POP POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xFBA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFB1 SWAP1 PUSH2 0x2752 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9ED4607 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x10BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x10CE 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 0x10F2 SWAP2 SWAP1 PUSH2 0x204C JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x112D SWAP2 SWAP1 PUSH2 0x251C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1147 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x115B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x118C SWAP2 SWAP1 PUSH2 0x251C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11B7 SWAP2 SWAP1 PUSH2 0x2604 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x11D1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x11E5 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 GT PUSH2 0x121B JUMPI PUSH2 0x1216 DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x11ED JUMP JUMPDEST PUSH2 0x121D JUMP JUMPDEST DUP2 JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 LT ISZERO PUSH2 0x1254 JUMPI PUSH2 0x124F DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x1225 JUMP JUMPDEST PUSH2 0x126C JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x127F PUSH2 0x1A94 JUMP JUMPDEST SWAP1 POP CALLVALUE DUP2 GT ISZERO PUSH2 0x12C4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12BB SWAP1 PUSH2 0x26F2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xB281A7BD DUP3 DUP6 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x131E SWAP2 SWAP1 PUSH2 0x2641 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1337 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x134B JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP 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 0x1370 SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP2 POP SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x138D JUMPI PUSH2 0x138C PUSH2 0x2CB0 JUMP JUMPDEST JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x6F07ABCC DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13E6 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x13FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1412 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 0x1436 SWAP2 SWAP1 PUSH2 0x2079 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1448 JUMPI PUSH2 0x1447 PUSH2 0x2CB0 JUMP JUMPDEST JUMPDEST EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD2E87561 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14AB SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x14C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x14D7 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 0x14FB SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x15F7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15EE SWAP1 PUSH2 0x2712 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x1DD27DAF DUP5 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16EA SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1702 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1716 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 0x173A SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1746 PUSH2 0x1A94 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x1761 JUMPI DUP3 DUP3 PUSH2 0x175E SWAP2 SWAP1 PUSH2 0x2A52 JUMP JUMPDEST SWAP1 POP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x66BFDC75 DUP3 DUP8 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17BB SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x17D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x17E8 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP DUP1 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD DUP1 PUSH2 0x400 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xD PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x15 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1D PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xE PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x10 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x12 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x16 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x19 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1E PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x14 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1C PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xF PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x11 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x18 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x13 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1B PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x17 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1A PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1F PUSH1 0xFF AND DUP2 MSTORE POP SWAP1 POP PUSH1 0x1 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x2 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x4 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x8 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x10 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP DUP1 PUSH1 0x1B PUSH4 0x7C4ACDD DUP6 PUSH4 0xFFFFFFFF AND PUSH2 0x19AB SWAP2 SWAP1 PUSH2 0x29F8 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND SWAP1 SHR PUSH4 0xFFFFFFFF AND PUSH1 0x20 DUP2 LT PUSH2 0x19CA JUMPI PUSH2 0x19C9 PUSH2 0x2CDF JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x19DF PUSH2 0x1B44 JUMP JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD4DA69AC DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A38 SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1A50 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1A64 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 0x1A8D SWAP2 SWAP1 PUSH2 0x20A6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xD2E87561 GASPRICE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AEF SWAP2 SWAP1 PUSH2 0x2794 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1B07 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1B1B 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 0x1B3F SWAP2 SWAP1 PUSH2 0x211C JUMP JUMPDEST SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x1B60 PUSH2 0x1B66 JUMP JUMPDEST DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x1B79 PUSH2 0x1BBF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1BF2 PUSH2 0x1BED DUP5 PUSH2 0x2818 JUMP JUMPDEST PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C0E JUMPI PUSH2 0x1C0D PUSH2 0x2D4C JUMP JUMPDEST JUMPDEST PUSH2 0x1C19 DUP5 DUP3 DUP6 PUSH2 0x2BDF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C34 PUSH2 0x1C2F DUP5 PUSH2 0x2818 JUMP JUMPDEST PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1C50 JUMPI PUSH2 0x1C4F PUSH2 0x2D4C JUMP JUMPDEST JUMPDEST PUSH2 0x1C5B DUP5 DUP3 DUP6 PUSH2 0x2BEE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C72 DUP2 PUSH2 0x2F0A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1C87 DUP2 PUSH2 0x2F21 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1C9C DUP2 PUSH2 0x2F38 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1CB1 DUP2 PUSH2 0x2F38 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1CCC JUMPI PUSH2 0x1CCB PUSH2 0x2D3D JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1CDC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1BDF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1CFA JUMPI PUSH2 0x1CF9 PUSH2 0x2D3D JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x1D0A DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1C21 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1D22 DUP2 PUSH2 0x2F4F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1D37 DUP2 PUSH2 0x2F66 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D53 JUMPI PUSH2 0x1D52 PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST PUSH2 0x1D5D PUSH1 0x40 PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D7D JUMPI PUSH2 0x1D7C PUSH2 0x2D47 JUMP JUMPDEST JUMPDEST PUSH2 0x1D89 DUP5 DUP3 DUP6 ADD PUSH2 0x1CE5 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1D9D DUP5 DUP3 DUP6 ADD PUSH2 0x1F10 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1DBF JUMPI PUSH2 0x1DBE PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST PUSH2 0x1DC9 PUSH1 0xC0 PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DE9 JUMPI PUSH2 0x1DE8 PUSH2 0x2D47 JUMP JUMPDEST JUMPDEST PUSH2 0x1DF5 DUP5 DUP3 DUP6 ADD PUSH2 0x1D3D JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1E09 DUP5 DUP3 DUP6 ADD PUSH2 0x1F3A JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x1E1D DUP5 DUP3 DUP6 ADD PUSH2 0x1F3A JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1E31 DUP5 DUP3 DUP6 ADD PUSH2 0x1F3A JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x1E45 DUP5 DUP3 DUP6 ADD PUSH2 0x1F25 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x1E59 DUP5 DUP3 DUP6 ADD PUSH2 0x1F25 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1E7B JUMPI PUSH2 0x1E7A PUSH2 0x2D42 JUMP JUMPDEST JUMPDEST PUSH2 0x1E85 PUSH1 0x40 PUSH2 0x27F3 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x1E95 DUP5 DUP3 DUP6 ADD PUSH2 0x1C78 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1EB9 JUMPI PUSH2 0x1EB8 PUSH2 0x2D47 JUMP JUMPDEST JUMPDEST PUSH2 0x1EC5 DUP5 DUP3 DUP6 ADD PUSH2 0x1DA9 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1EE0 DUP2 PUSH2 0x2F76 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1EF5 DUP2 PUSH2 0x2F76 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1F0A DUP2 PUSH2 0x2F8D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F1F DUP2 PUSH2 0x2F8D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F34 DUP2 PUSH2 0x2FA4 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1F49 DUP2 PUSH2 0x2FBB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1F65 JUMPI PUSH2 0x1F64 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1F73 DUP5 DUP3 DUP6 ADD PUSH2 0x1C63 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1F92 JUMPI PUSH2 0x1F91 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FA0 DUP5 DUP3 DUP6 ADD PUSH2 0x1C78 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1FBF JUMPI PUSH2 0x1FBE PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FCD DUP5 DUP3 DUP6 ADD PUSH2 0x1C8D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1FEC JUMPI PUSH2 0x1FEB PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1FFA DUP5 DUP3 DUP6 ADD PUSH2 0x1CA2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2019 JUMPI PUSH2 0x2018 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2037 JUMPI PUSH2 0x2036 PUSH2 0x2D51 JUMP JUMPDEST JUMPDEST PUSH2 0x2043 DUP5 DUP3 DUP6 ADD PUSH2 0x1CB7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2062 JUMPI PUSH2 0x2061 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2070 DUP5 DUP3 DUP6 ADD PUSH2 0x1D13 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x208F JUMPI PUSH2 0x208E PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x209D DUP5 DUP3 DUP6 ADD PUSH2 0x1D28 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20BC JUMPI PUSH2 0x20BB PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x20DA JUMPI PUSH2 0x20D9 PUSH2 0x2D51 JUMP JUMPDEST JUMPDEST PUSH2 0x20E6 DUP5 DUP3 DUP6 ADD PUSH2 0x1E65 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2105 JUMPI PUSH2 0x2104 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2113 DUP5 DUP3 DUP6 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2132 JUMPI PUSH2 0x2131 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2140 DUP5 DUP3 DUP6 ADD PUSH2 0x1EE6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2162 JUMPI PUSH2 0x2161 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2170 DUP7 DUP3 DUP8 ADD PUSH2 0x1EFB JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2181 DUP7 DUP3 DUP8 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2192 DUP7 DUP3 DUP8 ADD PUSH2 0x1C8D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x21B5 JUMPI PUSH2 0x21B4 PUSH2 0x2D56 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x21C3 DUP7 DUP3 DUP8 ADD PUSH2 0x1EFB JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x21D4 DUP7 DUP3 DUP8 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x21E5 DUP7 DUP3 DUP8 ADD PUSH2 0x1ED1 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x21F8 DUP2 PUSH2 0x2ABA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2207 DUP2 PUSH2 0x2ADE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2216 DUP2 PUSH2 0x2ADE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2225 DUP2 PUSH2 0x2AEA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2236 DUP3 PUSH2 0x2849 JUMP JUMPDEST PUSH2 0x2240 DUP2 DUP6 PUSH2 0x2854 JUMP JUMPDEST SWAP4 POP PUSH2 0x2250 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BEE JUMP JUMPDEST PUSH2 0x2259 DUP2 PUSH2 0x2D5B JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x226F DUP3 PUSH2 0x2849 JUMP JUMPDEST PUSH2 0x2279 DUP2 DUP6 PUSH2 0x2865 JUMP JUMPDEST SWAP4 POP PUSH2 0x2289 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2BEE JUMP JUMPDEST PUSH2 0x2292 DUP2 PUSH2 0x2D5B JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x22A6 DUP2 PUSH2 0x2B61 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x22B5 DUP2 PUSH2 0x2B73 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x22C4 DUP2 PUSH2 0x2B85 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x22D3 DUP2 PUSH2 0x2B97 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22E6 PUSH1 0x22 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x22F1 DUP3 PUSH2 0x2D79 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2309 PUSH1 0x25 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x2314 DUP3 PUSH2 0x2DC8 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x232C PUSH1 0x23 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x2337 DUP3 PUSH2 0x2E17 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x234F PUSH1 0x1B DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x235A DUP3 PUSH2 0x2E66 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2372 PUSH1 0x18 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x237D DUP3 PUSH2 0x2E8F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2395 PUSH1 0x20 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x23A0 DUP3 PUSH2 0x2EB8 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23B8 PUSH1 0x17 DUP4 PUSH2 0x2876 JUMP JUMPDEST SWAP2 POP PUSH2 0x23C3 DUP3 PUSH2 0x2EE1 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x23EB DUP3 DUP3 PUSH2 0x222B JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x2400 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x24E0 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x2428 DUP3 DUP3 PUSH2 0x23CE JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x243D PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x250D JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x2450 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x250D JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x2463 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x250D JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x2476 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x24FE JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x2489 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x24FE JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x24AC PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x21FE JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x24C4 DUP3 DUP3 PUSH2 0x240B JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x24DA DUP2 PUSH2 0x2B26 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24E9 DUP2 PUSH2 0x2B30 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24F8 DUP2 PUSH2 0x2B30 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2507 DUP2 PUSH2 0x2B40 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2516 DUP2 PUSH2 0x2B54 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2531 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x21EF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x254C PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x21EF JUMP JUMPDEST PUSH2 0x2559 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x221C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x2575 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x21EF JUMP JUMPDEST PUSH2 0x2582 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x24D1 JUMP JUMPDEST PUSH2 0x258F PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x24D1 JUMP JUMPDEST PUSH2 0x259C PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x24D1 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25BA PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x220D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25D5 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x221C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x25F0 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x221C JUMP JUMPDEST PUSH2 0x25FD PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x24D1 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 0x261E DUP2 DUP5 PUSH2 0x2264 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x263B PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x229D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2656 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x22AC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2671 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x22BB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x268C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x22CA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x26AB DUP2 PUSH2 0x22D9 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 0x26CB DUP2 PUSH2 0x22FC 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 0x26EB DUP2 PUSH2 0x231F 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 0x270B DUP2 PUSH2 0x2342 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 0x272B DUP2 PUSH2 0x2365 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 0x274B DUP2 PUSH2 0x2388 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 0x276B DUP2 PUSH2 0x23AB 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 0x278C DUP2 DUP5 PUSH2 0x2494 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27A9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24D1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x27C4 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x24D1 JUMP JUMPDEST PUSH2 0x27D1 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x221C JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x27ED PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x24EF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x27FD PUSH2 0x280E JUMP JUMPDEST SWAP1 POP PUSH2 0x2809 DUP3 DUP3 PUSH2 0x2C21 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 0x2833 JUMPI PUSH2 0x2832 PUSH2 0x2D0E JUMP JUMPDEST JUMPDEST PUSH2 0x283C DUP3 PUSH2 0x2D5B 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 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 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x28D1 JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x28AD JUMPI PUSH2 0x28AC PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x28BC JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x28CA DUP6 PUSH2 0x2D6C JUMP JUMPDEST SWAP5 POP PUSH2 0x2891 JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28E5 DUP3 PUSH2 0x2B26 JUMP JUMPDEST SWAP2 POP PUSH2 0x28F0 DUP4 PUSH2 0x2B54 JUMP JUMPDEST SWAP3 POP PUSH2 0x291D PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x2925 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x2935 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x29F1 JUMP JUMPDEST DUP2 PUSH2 0x2943 JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x29F1 JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x2959 JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x2963 JUMPI PUSH2 0x2992 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x2975 JUMPI PUSH2 0x2974 PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x298C JUMPI PUSH2 0x298B PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST POP PUSH2 0x29F1 JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x29C7 JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x29C2 JUMPI PUSH2 0x29C1 PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST PUSH2 0x29F1 JUMP JUMPDEST PUSH2 0x29D4 DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x2887 JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x29EB JUMPI PUSH2 0x29EA PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A03 DUP3 PUSH2 0x2B26 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A0E DUP4 PUSH2 0x2B26 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2A47 JUMPI PUSH2 0x2A46 PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A5D DUP3 PUSH2 0x2B26 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A68 DUP4 PUSH2 0x2B26 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2A7B JUMPI PUSH2 0x2A7A PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A91 DUP3 PUSH2 0x2B54 JUMP JUMPDEST SWAP2 POP PUSH2 0x2A9C DUP4 PUSH2 0x2B54 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2AAF JUMPI PUSH2 0x2AAE PUSH2 0x2C81 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AC5 DUP3 PUSH2 0x2B06 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AD7 DUP3 PUSH2 0x2B06 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 PUSH2 0x2AFF DUP3 PUSH2 0x2ABA JUMP JUMPDEST 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B6C DUP3 PUSH2 0x2BA9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B7E DUP3 PUSH2 0x2BA9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B90 DUP3 PUSH2 0x2BBB JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BA2 DUP3 PUSH2 0x2BA9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BB4 DUP3 PUSH2 0x2BCD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BC6 DUP3 PUSH2 0x2BCD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BD8 DUP3 PUSH2 0x2B06 JUMP JUMPDEST 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 0x2C0C JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x2BF1 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2C1B JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x2C2A DUP3 PUSH2 0x2D5B JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2C49 JUMPI PUSH2 0x2C48 PUSH2 0x2D0E JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A206661756C74792072616E646F6D69 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7A65000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A20616C726561647920696E69746961 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C697A6564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A2070656E64696E672072616E646F6D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x697A650000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5573696E675769746E65743A2072657761726420746F6F206C6F770000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A206E6F742072616E646F6D697A6564 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x2F13 DUP2 PUSH2 0x2ACC JUMP JUMPDEST DUP2 EQ PUSH2 0x2F1E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F2A DUP2 PUSH2 0x2ADE JUMP JUMPDEST DUP2 EQ PUSH2 0x2F35 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F41 DUP2 PUSH2 0x2AEA JUMP JUMPDEST DUP2 EQ PUSH2 0x2F4C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F58 DUP2 PUSH2 0x2AF4 JUMP JUMPDEST DUP2 EQ PUSH2 0x2F63 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x4 DUP2 LT PUSH2 0x2F73 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F7F DUP2 PUSH2 0x2B26 JUMP JUMPDEST DUP2 EQ PUSH2 0x2F8A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2F96 DUP2 PUSH2 0x2B30 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2FAD DUP2 PUSH2 0x2B40 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2FC4 DUP2 PUSH2 0x2B54 JUMP JUMPDEST DUP2 EQ PUSH2 0x2FCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DELEGATECALL PUSH10 0x1B938720C3E8F10B1B6D 0x4C NOT 0xBD 0xF6 0xF6 PUSH20 0xF6BCD601A4AEE2842C50207E6BAA64736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"362:14356:10:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11169:176;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6666:382;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5195:396;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;466:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4584:355;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12264:362;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;341:42:8;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8478:1226:10;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;310:45:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;526:44:10;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5796:314;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;522:134:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2157:442:10;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;1297:180;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11743:220;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10197:433;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7493;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3418:887;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11169:176;11243:21;11295:13;:11;:13::i;:::-;11280:28;;11318:20;11325:12;11318:6;:20::i;:::-;11169:176;:::o;6666:382::-;6793:6;6822:219;6842:6;6862;6941:10;6973:26;6992:6;6973:18;:26::i;:::-;6909:108;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6882:149;;;;;;6822:6;:219::i;:::-;6815:226;;6666:382;;;;;:::o;5195:396::-;5305:7;5344:1;5335:6;:10;5328:18;;;;:::i;:::-;;5356:15;5374:20;;5356:38;;5422:7;5413:6;:16;5412:162;;5517:57;5534:6;5542:12;:21;5555:7;5542:21;;;;;;;;;;;:31;;;5517:16;:57::i;:::-;5412:162;;;5445:7;5412:162;5404:180;;;5195:396;;;:::o;466:54::-;;;;;;;;;;;;:::o;4584:355::-;4694:7;4763:1;4726:39;;:12;:20;4739:6;4726:20;;;;;;;;;;;:25;;;;;;;;;;;;:39;;;;4725:197;;4876:46;4893:6;4901:20;;4876:16;:46::i;:::-;4725:197;;;4781:12;:20;4794:6;4781:20;;;;;;;;;;;:30;;;4725:197;4717:215;;4584:355;;;:::o;12264:362::-;12414:1;12370:46;;12378:23;;;;;;;;;;12370:46;;;12362:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;12559:9;12531:78;;;;;;;;;;;;:::i;:::-;12468:23;;:151;;;;;;;;;;;;;;;;;;12264:362;:::o;341:42:8:-;;;:::o;8478:1226:10:-;8566:18;8627:12;8604:20;;:35;8600:1098;;;8706:13;8758:43;8777:23;;;;;;;;;;8758:18;:43::i;:::-;8733:68;;;;;;;;8862:27;8892:12;:26;8905:12;8892:26;;;;;;;;;;;8862:56;;8954:8;8932:5;:19;;:30;;;;8989:10;8976:5;:10;;;:23;;;;;;;;;;;;;;;;;;9048:18;9069:20;;9048:41;;9121:10;9103:5;:15;;:28;;;;9182:12;9145;:24;9158:10;9145:24;;;;;;;;;;;:34;;:49;;;;9231:12;9208:20;:35;;;;9346:10;9318;9290:154;;;9374:8;9400:23;;;;;;;;;;:28;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9290:154;;;;;;;:::i;:::-;;;;;;;;9521:9;9508:10;:22;9504:113;;;9558:10;9550:28;;:52;9591:10;9579:9;:22;;;;:::i;:::-;9550:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9504:113;8641:986;;;8600:1098;;;9654:33;9674:12;9654:19;:33::i;:::-;9647:40;;;;8600:1098;8478:1226;;:::o;310:45:34:-;;;:::o;526:44:10:-;;;;:::o;5796:314::-;5896:4;5916:27;5946:12;:20;5959:6;5946:20;;;;;;;;;;;5916:50;;6020:1;5997:5;:19;;;:24;;:96;;;;;6042:51;6073:5;:19;;;6042:30;:51::i;:::-;5997:96;5976:127;;;5796:314;;;:::o;522:134:34:-;577:4;635;618:21;;626:4;618:21;;;;597:52;;522:134;:::o;2157:442:10:-;2276:13;2303:11;2328:18;2360;2403:27;2433:12;:20;2446:6;2433:20;;;;;;;;;;;2403:50;;2469:5;:19;;;2463:25;;2506:5;:10;;;;;;;;;;;;2498:18;;2539:5;:15;;;2526:28;;2577:5;:15;;;2564:28;;2393:206;2157:442;;;;;:::o;1297:180::-;1408:7;1438:32;1460:9;1438:21;:32::i;:::-;1431:39;;1297:180;;;:::o;11743:220::-;11843:21;11895:31;11920:5;11895:24;:31::i;:::-;11880:46;;11936:20;11943:12;11936:6;:20::i;:::-;11743:220;;;:::o;10197:433::-;10307:18;10341:27;10371:12;:20;10384:6;10371:20;;;;;;;;;;;10341:50;;10428:1;10405:5;:19;;;:24;10401:109;;10458:41;10479:5;:19;;;10458:20;:41::i;:::-;10445:54;;10401:109;10536:9;10523:10;:22;10519:105;;;10569:10;10561:28;;:52;10602:10;10590:9;:22;;;;:::i;:::-;10561:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10519:105;10331:299;10197:433;;;:::o;7493:::-;7617:6;7639:15;7669:22;7684:6;7669:14;:22::i;:::-;7663:3;:28;;;;:::i;:::-;7639:53;;7702:15;7861:1;7849:9;7844:1;:14;;;;:::i;:::-;:18;;;;:::i;:::-;7787:5;7794:6;7776:25;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7745:74;;;;;;7720:113;;:143;7702:161;;7909:9;7887:31;;7898:6;7888:16;;:7;:16;;;;:::i;:::-;7887:31;;7873:46;;;;7493:433;;;;;:::o;3418:887::-;3524:7;3588:1;3551:39;;:12;:20;3564:6;3551:20;;;;;;;;;;;:25;;;;;;;;;;;;:39;;;3547:109;;;3615:30;3638:6;3615:22;:30::i;:::-;3606:39;;3547:109;3665:16;3684:12;:20;3697:6;3684:20;;;;;;;;;;;:34;;;3665:53;;3748:1;3736:8;:13;;3728:58;;;;;;;;;;;;:::i;:::-;;;;;;;;;3804:40;3835:8;3804:30;:40::i;:::-;3796:88;;;;;;;;;;;;:::i;:::-;;;;;;;;;3894:34;3931:27;3949:8;3931:17;:27::i;:::-;3894:64;;3972:6;:11;;;3984:13;3972:26;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3968:331;;;4021:6;:16;;;4038:13;4021:31;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4014:38;;;;;;3968:331;4083:27;4113:12;:20;4126:6;4113:20;;;;;;;;;;;:30;;;4083:60;;4188:1;4165:19;:24;;4157:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;4249:39;4268:19;4249:18;:39::i;:::-;4242:46;;;;;3418:887;;;;:::o;1102:870:34:-;1159:18;1193:13;1209:4;1193:20;;1295:4;1289:11;1383:66;1378:3;1371:79;1562:5;1556:4;1552:16;1545:4;1540:3;1536:14;1529:40;1661:66;1654:4;1649:3;1645:14;1638:90;1805:4;1800:3;1797:1;1790:20;1777:33;;1232:588;1875:1;1845:32;;1853:9;1845:32;;;;1837:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1955:9;1920:45;;1948:4;1920:45;;1927:10;1920:45;;;;;;;;;;;;1183:789;1102:870;:::o;12954:230:10:-;13009:16;13036:23;;;;;;;;;;;:29;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13009:59;;13086:8;13078:35;;;13114:10;13078:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13135:9;:20;;;13167:8;13156:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;13135:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12999:185;12954:230;:::o;14475:241::-;14558:7;14596;14586;:17;14585:114;;14641:58;14658:7;14667:12;:21;14680:7;14667:21;;;;;;;;;;;:31;;;14641:16;:58::i;:::-;14585:114;;;14619:7;14585:114;14577:132;;14475:241;;;;:::o;14022:267::-;14105:7;14144;14133;:18;;14132:140;;14214:58;14231:7;14240:12;:21;14253:7;14240:21;;;;;;;;;;;:31;;;14214:16;:58::i;:::-;14132:140;;;14168:12;:21;14181:7;14168:21;;;;;;;;;;;:31;;;14132:140;14124:158;;14022:267;;;;:::o;2908:351:8:-;3011:11;3024:15;3065:23;:21;:23::i;:::-;3055:33;;3130:9;3119:7;:20;;3098:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;3208:6;:18;;;3234:7;3243:8;3208:44;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3202:50;;2908:351;;;:::o;1558:199::-;1666:4;1723:27;1693:57;;;;;;;;:::i;:::-;;:6;:21;;;1715:3;1693:26;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:57;;;;;;;;:::i;:::-;;;1686:64;;1558:199;;;:::o;2013:174::-;2118:7;2148:6;:21;;;2170:9;2148:32;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2141:39;;2013:174;;;:::o;2520:840:34:-;2603:18;2637:13;2653:4;2637:20;;2739:4;2733:11;2769:66;2764:3;2757:79;2948:5;2942:4;2938:16;2931:4;2926:3;2922:14;2915:40;3047:66;3040:4;3035:3;3031:14;3024:90;3199:5;3193:4;3188:3;3185:1;3177:28;3164:41;;2676:539;3262:1;3232:32;;3240:9;3232:32;;;;3224:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;3343:9;3308:45;;3336:4;3308:45;;3315:10;3308:45;;;;;;;;;;;;2627:733;2520:840;;;:::o;3581:500:8:-;3674:7;3697:22;3722:6;:24;;;3747:3;3722:29;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3697:54;;3769:18;3790:23;:21;:23::i;:::-;3769:44;;3823:19;3873:14;3860:10;:27;3856:101;;;3931:14;3918:10;:27;;;;:::i;:::-;3903:43;;3856:101;3966:6;:20;;;3994:11;4007:3;3966:45;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4063:11;4056:18;;;;;3581:500;;;:::o;13301:537:10:-;13375:5;13396:29;:228;;;;;;;;13446:1;13396:228;;;;;;13449:1;13396:228;;;;;;13452:1;13396:228;;;;;;13455:2;13396:228;;;;;;13459:2;13396:228;;;;;;13463:2;13396:228;;;;;;13467:1;13396:228;;;;;;13470:2;13396:228;;;;;;13490:2;13396:228;;;;;;13494:2;13396:228;;;;;;13498:2;13396:228;;;;;;13502:2;13396:228;;;;;;13506:2;13396:228;;;;;;13510:2;13396:228;;;;;;13514:1;13396:228;;;;;;13517:2;13396:228;;;;;;13537:1;13396:228;;;;;;13540:2;13396:228;;;;;;13544:2;13396:228;;;;;;13548:2;13396:228;;;;;;13552:2;13396:228;;;;;;13556:2;13396:228;;;;;;13560:2;13396:228;;;;;;13564:1;13396:228;;;;;;13583:2;13396:228;;;;;;13587:2;13396:228;;;;;;13591:2;13396:228;;;;;;13595:1;13396:228;;;;;;13598:2;13396:228;;;;;;13602:1;13396:228;;;;;;13605:1;13396:228;;;;;;13608:2;13396:228;;;;;;;13646:1;13640:2;:7;;;;13634:13;;;;13669:1;13663:2;:7;;;;13657:13;;;;13692:1;13686:2;:7;;;;13680:13;;;;13715:1;13709:2;:7;;;;13703:13;;;;13738:2;13732;:8;;;;13726:14;;;;13757:12;13819:2;13803:10;13790:2;:24;;;;;;:::i;:::-;13783:38;;;;13757:74;;;;;;;;;:::i;:::-;;;;;;13750:81;;;13301:537;;;:::o;4317:175:8:-;4412:20;;:::i;:::-;4455:6;:25;;;4481:3;4455:30;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4448:37;;4317:175;;;:::o;2402:159::-;2490:7;2520:6;:21;;;2542:11;2520:34;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2513:41;;2402:159;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;423:419::-;511:5;536:65;552:48;593:6;552:48;:::i;:::-;536:65;:::i;:::-;527:74;;624:6;617:5;610:21;662:4;655:5;651:16;700:3;691:6;686:3;682:16;679:25;676:112;;;707:79;;:::i;:::-;676:112;797:39;829:6;824:3;819;797:39;:::i;:::-;517:325;423:419;;;;;:::o;848:159::-;913:5;944:6;938:13;929:22;;960:41;995:5;960:41;:::i;:::-;848:159;;;;:::o;1013:137::-;1067:5;1098:6;1092:13;1083:22;;1114:30;1138:5;1114:30;:::i;:::-;1013:137;;;;:::o;1156:139::-;1202:5;1240:6;1227:20;1218:29;;1256:33;1283:5;1256:33;:::i;:::-;1156:139;;;;:::o;1301:143::-;1358:5;1389:6;1383:13;1374:22;;1405:33;1432:5;1405:33;:::i;:::-;1301:143;;;;:::o;1463:338::-;1518:5;1567:3;1560:4;1552:6;1548:17;1544:27;1534:122;;1575:79;;:::i;:::-;1534:122;1692:6;1679:20;1717:78;1791:3;1783:6;1776:4;1768:6;1764:17;1717:78;:::i;:::-;1708:87;;1524:277;1463:338;;;;:::o;1820:353::-;1886:5;1935:3;1928:4;1920:6;1916:17;1912:27;1902:122;;1943:79;;:::i;:::-;1902:122;2053:6;2047:13;2078:89;2163:3;2155:6;2148:4;2140:6;2136:17;2078:89;:::i;:::-;2069:98;;1892:281;1820:353;;;;:::o;2179:177::-;2253:5;2284:6;2278:13;2269:22;;2300:50;2344:5;2300:50;:::i;:::-;2179:177;;;;:::o;2362:175::-;2435:5;2466:6;2460:13;2451:22;;2482:49;2525:5;2482:49;:::i;:::-;2362:175;;;;:::o;2571:769::-;2655:5;2699:4;2687:9;2682:3;2678:19;2674:30;2671:117;;;2707:79;;:::i;:::-;2671:117;2806:21;2822:4;2806:21;:::i;:::-;2797:30;;2907:1;2896:9;2892:17;2886:24;2937:18;2929:6;2926:30;2923:117;;;2959:79;;:::i;:::-;2923:117;3079:69;3144:3;3135:6;3124:9;3120:22;3079:69;:::i;:::-;3072:4;3065:5;3061:16;3054:95;2837:323;3221:2;3262:59;3317:3;3308:6;3297:9;3293:22;3262:59;:::i;:::-;3255:4;3248:5;3244:16;3237:85;3170:163;2571:769;;;;:::o;3372:1492::-;3454:5;3498:4;3486:9;3481:3;3477:19;3473:30;3470:117;;;3506:79;;:::i;:::-;3470:117;3605:21;3621:4;3605:21;:::i;:::-;3596:30;;3708:1;3697:9;3693:17;3687:24;3738:18;3730:6;3727:30;3724:117;;;3760:79;;:::i;:::-;3724:117;3880:84;3960:3;3951:6;3940:9;3936:22;3880:84;:::i;:::-;3873:4;3866:5;3862:16;3855:110;3636:340;4042:2;4083:58;4137:3;4128:6;4117:9;4113:22;4083:58;:::i;:::-;4076:4;4069:5;4065:16;4058:84;3986:167;4217:2;4258:58;4312:3;4303:6;4292:9;4288:22;4258:58;:::i;:::-;4251:4;4244:5;4240:16;4233:84;4163:165;4404:2;4445:58;4499:3;4490:6;4479:9;4475:22;4445:58;:::i;:::-;4438:4;4431:5;4427:16;4420:84;4338:177;4573:3;4615:59;4670:3;4661:6;4650:9;4646:22;4615:59;:::i;:::-;4608:4;4601:5;4597:16;4590:85;4525:161;4744:3;4786:59;4841:3;4832:6;4821:9;4817:22;4786:59;:::i;:::-;4779:4;4772:5;4768:16;4761:85;4696:161;3372:1492;;;;:::o;4898:782::-;4982:5;5026:4;5014:9;5009:3;5005:19;5001:30;4998:117;;;5034:79;;:::i;:::-;4998:117;5133:21;5149:4;5133:21;:::i;:::-;5124:30;;5216:1;5256:57;5309:3;5300:6;5289:9;5285:22;5256:57;:::i;:::-;5249:4;5242:5;5238:16;5231:83;5164:161;5406:2;5395:9;5391:18;5385:25;5437:18;5429:6;5426:30;5423:117;;;5459:79;;:::i;:::-;5423:117;5579:82;5657:3;5648:6;5637:9;5633:22;5579:82;:::i;:::-;5572:4;5565:5;5561:16;5554:108;5335:338;4898:782;;;;:::o;5686:139::-;5732:5;5770:6;5757:20;5748:29;;5786:33;5813:5;5786:33;:::i;:::-;5686:139;;;;:::o;5831:143::-;5888:5;5919:6;5913:13;5904:22;;5935:33;5962:5;5935:33;:::i;:::-;5831:143;;;;:::o;5980:137::-;6025:5;6063:6;6050:20;6041:29;;6079:32;6105:5;6079:32;:::i;:::-;5980:137;;;;:::o;6123:141::-;6179:5;6210:6;6204:13;6195:22;;6226:32;6252:5;6226:32;:::i;:::-;6123:141;;;;:::o;6270:::-;6326:5;6357:6;6351:13;6342:22;;6373:32;6399:5;6373:32;:::i;:::-;6270:141;;;;:::o;6417:139::-;6472:5;6503:6;6497:13;6488:22;;6519:31;6544:5;6519:31;:::i;:::-;6417:139;;;;:::o;6562:367::-;6640:6;6689:2;6677:9;6668:7;6664:23;6660:32;6657:119;;;6695:79;;:::i;:::-;6657:119;6815:1;6840:72;6904:7;6895:6;6884:9;6880:22;6840:72;:::i;:::-;6830:82;;6786:136;6562:367;;;;:::o;6935:345::-;7002:6;7051:2;7039:9;7030:7;7026:23;7022:32;7019:119;;;7057:79;;:::i;:::-;7019:119;7177:1;7202:61;7255:7;7246:6;7235:9;7231:22;7202:61;:::i;:::-;7192:71;;7148:125;6935:345;;;;:::o;7286:329::-;7345:6;7394:2;7382:9;7373:7;7369:23;7365:32;7362:119;;;7400:79;;:::i;:::-;7362:119;7520:1;7545:53;7590:7;7581:6;7570:9;7566:22;7545:53;:::i;:::-;7535:63;;7491:117;7286:329;;;;:::o;7621:351::-;7691:6;7740:2;7728:9;7719:7;7715:23;7711:32;7708:119;;;7746:79;;:::i;:::-;7708:119;7866:1;7891:64;7947:7;7938:6;7927:9;7923:22;7891:64;:::i;:::-;7881:74;;7837:128;7621:351;;;;:::o;7978:507::-;8046:6;8095:2;8083:9;8074:7;8070:23;8066:32;8063:119;;;8101:79;;:::i;:::-;8063:119;8249:1;8238:9;8234:17;8221:31;8279:18;8271:6;8268:30;8265:117;;;8301:79;;:::i;:::-;8265:117;8406:62;8460:7;8451:6;8440:9;8436:22;8406:62;:::i;:::-;8396:72;;8192:286;7978:507;;;;:::o;8491:385::-;8578:6;8627:2;8615:9;8606:7;8602:23;8598:32;8595:119;;;8633:79;;:::i;:::-;8595:119;8753:1;8778:81;8851:7;8842:6;8831:9;8827:22;8778:81;:::i;:::-;8768:91;;8724:145;8491:385;;;;:::o;8882:383::-;8968:6;9017:2;9005:9;8996:7;8992:23;8988:32;8985:119;;;9023:79;;:::i;:::-;8985:119;9143:1;9168:80;9240:7;9231:6;9220:9;9216:22;9168:80;:::i;:::-;9158:90;;9114:144;8882:383;;;;:::o;9271:552::-;9365:6;9414:2;9402:9;9393:7;9389:23;9385:32;9382:119;;;9420:79;;:::i;:::-;9382:119;9561:1;9550:9;9546:17;9540:24;9591:18;9583:6;9580:30;9577:117;;;9613:79;;:::i;:::-;9577:117;9718:88;9798:7;9789:6;9778:9;9774:22;9718:88;:::i;:::-;9708:98;;9511:305;9271:552;;;;:::o;9829:329::-;9888:6;9937:2;9925:9;9916:7;9912:23;9908:32;9905:119;;;9943:79;;:::i;:::-;9905:119;10063:1;10088:53;10133:7;10124:6;10113:9;10109:22;10088:53;:::i;:::-;10078:63;;10034:117;9829:329;;;;:::o;10164:351::-;10234:6;10283:2;10271:9;10262:7;10258:23;10254:32;10251:119;;;10289:79;;:::i;:::-;10251:119;10409:1;10434:64;10490:7;10481:6;10470:9;10466:22;10434:64;:::i;:::-;10424:74;;10380:128;10164:351;;;;:::o;10521:617::-;10597:6;10605;10613;10662:2;10650:9;10641:7;10637:23;10633:32;10630:119;;;10668:79;;:::i;:::-;10630:119;10788:1;10813:52;10857:7;10848:6;10837:9;10833:22;10813:52;:::i;:::-;10803:62;;10759:116;10914:2;10940:53;10985:7;10976:6;10965:9;10961:22;10940:53;:::i;:::-;10930:63;;10885:118;11042:2;11068:53;11113:7;11104:6;11093:9;11089:22;11068:53;:::i;:::-;11058:63;;11013:118;10521:617;;;;;:::o;11144:::-;11220:6;11228;11236;11285:2;11273:9;11264:7;11260:23;11256:32;11253:119;;;11291:79;;:::i;:::-;11253:119;11411:1;11436:52;11480:7;11471:6;11460:9;11456:22;11436:52;:::i;:::-;11426:62;;11382:116;11537:2;11563:53;11608:7;11599:6;11588:9;11584:22;11563:53;:::i;:::-;11553:63;;11508:118;11665:2;11691:53;11736:7;11727:6;11716:9;11712:22;11691:53;:::i;:::-;11681:63;;11636:118;11144:617;;;;;:::o;11767:118::-;11854:24;11872:5;11854:24;:::i;:::-;11849:3;11842:37;11767:118;;:::o;11891:99::-;11962:21;11977:5;11962:21;:::i;:::-;11957:3;11950:34;11891:99;;:::o;11996:109::-;12077:21;12092:5;12077:21;:::i;:::-;12072:3;12065:34;11996:109;;:::o;12111:118::-;12198:24;12216:5;12198:24;:::i;:::-;12193:3;12186:37;12111:118;;:::o;12235:340::-;12311:3;12339:38;12371:5;12339:38;:::i;:::-;12393:60;12446:6;12441:3;12393:60;:::i;:::-;12386:67;;12462:52;12507:6;12502:3;12495:4;12488:5;12484:16;12462:52;:::i;:::-;12539:29;12561:6;12539:29;:::i;:::-;12534:3;12530:39;12523:46;;12315:260;12235:340;;;;:::o;12581:360::-;12667:3;12695:38;12727:5;12695:38;:::i;:::-;12749:70;12812:6;12807:3;12749:70;:::i;:::-;12742:77;;12828:52;12873:6;12868:3;12861:4;12854:5;12850:16;12828:52;:::i;:::-;12905:29;12927:6;12905:29;:::i;:::-;12900:3;12896:39;12889:46;;12671:270;12581:360;;;;:::o;12947:165::-;13051:54;13099:5;13051:54;:::i;:::-;13046:3;13039:67;12947:165;;:::o;13118:177::-;13228:60;13282:5;13228:60;:::i;:::-;13223:3;13216:73;13118:177;;:::o;13301:199::-;13422:71;13487:5;13422:71;:::i;:::-;13417:3;13410:84;13301:199;;:::o;13506:195::-;13625:69;13688:5;13625:69;:::i;:::-;13620:3;13613:82;13506:195;;:::o;13707:366::-;13849:3;13870:67;13934:2;13929:3;13870:67;:::i;:::-;13863:74;;13946:93;14035:3;13946:93;:::i;:::-;14064:2;14059:3;14055:12;14048:19;;13707:366;;;:::o;14079:::-;14221:3;14242:67;14306:2;14301:3;14242:67;:::i;:::-;14235:74;;14318:93;14407:3;14318:93;:::i;:::-;14436:2;14431:3;14427:12;14420:19;;14079:366;;;:::o;14451:::-;14593:3;14614:67;14678:2;14673:3;14614:67;:::i;:::-;14607:74;;14690:93;14779:3;14690:93;:::i;:::-;14808:2;14803:3;14799:12;14792:19;;14451:366;;;:::o;14823:::-;14965:3;14986:67;15050:2;15045:3;14986:67;:::i;:::-;14979:74;;15062:93;15151:3;15062:93;:::i;:::-;15180:2;15175:3;15171:12;15164:19;;14823:366;;;:::o;15195:::-;15337:3;15358:67;15422:2;15417:3;15358:67;:::i;:::-;15351:74;;15434:93;15523:3;15434:93;:::i;:::-;15552:2;15547:3;15543:12;15536:19;;15195:366;;;:::o;15567:::-;15709:3;15730:67;15794:2;15789:3;15730:67;:::i;:::-;15723:74;;15806:93;15895:3;15806:93;:::i;:::-;15924:2;15919:3;15915:12;15908:19;;15567:366;;;:::o;15939:::-;16081:3;16102:67;16166:2;16161:3;16102:67;:::i;:::-;16095:74;;16178:93;16267:3;16178:93;:::i;:::-;16296:2;16291:3;16287:12;16280:19;;15939:366;;;:::o;16363:592::-;16470:3;16506:4;16501:3;16497:14;16593:4;16586:5;16582:16;16576:23;16646:3;16640:4;16636:14;16629:4;16624:3;16620:14;16613:38;16672:71;16738:4;16724:12;16672:71;:::i;:::-;16664:79;;16521:233;16838:4;16831:5;16827:16;16821:23;16857:61;16912:4;16907:3;16903:14;16889:12;16857:61;:::i;:::-;16764:164;16945:4;16938:11;;16475:480;16363:592;;;;:::o;17009:1327::-;17112:3;17148:4;17143:3;17139:14;17237:4;17230:5;17226:16;17220:23;17290:3;17284:4;17280:14;17273:4;17268:3;17264:14;17257:38;17316:101;17412:4;17398:12;17316:101;:::i;:::-;17308:109;;17163:265;17517:4;17510:5;17506:16;17500:23;17536:59;17589:4;17584:3;17580:14;17566:12;17536:59;:::i;:::-;17438:167;17692:4;17685:5;17681:16;17675:23;17711:59;17764:4;17759:3;17755:14;17741:12;17711:59;:::i;:::-;17615:165;17879:4;17872:5;17868:16;17862:23;17898:59;17951:4;17946:3;17942:14;17928:12;17898:59;:::i;:::-;17790:177;18048:4;18041:5;18037:16;18031:23;18067:61;18122:4;18117:3;18113:14;18099:12;18067:61;:::i;:::-;17977:161;18219:4;18212:5;18208:16;18202:23;18238:61;18293:4;18288:3;18284:14;18270:12;18238:61;:::i;:::-;18148:161;18326:4;18319:11;;17117:1219;17009:1327;;;;:::o;18394:626::-;18511:3;18547:4;18542:3;18538:14;18637:4;18630:5;18626:16;18620:23;18656:57;18707:4;18702:3;18698:14;18684:12;18656:57;:::i;:::-;18562:161;18806:4;18799:5;18795:16;18789:23;18859:3;18853:4;18849:14;18842:4;18837:3;18833:14;18826:38;18885:97;18977:4;18963:12;18885:97;:::i;:::-;18877:105;;18733:260;19010:4;19003:11;;18516:504;18394:626;;;;:::o;19026:118::-;19113:24;19131:5;19113:24;:::i;:::-;19108:3;19101:37;19026:118;;:::o;19150:105::-;19225:23;19242:5;19225:23;:::i;:::-;19220:3;19213:36;19150:105;;:::o;19261:115::-;19346:23;19363:5;19346:23;:::i;:::-;19341:3;19334:36;19261:115;;:::o;19382:105::-;19457:23;19474:5;19457:23;:::i;:::-;19452:3;19445:36;19382:105;;:::o;19493:102::-;19566:22;19582:5;19566:22;:::i;:::-;19561:3;19554:35;19493:102;;:::o;19601:222::-;19694:4;19732:2;19721:9;19717:18;19709:26;;19745:71;19813:1;19802:9;19798:17;19789:6;19745:71;:::i;:::-;19601:222;;;;:::o;19829:332::-;19950:4;19988:2;19977:9;19973:18;19965:26;;20001:71;20069:1;20058:9;20054:17;20045:6;20001:71;:::i;:::-;20082:72;20150:2;20139:9;20135:18;20126:6;20082:72;:::i;:::-;19829:332;;;;;:::o;20167:553::-;20344:4;20382:3;20371:9;20367:19;20359:27;;20396:71;20464:1;20453:9;20449:17;20440:6;20396:71;:::i;:::-;20477:72;20545:2;20534:9;20530:18;20521:6;20477:72;:::i;:::-;20559;20627:2;20616:9;20612:18;20603:6;20559:72;:::i;:::-;20641;20709:2;20698:9;20694:18;20685:6;20641:72;:::i;:::-;20167:553;;;;;;;:::o;20726:210::-;20813:4;20851:2;20840:9;20836:18;20828:26;;20864:65;20926:1;20915:9;20911:17;20902:6;20864:65;:::i;:::-;20726:210;;;;:::o;20942:222::-;21035:4;21073:2;21062:9;21058:18;21050:26;;21086:71;21154:1;21143:9;21139:17;21130:6;21086:71;:::i;:::-;20942:222;;;;:::o;21170:332::-;21291:4;21329:2;21318:9;21314:18;21306:26;;21342:71;21410:1;21399:9;21395:17;21386:6;21342:71;:::i;:::-;21423:72;21491:2;21480:9;21476:18;21467:6;21423:72;:::i;:::-;21170:332;;;;;:::o;21508:309::-;21619:4;21657:2;21646:9;21642:18;21634:26;;21706:9;21700:4;21696:20;21692:1;21681:9;21677:17;21670:47;21734:76;21805:4;21796:6;21734:76;:::i;:::-;21726:84;;21508:309;;;;:::o;21823:256::-;21933:4;21971:2;21960:9;21956:18;21948:26;;21984:88;22069:1;22058:9;22054:17;22045:6;21984:88;:::i;:::-;21823:256;;;;:::o;22085:268::-;22201:4;22239:2;22228:9;22224:18;22216:26;;22252:94;22343:1;22332:9;22328:17;22319:6;22252:94;:::i;:::-;22085:268;;;;:::o;22359:290::-;22486:4;22524:2;22513:9;22509:18;22501:26;;22537:105;22639:1;22628:9;22624:17;22615:6;22537:105;:::i;:::-;22359:290;;;;:::o;22655:286::-;22780:4;22818:2;22807:9;22803:18;22795:26;;22831:103;22931:1;22920:9;22916:17;22907:6;22831:103;:::i;:::-;22655:286;;;;:::o;22947:419::-;23113:4;23151:2;23140:9;23136:18;23128:26;;23200:9;23194:4;23190:20;23186:1;23175:9;23171:17;23164:47;23228:131;23354:4;23228:131;:::i;:::-;23220:139;;22947:419;;;:::o;23372:::-;23538:4;23576:2;23565:9;23561:18;23553:26;;23625:9;23619:4;23615:20;23611:1;23600:9;23596:17;23589:47;23653:131;23779:4;23653:131;:::i;:::-;23645:139;;23372:419;;;:::o;23797:::-;23963:4;24001:2;23990:9;23986:18;23978:26;;24050:9;24044:4;24040:20;24036:1;24025:9;24021:17;24014:47;24078:131;24204:4;24078:131;:::i;:::-;24070:139;;23797:419;;;:::o;24222:::-;24388:4;24426:2;24415:9;24411:18;24403:26;;24475:9;24469:4;24465:20;24461:1;24450:9;24446:17;24439:47;24503:131;24629:4;24503:131;:::i;:::-;24495:139;;24222:419;;;:::o;24647:::-;24813:4;24851:2;24840:9;24836:18;24828:26;;24900:9;24894:4;24890:20;24886:1;24875:9;24871:17;24864:47;24928:131;25054:4;24928:131;:::i;:::-;24920:139;;24647:419;;;:::o;25072:::-;25238:4;25276:2;25265:9;25261:18;25253:26;;25325:9;25319:4;25315:20;25311:1;25300:9;25296:17;25289:47;25353:131;25479:4;25353:131;:::i;:::-;25345:139;;25072:419;;;:::o;25497:::-;25663:4;25701:2;25690:9;25686:18;25678:26;;25750:9;25744:4;25740:20;25736:1;25725:9;25721:17;25714:47;25778:131;25904:4;25778:131;:::i;:::-;25770:139;;25497:419;;;:::o;25922:369::-;26063:4;26101:2;26090:9;26086:18;26078:26;;26150:9;26144:4;26140:20;26136:1;26125:9;26121:17;26114:47;26178:106;26279:4;26270:6;26178:106;:::i;:::-;26170:114;;25922:369;;;;:::o;26297:222::-;26390:4;26428:2;26417:9;26413:18;26405:26;;26441:71;26509:1;26498:9;26494:17;26485:6;26441:71;:::i;:::-;26297:222;;;;:::o;26525:332::-;26646:4;26684:2;26673:9;26669:18;26661:26;;26697:71;26765:1;26754:9;26750:17;26741:6;26697:71;:::i;:::-;26778:72;26846:2;26835:9;26831:18;26822:6;26778:72;:::i;:::-;26525:332;;;;;:::o;26863:218::-;26954:4;26992:2;26981:9;26977:18;26969:26;;27005:69;27071:1;27060:9;27056:17;27047:6;27005:69;:::i;:::-;26863:218;;;;:::o;27087:129::-;27121:6;27148:20;;:::i;:::-;27138:30;;27177:33;27205:4;27197:6;27177:33;:::i;:::-;27087:129;;;:::o;27222:75::-;27255:6;27288:2;27282:9;27272:19;;27222:75;:::o;27303:307::-;27364:4;27454:18;27446:6;27443:30;27440:56;;;27476:18;;:::i;:::-;27440:56;27514:29;27536:6;27514:29;:::i;:::-;27506:37;;27598:4;27592;27588:15;27580:23;;27303:307;;;:::o;27616:98::-;27667:6;27701:5;27695:12;27685:22;;27616:98;;;:::o;27720:158::-;27793:11;27827:6;27822:3;27815:19;27867:4;27862:3;27858:14;27843:29;;27720:158;;;;:::o;27884:168::-;27967:11;28001:6;27996:3;27989:19;28041:4;28036:3;28032:14;28017:29;;27884:168;;;;:::o;28058:169::-;28142:11;28176:6;28171:3;28164:19;28216:4;28211:3;28207:14;28192:29;;28058:169;;;;:::o;28233:848::-;28294:5;28301:4;28325:6;28316:15;;28349:5;28340:14;;28363:712;28384:1;28374:8;28371:15;28363:712;;;28479:4;28474:3;28470:14;28464:4;28461:24;28458:50;;;28488:18;;:::i;:::-;28458:50;28538:1;28528:8;28524:16;28521:451;;;28953:4;28946:5;28942:16;28933:25;;28521:451;29003:4;28997;28993:15;28985:23;;29033:32;29056:8;29033:32;:::i;:::-;29021:44;;28363:712;;;28233:848;;;;;;;:::o;29087:281::-;29145:5;29169:23;29187:4;29169:23;:::i;:::-;29161:31;;29213:25;29229:8;29213:25;:::i;:::-;29201:37;;29257:104;29294:66;29284:8;29278:4;29257:104;:::i;:::-;29248:113;;29087:281;;;;:::o;29374:1073::-;29428:5;29619:8;29609:40;;29640:1;29631:10;;29642:5;;29609:40;29668:4;29658:36;;29685:1;29676:10;;29687:5;;29658:36;29754:4;29802:1;29797:27;;;;29838:1;29833:191;;;;29747:277;;29797:27;29815:1;29806:10;;29817:5;;;29833:191;29878:3;29868:8;29865:17;29862:43;;;29885:18;;:::i;:::-;29862:43;29934:8;29931:1;29927:16;29918:25;;29969:3;29962:5;29959:14;29956:40;;;29976:18;;:::i;:::-;29956:40;30009:5;;;29747:277;;30133:2;30123:8;30120:16;30114:3;30108:4;30105:13;30101:36;30083:2;30073:8;30070:16;30065:2;30059:4;30056:12;30052:35;30036:111;30033:246;;;30189:8;30183:4;30179:19;30170:28;;30224:3;30217:5;30214:14;30211:40;;;30231:18;;:::i;:::-;30211:40;30264:5;;30033:246;30304:42;30342:3;30332:8;30326:4;30323:1;30304:42;:::i;:::-;30289:57;;;;30378:4;30373:3;30369:14;30362:5;30359:25;30356:51;;;30387:18;;:::i;:::-;30356:51;30436:4;30429:5;30425:16;30416:25;;29374:1073;;;;;;:::o;30453:348::-;30493:7;30516:20;30534:1;30516:20;:::i;:::-;30511:25;;30550:20;30568:1;30550:20;:::i;:::-;30545:25;;30738:1;30670:66;30666:74;30663:1;30660:81;30655:1;30648:9;30641:17;30637:105;30634:131;;;30745:18;;:::i;:::-;30634:131;30793:1;30790;30786:9;30775:20;;30453:348;;;;:::o;30807:191::-;30847:4;30867:20;30885:1;30867:20;:::i;:::-;30862:25;;30901:20;30919:1;30901:20;:::i;:::-;30896:25;;30940:1;30937;30934:8;30931:34;;;30945:18;;:::i;:::-;30931:34;30990:1;30987;30983:9;30975:17;;30807:191;;;;:::o;31004:185::-;31042:4;31062:18;31078:1;31062:18;:::i;:::-;31057:23;;31094:18;31110:1;31094:18;:::i;:::-;31089:23;;31131:1;31128;31125:8;31122:34;;;31136:18;;:::i;:::-;31122:34;31181:1;31178;31174:9;31166:17;;31004:185;;;;:::o;31195:96::-;31232:7;31261:24;31279:5;31261:24;:::i;:::-;31250:35;;31195:96;;;:::o;31297:104::-;31342:7;31371:24;31389:5;31371:24;:::i;:::-;31360:35;;31297:104;;;:::o;31407:90::-;31441:7;31484:5;31477:13;31470:21;31459:32;;31407:90;;;:::o;31503:77::-;31540:7;31569:5;31558:16;;31503:77;;;:::o;31586:113::-;31640:7;31669:24;31687:5;31669:24;:::i;:::-;31658:35;;31586:113;;;:::o;31705:126::-;31742:7;31782:42;31775:5;31771:54;31760:65;;31705:126;;;:::o;31837:77::-;31874:7;31903:5;31892:16;;31837:77;;;:::o;31920:93::-;31956:7;31996:10;31989:5;31985:22;31974:33;;31920:93;;;:::o;32019:101::-;32055:7;32095:18;32088:5;32084:30;32073:41;;32019:101;;;:::o;32126:86::-;32161:7;32201:4;32194:5;32190:16;32179:27;;32126:86;;;:::o;32218:143::-;32285:9;32318:37;32349:5;32318:37;:::i;:::-;32305:50;;32218:143;;;:::o;32367:149::-;32440:9;32473:37;32504:5;32473:37;:::i;:::-;32460:50;;32367:149;;;:::o;32522:168::-;32606:9;32639:45;32678:5;32639:45;:::i;:::-;32626:58;;32522:168;;;:::o;32696:158::-;32778:9;32811:37;32842:5;32811:37;:::i;:::-;32798:50;;32696:158;;;:::o;32860:126::-;32910:9;32943:37;32974:5;32943:37;:::i;:::-;32930:50;;32860:126;;;:::o;32992:134::-;33050:9;33083:37;33114:5;33083:37;:::i;:::-;33070:50;;32992:134;;;:::o;33132:113::-;33182:9;33215:24;33233:5;33215:24;:::i;:::-;33202:37;;33132:113;;;:::o;33251:154::-;33335:6;33330:3;33325;33312:30;33397:1;33388:6;33383:3;33379:16;33372:27;33251:154;;;:::o;33411:307::-;33479:1;33489:113;33503:6;33500:1;33497:13;33489:113;;;33588:1;33583:3;33579:11;33573:18;33569:1;33564:3;33560:11;33553:39;33525:2;33522:1;33518:10;33513:15;;33489:113;;;33620:6;33617:1;33614:13;33611:101;;;33700:1;33691:6;33686:3;33682:16;33675:27;33611:101;33460:258;33411:307;;;:::o;33724:281::-;33807:27;33829:4;33807:27;:::i;:::-;33799:6;33795:40;33937:6;33925:10;33922:22;33901:18;33889:10;33886:34;33883:62;33880:88;;;33948:18;;:::i;:::-;33880:88;33988:10;33984:2;33977:22;33767:238;33724:281;;:::o;34011:180::-;34059:77;34056:1;34049:88;34156:4;34153:1;34146:15;34180:4;34177:1;34170:15;34197:180;34245:77;34242:1;34235:88;34342:4;34339:1;34332:15;34366:4;34363:1;34356:15;34383:180;34431:77;34428:1;34421:88;34528:4;34525:1;34518:15;34552:4;34549:1;34542:15;34569:180;34617:77;34614:1;34607:88;34714:4;34711:1;34704:15;34738:4;34735:1;34728:15;34755:180;34803:77;34800:1;34793:88;34900:4;34897:1;34890:15;34924:4;34921:1;34914:15;34941:117;35050:1;35047;35040:12;35064:117;35173:1;35170;35163:12;35187:117;35296:1;35293;35286:12;35310:117;35419:1;35416;35409:12;35433:117;35542:1;35539;35532:12;35556:117;35665:1;35662;35655:12;35679:102;35720:6;35771:2;35767:7;35762:2;35755:5;35751:14;35747:28;35737:38;;35679:102;;;:::o;35787:::-;35829:8;35876:5;35873:1;35869:13;35848:34;;35787:102;;;:::o;35895:221::-;36035:34;36031:1;36023:6;36019:14;36012:58;36104:4;36099:2;36091:6;36087:15;36080:29;35895:221;:::o;36122:224::-;36262:34;36258:1;36250:6;36246:14;36239:58;36331:7;36326:2;36318:6;36314:15;36307:32;36122:224;:::o;36352:222::-;36492:34;36488:1;36480:6;36476:14;36469:58;36561:5;36556:2;36548:6;36544:15;36537:30;36352:222;:::o;36580:177::-;36720:29;36716:1;36708:6;36704:14;36697:53;36580:177;:::o;36763:174::-;36903:26;36899:1;36891:6;36887:14;36880:50;36763:174;:::o;36943:182::-;37083:34;37079:1;37071:6;37067:14;37060:58;36943:182;:::o;37131:173::-;37271:25;37267:1;37259:6;37255:14;37248:49;37131:173;:::o;37310:138::-;37391:32;37417:5;37391:32;:::i;:::-;37384:5;37381:43;37371:71;;37438:1;37435;37428:12;37371:71;37310:138;:::o;37454:116::-;37524:21;37539:5;37524:21;:::i;:::-;37517:5;37514:32;37504:60;;37560:1;37557;37550:12;37504:60;37454:116;:::o;37576:122::-;37649:24;37667:5;37649:24;:::i;:::-;37642:5;37639:35;37629:63;;37688:1;37685;37678:12;37629:63;37576:122;:::o;37704:156::-;37794:41;37829:5;37794:41;:::i;:::-;37787:5;37784:52;37774:80;;37850:1;37847;37840:12;37774:80;37704:156;:::o;37866:115::-;37955:1;37948:5;37945:12;37935:40;;37971:1;37968;37961:12;37935:40;37866:115;:::o;37987:122::-;38060:24;38078:5;38060:24;:::i;:::-;38053:5;38050:35;38040:63;;38099:1;38096;38089:12;38040:63;37987:122;:::o;38115:120::-;38187:23;38204:5;38187:23;:::i;:::-;38180:5;38177:34;38167:62;;38225:1;38222;38215:12;38167:62;38115:120;:::o;38241:::-;38313:23;38330:5;38313:23;:::i;:::-;38306:5;38303:34;38293:62;;38351:1;38348;38341:12;38293:62;38241:120;:::o;38367:118::-;38438:22;38454:5;38438:22;:::i;:::-;38431:5;38428:33;38418:61;;38475:1;38472;38465:12;38418:61;38367:118;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"2459200","executionCost":"infinite","totalCost":"infinite"},"external":{"clone()":"infinite","cloneDeterministic(bytes32)":"infinite","cloned()":"infinite","estimateRandomizeFee(uint256)":"infinite","getRandomizeData(uint256)":"infinite","getRandomnessAfter(uint256)":"infinite","getRandomnessNextBlock(uint256)":"infinite","getRandomnessPrevBlock(uint256)":"infinite","initialize(bytes)":"infinite","isRandomized(uint256)":"infinite","latestRandomizeBlock()":"2452","random(uint32,uint256,bytes32)":"infinite","random(uint32,uint256,uint256)":"infinite","randomize()":"infinite","self()":"infinite","upgradeRandomizeFee(uint256)":"infinite","witnet()":"infinite","witnetRandomnessRequest()":"2687"},"internal":{"_clone(contract Clonable)":"infinite","_msbDeBruijn32(uint32)":"infinite","_searchNextBlock(uint256,uint256)":"infinite","_searchPrevBlock(uint256,uint256)":"infinite"}},"methodIdentifiers":{"clone()":"09ed4607","cloneDeterministic(bytes32)":"daaa360c","cloned()":"a04daef0","estimateRandomizeFee(uint256)":"a60ee268","getRandomizeData(uint256)":"a3252f68","getRandomnessAfter(uint256)":"fb476cad","getRandomnessNextBlock(uint256)":"40b41daa","getRandomnessPrevBlock(uint256)":"36b651bb","initialize(bytes)":"439fab91","isRandomized(uint256)":"9bc86fec","latestRandomizeBlock()":"9938fd0c","random(uint32,uint256,bytes32)":"e7d4a016","random(uint32,uint256,uint256)":"24cbbfc1","randomize()":"699b328a","self()":"7104ddb2","upgradeRandomizeFee(uint256)":"e35329f8","witnet()":"46d1d21a","witnetRandomnessRequest()":"3b13e76e"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"contract WitnetRequestBoard\",\"name\":\"_wrb\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"self\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"clone\",\"type\":\"address\"}],\"name\":\"Cloned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"prevBlock\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"witnetQueryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"witnetRequestHash\",\"type\":\"bytes32\"}],\"name\":\"Randomized\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"clone\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_newInstance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_salt\",\"type\":\"bytes32\"}],\"name\":\"cloneDeterministic\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_newInstance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomizeData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_prevBlock\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nextBlock\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessAfter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessNextBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessPrevBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_initData\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"isRandomized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestRandomizeBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_seed\",\"type\":\"bytes32\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_usedFunds\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"self\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"upgradeRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_usedFunds\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnet\",\"outputs\":[{\"internalType\":\"contract WitnetRequestBoard\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnetRandomnessRequest\",\"outputs\":[{\"internalType\":\"contract WitnetRequestRandomness\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"clone()\":{\"details\":\"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`.\"},\"cloneDeterministic(bytes32)\":{\"details\":\"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address.\"},\"constructor\":{\"params\":{\"_wrb\":\"The WitnetRequestBoard immutable entrypoint address.\"}},\"getRandomizeData(uint256)\":{\"details\":\"Returns zero values if no randomness request was actually posted within a given block.\",\"params\":{\"_block\":\"Block number whose randomness request is being queried for.\"},\"returns\":{\"_from\":\"Address from which the latest randomness request was posted.\",\"_id\":\"Unique request identifier as provided by the WRB.\",\"_nextBlock\":\"Block number in which a randomness request got posted just after this one, 0 if none.\",\"_prevBlock\":\"Block number in which a randomness request got posted just before this one. 0 if none.\"}},\"getRandomnessAfter(uint256)\":{\"details\":\"Fails if:i.   no `randomize()` was not called in either the given block, or afterwards.ii.  a request posted in/after given block does exist, but no result has been provided yet.iii. all requests in/after the given block were solved with errors.\",\"params\":{\"_block\":\"Block number from which the search will start.\"}},\"getRandomnessNextBlock(uint256)\":{\"params\":{\"_block\":\"Block number from which the search will start.\"},\"returns\":{\"_0\":\"Number of the first block found after the given one, or `0` otherwise.\"}},\"getRandomnessPrevBlock(uint256)\":{\"params\":{\"_block\":\"Block number from which the search will start. Cannot be zero.\"},\"returns\":{\"_0\":\"First block found before the given one, or `0` otherwise.\"}},\"initialize(bytes)\":{\"details\":\"Initializes contract's storage context.\"},\"random(uint32,uint256,bytes32)\":{\"params\":{\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\",\"_seed\":\"Seed value used as entropy source.\"}},\"random(uint32,uint256,uint256)\":{\"details\":\"Fails under same conditions as `getRandomnessAfter(uint256)` may do.\",\"params\":{\"_block\":\"Block number from which the search will start.\",\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\"}},\"randomize()\":{\"returns\":{\"_usedFunds\":\"Amount of funds actually used from those provided by the tx sender.\"}},\"upgradeRandomizeFee(uint256)\":{\"returns\":{\"_usedFunds\":\"Amount of dunds actually used from those provided by the tx sender.\"}}},\"title\":\"WitnetRandomness: A trustless randomness generator and registry, based on the Witnet oracle. \",\"version\":1},\"userdoc\":{\"events\":{\"Randomized(address,uint256,uint256,bytes32)\":{\"notice\":\"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\"}},\"kind\":\"user\",\"methods\":{\"clone()\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage.\"},\"cloneDeterministic(bytes32)\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage.\"},\"cloned()\":{\"notice\":\"Tells whether this contract is a clone of another (i.e. `self()`)\"},\"constructor\":{\"notice\":\"Include an address to specify the immutable WitnetRequestBoard entrypoint address.\"},\"estimateRandomizeFee(uint256)\":{\"notice\":\"Returns amount of wei required to be paid as a fee when requesting randomization with a  transaction gas price as the one given.\"},\"getRandomizeData(uint256)\":{\"notice\":\"Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\"},\"getRandomnessAfter(uint256)\":{\"notice\":\"Retrieves the randomness generated upon solving a request that was posted within a given block, if any, or to the _first_ request posted after that block, otherwise. Should the intended  request happen to be finalized with errors on the Witnet oracle network side, this function  will recursively try to return randomness from the next non-faulty randomization request found  in storage, if any. \"},\"getRandomnessNextBlock(uint256)\":{\"notice\":\"Tells what is the number of the next block in which a randomization request was posted after the given one. \"},\"getRandomnessPrevBlock(uint256)\":{\"notice\":\"Gets previous block in which a randomness request was posted before the given one.\"},\"isRandomized(uint256)\":{\"notice\":\"Returns `true` only when the randomness request that got posted within given block was already reported back from the Witnet oracle, either successfully or with an error of any kind.\"},\"latestRandomizeBlock()\":{\"notice\":\"Returns latest block in which a randomness request got sucessfully posted to the WRB.\"},\"random(uint32,uint256,bytes32)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the given `_seed` as a source of entropy.\"},\"random(uint32,uint256,uint256)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \"},\"randomize()\":{\"notice\":\"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness.  Only one randomness request per block will be actually posted to the WRB. Should there  already be a posted request within current block, it will try to upgrade Witnet fee of current's  block randomness request according to current gas price. In both cases, all unused funds shall  be transfered back to the tx sender.\"},\"self()\":{\"notice\":\"Immutable contract address that actually attends all calls to this contract.\"},\"upgradeRandomizeFee(uint256)\":{\"notice\":\"Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it may be required in proportion to how much bigger the current tx gas price is with respect the  highest gas price that was paid in either previous fee upgrades, or when the given randomness  request was posted. All unused funds shall be transferred back to the tx sender.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol\":\"WitnetRandomness\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/UsingWitnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetRequestBoard.sol\\\";\\n\\n/// @title The UsingWitnet contract\\n/// @dev Witnet-aware contracts can inherit from this contract in order to interact with Witnet.\\n/// @author The Witnet Foundation.\\nabstract contract UsingWitnet {\\n\\n    WitnetRequestBoard public immutable witnet;\\n\\n    /// Include an address to specify the WitnetRequestBoard entry point address.\\n    /// @param _wrb The WitnetRequestBoard entry point address.\\n    constructor(WitnetRequestBoard _wrb)\\n    {\\n        require(address(_wrb) != address(0), \\\"UsingWitnet: zero address\\\");\\n        witnet = _wrb;\\n    }\\n\\n    /// Provides a convenient way for client contracts extending this to block the execution of the main logic of the\\n    /// contract until a particular request has been successfully solved and reported by Witnet.\\n    modifier witnetRequestSolved(uint256 _id) {\\n        require(\\n                _witnetCheckResultAvailability(_id),\\n                \\\"UsingWitnet: request not solved\\\"\\n            );\\n        _;\\n    }\\n\\n    /// Check if a data request has been solved and reported by Witnet.\\n    /// @dev Contracts depending on Witnet should not start their main business logic (e.g. receiving value from third.\\n    /// parties) before this method returns `true`.\\n    /// @param _id The unique identifier of a previously posted data request.\\n    /// @return A boolean telling if the request has been already resolved or not. Returns `false` also, if the result was deleted.\\n    function _witnetCheckResultAvailability(uint256 _id)\\n        internal view\\n        virtual\\n        returns (bool)\\n    {\\n        return witnet.getQueryStatus(_id) == Witnet.QueryStatus.Reported;\\n    }\\n\\n    /// Estimate the reward amount.\\n    /// @param _gasPrice The gas price for which we want to retrieve the estimation.\\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\\n    function _witnetEstimateReward(uint256 _gasPrice)\\n        internal view\\n        virtual\\n        returns (uint256)\\n    {\\n        return witnet.estimateReward(_gasPrice);\\n    }\\n\\n    /// Estimates the reward amount, considering current transaction gas price.\\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\\n    function _witnetEstimateReward()\\n        internal view\\n        virtual\\n        returns (uint256)\\n    {\\n        return witnet.estimateReward(tx.gasprice);\\n    }\\n\\n    /// Send a new request to the Witnet network with transaction value as a reward.\\n    /// @param _request An instance of `IWitnetRequest` contract.\\n    /// @return _id Sequential identifier for the request included in the WitnetRequestBoard.\\n    /// @return _reward Current reward amount escrowed by the WRB until a result gets reported.\\n    function _witnetPostRequest(IWitnetRequest _request)\\n        internal\\n        virtual\\n        returns (uint256 _id, uint256 _reward)\\n    {\\n        _reward = _witnetEstimateReward();\\n        require(\\n            _reward <= msg.value,\\n            \\\"UsingWitnet: reward too low\\\"\\n        );\\n        _id = witnet.postRequest{value: _reward}(_request);\\n    }\\n\\n    /// Upgrade the reward for a previously posted request.\\n    /// @dev Call to `upgradeReward` function in the WitnetRequestBoard contract.\\n    /// @param _id The unique identifier of a request that has been previously sent to the WitnetRequestBoard.\\n    /// @return Amount in which the reward has been increased.\\n    function _witnetUpgradeReward(uint256 _id)\\n        internal\\n        virtual\\n        returns (uint256)\\n    {\\n        uint256 _currentReward = witnet.readRequestReward(_id);        \\n        uint256 _newReward = _witnetEstimateReward();\\n        uint256 _fundsToAdd = 0;\\n        if (_newReward > _currentReward) {\\n            _fundsToAdd = (_newReward - _currentReward);\\n        }\\n        witnet.upgradeReward{value: _fundsToAdd}(_id); // Let Request.gasPrice be updated\\n        return _fundsToAdd;\\n    }\\n\\n    /// Read the Witnet-provided result to a previously posted request.\\n    /// @param _id The unique identifier of a request that was posted to Witnet.\\n    /// @return The result of the request as an instance of `Witnet.Result`.\\n    function _witnetReadResult(uint256 _id)\\n        internal view\\n        virtual\\n        returns (Witnet.Result memory)\\n    {\\n        return witnet.readResponseResult(_id);\\n    }\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @param _id The unique identifier of a previously posted request.\\n    /// @return The Witnet-provided result to the request.\\n    function _witnetDeleteQuery(uint256 _id)\\n        internal\\n        virtual\\n        returns (Witnet.Response memory)\\n    {\\n        return witnet.deleteQuery(_id);\\n    }\\n\\n}\\n\",\"keccak256\":\"0x197b4fcecea2958249928d85183e3c9e094bff8c2f4dab29ef13361683c576bd\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../UsingWitnet.sol\\\";\\nimport \\\"../interfaces/IWitnetRandomness.sol\\\";\\nimport \\\"../requests/WitnetRequestRandomness.sol\\\";\\n\\n/// @title WitnetRandomness: A trustless randomness generator and registry, based on the Witnet oracle. \\n/// @author Witnet Foundation.\\ncontract WitnetRandomness\\n    is\\n        IWitnetRandomness,\\n        UsingWitnet,\\n        Clonable\\n{\\n    WitnetRequestRandomness public witnetRandomnessRequest;\\n    uint256 public override latestRandomizeBlock;\\n\\n    mapping (uint256 => RandomizeData) internal __randomize_;\\n    struct RandomizeData {\\n        address from;\\n        uint256 prevBlock;\\n        uint256 nextBlock;\\n        uint256 witnetQueryId;\\n    }\\n\\n    /// Include an address to specify the immutable WitnetRequestBoard entrypoint address.\\n    /// @param _wrb The WitnetRequestBoard immutable entrypoint address.\\n    constructor(WitnetRequestBoard _wrb)\\n        UsingWitnet(_wrb)\\n    {\\n        witnetRandomnessRequest = new WitnetRequestRandomness();\\n        witnetRandomnessRequest.transferOwnership(msg.sender);\\n    }\\n\\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \\n    /// transaction gas price as the one given.\\n    function estimateRandomizeFee(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return _witnetEstimateReward(_gasPrice);\\n    }\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view\\n        virtual override\\n        returns (\\n            address _from,\\n            uint256 _id,\\n            uint256 _prevBlock,\\n            uint256 _nextBlock\\n        )\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        _id = _data.witnetQueryId;\\n        _from = _data.from;\\n        _prevBlock = _data.prevBlock;\\n        _nextBlock = _data.nextBlock;\\n    }\\n\\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \\n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \\n    /// will recursively try to return randomness from the next non-faulty randomization request found \\n    /// in storage, if any. \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\\n    /// @dev   iii. all requests in/after the given block were solved with errors.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block)\\n        public view\\n        virtual override\\n        returns (bytes32)\\n    {\\n        if (__randomize_[_block].from == address(0)) {\\n            _block = getRandomnessNextBlock(_block);\\n        }\\n        uint256 _queryId = __randomize_[_block].witnetQueryId;\\n        require(_queryId != 0, \\\"WitnetRandomness: not randomized\\\");\\n        require(_witnetCheckResultAvailability(_queryId), \\\"WitnetRandomness: pending randomize\\\");\\n        Witnet.Result memory _witnetResult = _witnetReadResult(_queryId);\\n        if (witnet.isOk(_witnetResult)) {\\n            return witnet.asBytes32(_witnetResult);\\n        } else {\\n            uint256 _nextRandomizeBlock = __randomize_[_block].nextBlock;\\n            require(_nextRandomizeBlock != 0, \\\"WitnetRandomness: faulty randomize\\\");\\n            return getRandomnessAfter(_nextRandomizeBlock);\\n        }\\n    }\\n\\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \\n    /// @param _block Block number from which the search will start.\\n    /// @return Number of the first block found after the given one, or `0` otherwise.\\n    function getRandomnessNextBlock(uint256 _block)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return ((__randomize_[_block].from != address(0))\\n            ? __randomize_[_block].nextBlock\\n            // start search from the latest block\\n            : _searchNextBlock(_block, latestRandomizeBlock)\\n        );\\n    }\\n\\n    /// Gets previous block in which a randomness request was posted before the given one.\\n    /// @param _block Block number from which the search will start. Cannot be zero.\\n    /// @return First block found before the given one, or `0` otherwise.\\n    function getRandomnessPrevBlock(uint256 _block)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        assert(_block > 0);\\n        uint256 _latest = latestRandomizeBlock;\\n        return ((_block > _latest)\\n            ? _latest\\n            // start search from the latest block\\n            : _searchPrevBlock(_block, __randomize_[_latest].prevBlock)\\n        );\\n    }\\n\\n    /// Returns `true` only when the randomness request that got posted within given block was already\\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\\n    function isRandomized(uint256 _block)\\n        public view\\n        virtual override\\n        returns (bool)\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        return (\\n            _data.witnetQueryId != 0 \\n                && _witnetCheckResultAvailability(_data.witnetQueryId)\\n        );\\n    }\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \\n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _block Block number from which the search will start.\\n    function random(uint32 _range, uint256 _nonce, uint256 _block)\\n        external view\\n        virtual override\\n        returns (uint32)\\n    {\\n        return random(\\n            _range,\\n            _nonce,\\n            keccak256(\\n                abi.encode(\\n                    msg.sender,\\n                    getRandomnessAfter(_block)\\n                )\\n            )\\n        );\\n    }\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _seed Seed value used as entropy source.\\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed)\\n        public pure\\n        virtual override\\n        returns (uint32)\\n    {\\n        uint8 _flagBits = uint8(255 - _msbDeBruijn32(_range));\\n        uint256 _number = uint256(\\n                keccak256(\\n                    abi.encode(_seed, _nonce)\\n                )\\n            ) & uint256(2 ** _flagBits - 1);\\n        return uint32((_number * _range) >> _flagBits);\\n    }\\n\\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \\n    /// Only one randomness request per block will be actually posted to the WRB. Should there \\n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \\n    /// block randomness request according to current gas price. In both cases, all unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize()\\n        external payable\\n        virtual override\\n        returns (uint256 _usedFunds)\\n    {\\n        if (latestRandomizeBlock < block.number) {\\n            // Post the Witnet Randomness request:\\n            uint _queryId;\\n            (_queryId, _usedFunds) = _witnetPostRequest(witnetRandomnessRequest);\\n            // Keep Randomize data in storage:\\n            RandomizeData storage _data = __randomize_[block.number];\\n            _data.witnetQueryId = _queryId;\\n            _data.from = msg.sender;\\n            // Update block links:\\n            uint256 _prevBlock = latestRandomizeBlock;\\n            _data.prevBlock = _prevBlock;\\n            __randomize_[_prevBlock].nextBlock = block.number;\\n            latestRandomizeBlock = block.number;\\n            // Throw event:\\n            emit Randomized(\\n                msg.sender,\\n                _prevBlock,\\n                _queryId,\\n                witnetRandomnessRequest.hash()\\n            );\\n            // Transfer back unused tx value:\\n            if (_usedFunds < msg.value) {\\n                payable(msg.sender).transfer(msg.value - _usedFunds);\\n            }\\n        } else {\\n            return upgradeRandomizeFee(block.number);\\n        }\\n    }\\n\\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \\n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \\n    /// request was posted. All unused funds shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256 _block)\\n        public payable\\n        virtual override\\n        returns (uint256 _usedFunds)\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        if (_data.witnetQueryId != 0) {\\n            _usedFunds = _witnetUpgradeReward(_data.witnetQueryId);\\n        }\\n        if (_usedFunds < msg.value) {\\n            payable(msg.sender).transfer(msg.value - _usedFunds);\\n        }\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    function clone()\\n        public\\n        virtual override\\n        returns (Clonable _newInstance)\\n    {\\n        _newInstance = super.clone();\\n        _clone(_newInstance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    function cloneDeterministic(bytes32 _salt)\\n        public\\n        virtual override\\n        returns (Clonable _newInstance)\\n    {\\n        _newInstance = super.cloneDeterministic(_salt);\\n        _clone(_newInstance);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\\n\\n    /// @dev Initializes contract's storage context.\\n    function initialize(bytes memory _initData)\\n        public\\n        virtual override\\n    {\\n        require(address(witnetRandomnessRequest) == address(0), \\\"WitnetRandomness: already initialized\\\");\\n        witnetRandomnessRequest = WitnetRequestRandomness(\\n            abi.decode(\\n                _initData,\\n                (address)\\n            )\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------\\n\\n    /// @dev Common steps for both deterministic and non-deterministic cloning.\\n    function _clone(Clonable _instance) internal {\\n        address _request = address(witnetRandomnessRequest.clone());\\n        Ownable(_request).transferOwnership(msg.sender);\\n        _instance.initialize(abi.encode(_request));\\n    }\\n\\n    /// @dev Returns index of the Most Significant Bit of the given number, applying De Bruijn O(1) algorithm.\\n    function _msbDeBruijn32(uint32 _v)\\n        internal pure\\n        returns (uint8)\\n    {\\n        uint8[32] memory _bitPosition = [\\n                0, 9, 1, 10, 13, 21, 2, 29,\\n                11, 14, 16, 18, 22, 25, 3, 30,\\n                8, 12, 20, 28, 15, 17, 24, 7,\\n                19, 27, 23, 6, 26, 5, 4, 31\\n            ];\\n        _v |= _v >> 1;\\n        _v |= _v >> 2;\\n        _v |= _v >> 4;\\n        _v |= _v >> 8;\\n        _v |= _v >> 16;\\n        return _bitPosition[\\n            uint32(_v * uint256(0x07c4acdd)) >> 27\\n        ];\\n    }\\n\\n    /// @dev Recursively searches for the number of the first block after the given one in which a Witnet randomization request was posted.\\n    /// @dev Returns 0 if none found.\\n    function _searchNextBlock(uint256 _target, uint256 _latest) internal view returns (uint256) {\\n        return ((_target >= _latest) \\n            ? __randomize_[_latest].nextBlock\\n            : _searchNextBlock(_target, __randomize_[_latest].prevBlock)\\n        );\\n    }\\n\\n    /// @dev Recursively searches for the number of the first block before the given one in which a Witnet randomization request was posted.\\n    /// @dev Returns 0 if none found.\\n\\n    function _searchPrevBlock(uint256 _target, uint256 _latest) internal view returns (uint256) {\\n        return ((_target > _latest)\\n            ? _latest\\n            : _searchPrevBlock(_target, __randomize_[_latest].prevBlock)\\n        );\\n    }\\n}\\n\",\"keccak256\":\"0x04a32e324f78f56c2c5d5f85fc813ece2e37cd37f773c4cdd3de7cad22512fab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet Randomness generator interface.\\n/// @author Witnet Foundation.\\ninterface IWitnetRandomness {\\n\\n    /// Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\\n    /// @param from Address from which the randomize() function was called. \\n    /// @param prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @param witnetQueryId Unique query id assigned to this request by the WRB.\\n    /// @param witnetRequestHash SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB.\\n    event Randomized(\\n        address indexed from,\\n        uint256 indexed prevBlock,\\n        uint256 witnetQueryId,\\n        bytes32 witnetRequestHash\\n    );\\n\\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \\n    /// transaction gas price as the one given.\\n    function estimateRandomizeFee(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view returns (address _from, uint256 _id, uint256 _prevBlock, uint256 _nextBlock);\\n\\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \\n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \\n    /// will recursively try to return randomness from the next non-faulty randomization request found \\n    /// in storage, if any. \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\\n    /// @dev   iii. all requests in/after the given block were solved with errors.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block) external view returns (bytes32); \\n\\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \\n    /// @param _block Block number from which the search will start.\\n    /// @return Number of the first block found after the given one, or `0` otherwise.\\n    function getRandomnessNextBlock(uint256 _block) external view returns (uint256); \\n\\n    /// Gets previous block in which a randomness request was posted before the given one.\\n    /// @param _block Block number from which the search will start.\\n    /// @return First block found before the given one, or `0` otherwise.\\n    function getRandomnessPrevBlock(uint256 _block) external view returns (uint256);\\n\\n    /// Returns `true` only when the randomness request that got posted within given block was already\\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\\n    function isRandomized(uint256 _block) external view returns (bool);\\n\\n    /// Returns latest block in which a randomness request got sucessfully posted to the WRB.\\n    function latestRandomizeBlock() external view returns (uint256);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \\n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _block Block number from which the search will start.\\n    function random(uint32 _range, uint256 _nonce, uint256 _block) external view returns (uint32);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _seed Seed value used as entropy source.\\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed) external pure returns (uint32);\\n\\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \\n    /// Only one randomness request per block will be actually posted to the WRB. Should there \\n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \\n    /// block randomness request according to current gas price. In both cases, all unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize() external payable returns (uint256 _usedFunds);\\n\\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \\n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \\n    /// request was posted. All unused funds shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256 _block) external payable returns (uint256 _usedFunds);\\n}\\n\",\"keccak256\":\"0x67868d08fe2406086cdd9a3860614201911a1ad16e3d34a94151fad721a12934\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Clonable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\n\\nabstract contract Clonable is Initializable {\\n    /// Immutable contract address that actually attends all calls to this contract.\\n    /// @dev Differs from `address(this)` when reached within a DELEGATECALL.\\n    address immutable public self = address(this);\\n\\n    event Cloned(address indexed by, Clonable indexed self, Clonable indexed clone);\\n\\n    /// Tells whether this contract is a clone of another (i.e. `self()`)\\n    function cloned()\\n        public view\\n        returns (bool)\\n    {\\n        return (\\n            address(this) != self\\n        );\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function clone()\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            // begin minimal proxy construction bytecode:\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE new instance:\\n            _instance := create(0, ptr, 0x37)\\n        }        \\n        require(address(_instance) != address(0), \\\"Clonable: CREATE failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple times will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function cloneDeterministic(bytes32 _salt)\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE2 new instance:\\n            _instance := create2(0, ptr, 0x37, _salt)\\n        }\\n        require(address(_instance) != address(0), \\\"Clonable: CREATE2 failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n}\\n\",\"keccak256\":\"0xbb8cfcfc7f44e289bd3dff357e1bb3da5809b2a39b58b7805aa3bfc1ec47ff2d\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Context.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity ^0.8.0;\\n\\n/// @dev Provides information about the current execution context, including the\\n/// sender of the transaction and its data. While these are generally available\\n/// via msg.sender and msg.data, they should not be accessed in such a direct\\n/// manner, since when dealing with meta-transactions the account sending and\\n/// paying for execution may not be the actual sender (as far as an application\\n/// is concerned).\\nabstract contract Context {\\n    function _msgSender() internal view virtual returns (address) {\\n        return msg.sender;\\n    }\\n\\n    function _msgData() internal view virtual returns (bytes calldata) {\\n        return msg.data;\\n    }\\n\\n    function _msgValue() internal view virtual returns (uint256) {\\n        return msg.value;\\n    }\\n}\\n\",\"keccak256\":\"0x1a17c0fd9fcd98aa49c5c428a415634b9db839e560f20da81f7c223a18ad12fc\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Ownable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n// OpenZeppelin Contracts v4.3.2 (access/Ownable.sol)\\n\\npragma solidity ^0.8.0;\\n\\nimport \\\"./Context.sol\\\";\\n\\n/// @dev Contract module which provides a basic access control mechanism, where\\n/// there is an account (an owner) that can be granted exclusive access to\\n/// specific functions.\\n///\\n/// By default, the owner account will be the one that deploys the contract. This\\n/// can later be changed with {transferOwnership}.\\n///\\n/// This module is used through inheritance. It will make available the modifier\\n/// `onlyOwner`, which can be applied to your functions to restrict their use to\\n/// the owner.\\n\\nabstract contract Ownable is Context {\\n    address private _owner;\\n\\n    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\\n\\n    /// @dev Initializes the contract setting the deployer as the initial owner.\\n    constructor() {\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    /// @dev Returns the address of the current owner.\\n    function owner() public view virtual returns (address) {\\n        return _owner;\\n    }\\n\\n    /// @dev Throws if called by any account other than the owner.\\n    modifier onlyOwner() {\\n        require(owner() == _msgSender(), \\\"Ownable: caller is not the owner\\\");\\n        _;\\n    }\\n\\n    /// @dev Leaves the contract without owner. It will not be possible to call\\n    /// `onlyOwner` functions anymore. Can only be called by the current owner.\\n    /// NOTE: Renouncing ownership will leave the contract without an owner,\\n    /// thereby removing any functionality that is only available to the owner.\\n    function renounceOwnership() public virtual onlyOwner {\\n        _transferOwnership(address(0));\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Can only be called by the current owner.\\n    function transferOwnership(address newOwner) public virtual onlyOwner {\\n        require(newOwner != address(0), \\\"Ownable: new owner is the zero address\\\");\\n        _transferOwnership(newOwner);\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Internal function without access restriction.\\n    function _transferOwnership(address newOwner) internal virtual {\\n        address oldOwner = _owner;\\n        _owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n}\",\"keccak256\":\"0xb8ce9f1e03440d40dbb9898c5ec2cfad520ccd3a5c76176058c44f5033c656a2\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\nimport \\\"../patterns/Clonable.sol\\\";\\nimport \\\"../patterns/Ownable.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\n\\nabstract contract WitnetRequestMalleableBase\\n    is\\n        IWitnetRequest,\\n        Clonable,\\n        Ownable,\\n        Proxiable\\n{   \\n    using Witnet for *;\\n\\n    event WitnessingParamsChanged(\\n        address indexed by,\\n        uint8 numWitnesses,\\n        uint8 minWitnessingConsensus,\\n        uint64 witnssingCollateral,\\n        uint64 witnessingReward,\\n        uint64 witnessingUnitaryFee\\n    );\\n\\n    struct WitnetRequestMalleableBaseContext {\\n        /// Contract owner address.\\n        address owner;\\n        /// Immutable bytecode template.\\n        bytes template;\\n        /// Current request bytecode.\\n        bytes bytecode;\\n        /// Current request hash.\\n        bytes32 hash;\\n        /// Current request witnessing params.\\n        WitnetRequestWitnessingParams params;\\n    }\\n\\n    struct WitnetRequestWitnessingParams {\\n        /// Number of witnesses required to be involved for solving this Witnet Data Request.\\n        uint8 numWitnesses;\\n\\n        /// Threshold percentage for aborting resolution of a request if the witnessing nodes did not arrive to a broad consensus.\\n        uint8 minWitnessingConsensus;\\n\\n        /// Amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n        uint64 witnessingCollateral;\\n\\n        /// Amount of nanowits that every request-solving witness will be rewarded with.\\n        uint64 witnessingReward;\\n\\n        /// Amount of nanowits that will be earned by Witnet miners for each each valid commit/reveal transaction they include in a block.\\n        uint64 witnessingUnitaryFee;\\n    }\\n\\n    /// Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\\n    function bytecode() external view override returns (bytes memory) {\\n        return _request().bytecode;\\n    }\\n\\n    /// Returns SHA256 hash of current Witnet Data Request bytecode.\\n    function hash() external view override returns (bytes32) {\\n        return _request().hash;\\n    }\\n\\n    /// Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n    function setWitnessingCollateral(uint64 _witnessingCollateral)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingCollateral = _witnessingCollateral;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Specifies how much you want to pay for rewarding each of the Witnet nodes.\\n    /// @param _witnessingReward Amount of nanowits that every request-solving witness will be rewarded with.\\n    /// @param _witnessingUnitaryFee Amount of nanowits that will be earned by Witnet miners for each each valid \\n    /// commit/reveal transaction they include in a block.\\n    function setWitnessingFees(uint64 _witnessingReward, uint64 _witnessingUnitaryFee)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingReward = _witnessingReward;\\n        _params.witnessingUnitaryFee = _witnessingUnitaryFee;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Sets how many Witnet nodes will be \\\"hired\\\" for resolving the request.\\n    /// @param _numWitnesses Number of witnesses required to be involved for solving this Witnet Data Request.\\n    /// @param _minWitnessingConsensus Threshold percentage for aborting resolution of a request if the witnessing \\n    /// nodes did not arrive to a broad consensus.\\n    function setWitnessingQuorum(uint8 _numWitnesses, uint8 _minWitnessingConsensus)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = _numWitnesses;\\n        _params.minWitnessingConsensus = _minWitnessingConsensus;\\n        _malleateBytecode(\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol\\n    /// level, including no witnessing parameters at all.\\n    function template()\\n        external view\\n        returns (bytes memory)\\n    {\\n        return _request().template;\\n    }\\n\\n    /// Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\\n    function totalWitnessingCollateral()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * _params.witnessingCollateral;\\n    }\\n\\n    /// Returns total amount of nanowits that will have to be paid in total for this request to be solved.\\n    function totalWitnessingFee()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * (2 * _params.witnessingUnitaryFee + _params.witnessingReward);\\n    }\\n\\n    /// Returns witnessing parameters of current Witnet Data Request.\\n    function witnessingParams()\\n        external view\\n        returns (WitnetRequestWitnessingParams memory)\\n    {\\n        return _request().params;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    function clone()\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.clone();\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    function cloneDeterministic(bytes32 _salt)\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.cloneDeterministic(_salt);\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\\n\\n    /// @dev Initializes contract's storage context.\\n    function initialize(bytes memory _template)\\n        public\\n        virtual override\\n    {\\n        require(_request().template.length == 0, \\\"WitnetRequestMalleableBase: already initialized\\\");\\n        _initialize(_template);\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Ownable' overriden functions ------------------------------------------------------------------------------\\n\\n    /// Returns the address of the current owner.\\n    function owner()\\n        public view\\n        virtual override\\n        returns (address)\\n    {\\n        return _request().owner;\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    function _transferOwnership(address newOwner)\\n        internal\\n        virtual override\\n    {\\n        address oldOwner = _request().owner;\\n        _request().owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Proxiable 'overriden functions ----------------------------------------------------------------------------\\n\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID()\\n        external pure\\n        virtual override\\n        returns (bytes32)\\n    {\\n        return (\\n            /* keccak256(\\\"io.witnet.requests.malleable\\\") */\\n            0x851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c2\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------    \\n\\n    /// @dev Initializes witnessing params and template bytecode.\\n    function _initialize(bytes memory _template)\\n        internal\\n    {\\n        assert(_template.length > 0);\\n        _request().template = _template;\\n\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = 2;\\n        _params.minWitnessingConsensus = 51;\\n        _params.witnessingCollateral = 10 ** 9;      // 1 WIT\\n        _params.witnessingReward = 5 * 10 ** 5;      // 0.5 milliWITs\\n        _params.witnessingUnitaryFee = 25 * 10 ** 4; // 0.25 milliWITs\\n        \\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Serializes new `bytecode` by combining immutable template with given parameters.\\n    function _malleateBytecode(\\n            uint8 _numWitnesses,\\n            uint8 _minWitnessingConsensus,\\n            uint64 _witnessingCollateral,\\n            uint64 _witnessingReward,\\n            uint64 _witnessingUnitaryFee\\n        )\\n        internal\\n        virtual\\n    {\\n        require(\\n            _witnessingReward > 0,\\n            \\\"WitnetRequestMalleableBase: no reward\\\"\\n        );\\n        require(\\n            _numWitnesses >= 1 && _numWitnesses <= 127,\\n            \\\"WitnetRequestMalleableBase: number of witnesses out of range\\\"\\n        );\\n        require(\\n            _minWitnessingConsensus >= 51 && _minWitnessingConsensus <= 99,\\n            \\\"WitnetRequestMalleableBase: witnessing consensus out of range\\\"\\n        );\\n        require(\\n            _witnessingCollateral >= 10 ** 9,\\n            \\\"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\\\"\\n        );\\n\\n        _request().bytecode = abi.encodePacked(\\n            _request().template,\\n            _uint64varint(bytes1(0x10), _witnessingReward),\\n            _uint8varint(bytes1(0x18), _numWitnesses),\\n            _uint64varint(0x20, _witnessingUnitaryFee),\\n            _uint8varint(0x28, _minWitnessingConsensus),\\n            _uint64varint(0x30, _witnessingCollateral)\\n        );\\n        _request().hash = _request().bytecode.hash();\\n        emit WitnessingParamsChanged(\\n            msg.sender,\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Returns pointer to storage slot where State struct is located.\\n    function _request()\\n        internal pure\\n        virtual\\n        returns (WitnetRequestMalleableBaseContext storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot :=\\n                /* keccak256(\\\"io.witnet.requests.malleable.context\\\") */\\n                0x375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7\\n        }\\n    }\\n\\n    /// @dev Encode uint64 into tagged varint.\\n    /// @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint64varint(bytes1 t, uint64 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        // Count the number of groups of 7 bits\\n        // We need this pre-processing step since Solidity doesn't allow dynamic memory resizing\\n        uint64 tmp = n;\\n        uint64 numBytes = 2;\\n        while (tmp > 0x7F) {\\n            tmp = tmp >> 7;\\n            numBytes += 1;\\n        }\\n        bytes memory buf = new bytes(numBytes);\\n        tmp = n;\\n        buf[0] = t;\\n        for (uint64 i = 1; i < numBytes; i++) {\\n            // Set the first bit in the byte for each group of 7 bits\\n            buf[i] = bytes1(0x80 | uint8(tmp & 0x7F));\\n            tmp = tmp >> 7;\\n        }\\n        // Unset the first bit of the last byte\\n        buf[numBytes - 1] &= 0x7F;\\n        return buf;\\n    }\\n\\n    /// @dev Encode uint8 into tagged varint.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint8varint(bytes1 t, uint8 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        return _uint64varint(t, uint64(n));\\n    }\\n}\\n\",\"keccak256\":\"0x53d0d402776e310c678643ed6b07d4f73511de9d1fa73732abf4251d69755b22\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetRequestMalleableBase.sol\\\";\\n\\ncontract WitnetRequestRandomness is WitnetRequestMalleableBase {\\n    bytes internal constant _WITNET_RANDOMNESS_BYTECODE_TEMPLATE = hex\\\"0a0f120508021a01801a0210022202100b\\\";\\n\\n    constructor() {\\n        initialize(bytes(\\\"\\\"));\\n    }\\n\\n    function initialize(bytes memory)\\n        public\\n        virtual override\\n    {\\n        super.initialize(_WITNET_RANDOMNESS_BYTECODE_TEMPLATE);\\n    }\\n}\\n\",\"keccak256\":\"0xc3b4a7d0dc396fb83b71beeae2a6d7de86b300919f894fcae73b7680829d716f\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":497,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"witnetRandomnessRequest","offset":0,"slot":"0","type":"t_contract(WitnetRequestRandomness)9072"},{"astId":500,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"latestRandomizeBlock","offset":0,"slot":"1","type":"t_uint256"},{"astId":505,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"__randomize_","offset":0,"slot":"2","type":"t_mapping(t_uint256,t_struct(RandomizeData)514_storage)"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_contract(WitnetRequestRandomness)9072":{"encoding":"inplace","label":"contract WitnetRequestRandomness","numberOfBytes":"20"},"t_mapping(t_uint256,t_struct(RandomizeData)514_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct WitnetRandomness.RandomizeData)","numberOfBytes":"32","value":"t_struct(RandomizeData)514_storage"},"t_struct(RandomizeData)514_storage":{"encoding":"inplace","label":"struct WitnetRandomness.RandomizeData","members":[{"astId":507,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"from","offset":0,"slot":"0","type":"t_address"},{"astId":509,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"prevBlock","offset":0,"slot":"1","type":"t_uint256"},{"astId":511,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"nextBlock","offset":0,"slot":"2","type":"t_uint256"},{"astId":513,"contract":"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol:WitnetRandomness","label":"witnetQueryId","offset":0,"slot":"3","type":"t_uint256"}],"numberOfBytes":"128"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"userdoc":{"events":{"Randomized(address,uint256,uint256,bytes32)":{"notice":"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard."}},"kind":"user","methods":{"clone()":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage."},"cloneDeterministic(bytes32)":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage."},"cloned()":{"notice":"Tells whether this contract is a clone of another (i.e. `self()`)"},"constructor":{"notice":"Include an address to specify the immutable WitnetRequestBoard entrypoint address."},"estimateRandomizeFee(uint256)":{"notice":"Returns amount of wei required to be paid as a fee when requesting randomization with a  transaction gas price as the one given."},"getRandomizeData(uint256)":{"notice":"Retrieves data of a randomization request that got successfully posted to the WRB within a given block."},"getRandomnessAfter(uint256)":{"notice":"Retrieves the randomness generated upon solving a request that was posted within a given block, if any, or to the _first_ request posted after that block, otherwise. Should the intended  request happen to be finalized with errors on the Witnet oracle network side, this function  will recursively try to return randomness from the next non-faulty randomization request found  in storage, if any. "},"getRandomnessNextBlock(uint256)":{"notice":"Tells what is the number of the next block in which a randomization request was posted after the given one. "},"getRandomnessPrevBlock(uint256)":{"notice":"Gets previous block in which a randomness request was posted before the given one."},"isRandomized(uint256)":{"notice":"Returns `true` only when the randomness request that got posted within given block was already reported back from the Witnet oracle, either successfully or with an error of any kind."},"latestRandomizeBlock()":{"notice":"Returns latest block in which a randomness request got sucessfully posted to the WRB."},"random(uint32,uint256,bytes32)":{"notice":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the given `_seed` as a source of entropy."},"random(uint32,uint256,uint256)":{"notice":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. "},"randomize()":{"notice":"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness.  Only one randomness request per block will be actually posted to the WRB. Should there  already be a posted request within current block, it will try to upgrade Witnet fee of current's  block randomness request according to current gas price. In both cases, all unused funds shall  be transfered back to the tx sender."},"self()":{"notice":"Immutable contract address that actually attends all calls to this contract."},"upgradeRandomizeFee(uint256)":{"notice":"Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it may be required in proportion to how much bigger the current tx gas price is with respect the  highest gas price that was paid in either previous fee upgrades, or when the given randomness  request was posted. All unused funds shall be transferred back to the tx sender."}},"version":1}}},"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol":{"WitnetBoardData":{"abi":[],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{},"title":"Witnet Request Board base data model. ","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Witnet Request Board base data model. \",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":\"WitnetBoardData\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board base data model. \\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardData {  \\n\\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data\\\") */\\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\\n\\n    struct WitnetBoardState {\\n        address base;\\n        address owner;    \\n        uint256 numQueries;\\n        mapping (uint => Witnet.Query) queries;\\n    }\\n\\n    constructor() {\\n        _state().owner = msg.sender;\\n    }\\n\\n    /// Asserts the given query is currently in the given status.\\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\\n      require(\\n          _getQueryStatus(_queryId) == _status,\\n          _getQueryStatusRevertMessage(_status)\\n        );\\n      _;\\n    }\\n\\n    /// Asserts the given query was previously posted and that it was not yet deleted.\\n    modifier notDeleted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        require(_getRequester(_queryId) != address(0), \\\"WitnetBoardData: deleted\\\");\\n        _;\\n    }\\n\\n    /// Asserts caller corresponds to the current owner. \\n    modifier onlyOwner {\\n        require(msg.sender == _state().owner, \\\"WitnetBoardData: only owner\\\");\\n        _;    \\n    }\\n\\n    /// Asserts the give query was actually posted before calling this method.\\n    modifier wasPosted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        _;\\n    }\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    /// Gets current status of given query.\\n    function _getQueryStatus(uint256 _queryId)\\n      internal view\\n      returns (Witnet.QueryStatus)\\n    {\\n      if (_queryId == 0 || _queryId > _state().numQueries) {\\n        // \\\"Unknown\\\" status if queryId is out of range:\\n        return Witnet.QueryStatus.Unknown;\\n      }\\n      else {\\n        Witnet.Query storage _query = _state().queries[_queryId];\\n        if (_query.response.drTxHash != 0) {\\n          // Query is in \\\"Reported\\\" status as soon as the hash of the\\n          // Witnet transaction that solved the query is reported\\n          // back from a Witnet bridge:\\n          return Witnet.QueryStatus.Reported;\\n        }\\n        else if (_query.from != address(0)) {\\n          // Otherwise, while address from which the query was posted\\n          // is kept in storage, the query remains in \\\"Posted\\\" status:\\n          return Witnet.QueryStatus.Posted;\\n        }\\n        else {\\n          // Requester's address is removed from storage only if\\n          // the query gets \\\"Deleted\\\" by its requester.\\n          return Witnet.QueryStatus.Deleted;\\n        }\\n      }\\n    }\\n\\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\\n      internal pure\\n      returns (string memory)\\n    {\\n      if (_status == Witnet.QueryStatus.Posted) {\\n        return \\\"WitnetBoardData: not in Posted status\\\";\\n      } else if (_status == Witnet.QueryStatus.Reported) {\\n        return \\\"WitnetBoardData: not in Reported status\\\";\\n      } else if (_status == Witnet.QueryStatus.Deleted) {\\n        return \\\"WitnetBoardData: not in Deleted status\\\";\\n      } else {\\n        return \\\"WitnetBoardData: bad mood\\\";\\n      }\\n    }\\n\\n    /// Gets from of a given query.\\n    function _getRequester(uint256 _queryId)\\n      internal view\\n      returns (address)\\n    {\\n      return _state().queries[_queryId].from;\\n    }\\n\\n    /// Gets the Witnet.Request part of a given query.\\n    function _getRequestData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Request storage)\\n    {\\n        return _state().queries[_queryId].request;\\n    }\\n\\n    /// Gets the Witnet.Result part of a given query.\\n    function _getResponseData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Response storage)\\n    {\\n        return _state().queries[_queryId].response;\\n    }\\n\\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\\n    function _state()\\n      internal pure\\n      returns (WitnetBoardState storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0c78c9981103e9ed35ace4e5f886a848f9dfe2aa26928adc0d37dabeff6a19db\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol":{"WitnetBoardDataACLs":{"abi":[],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{},"title":"Witnet Access Control Lists storage layout, for Witnet-trusted request boards.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol\":\"WitnetBoardDataACLs\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board base data model. \\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardData {  \\n\\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data\\\") */\\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\\n\\n    struct WitnetBoardState {\\n        address base;\\n        address owner;    \\n        uint256 numQueries;\\n        mapping (uint => Witnet.Query) queries;\\n    }\\n\\n    constructor() {\\n        _state().owner = msg.sender;\\n    }\\n\\n    /// Asserts the given query is currently in the given status.\\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\\n      require(\\n          _getQueryStatus(_queryId) == _status,\\n          _getQueryStatusRevertMessage(_status)\\n        );\\n      _;\\n    }\\n\\n    /// Asserts the given query was previously posted and that it was not yet deleted.\\n    modifier notDeleted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        require(_getRequester(_queryId) != address(0), \\\"WitnetBoardData: deleted\\\");\\n        _;\\n    }\\n\\n    /// Asserts caller corresponds to the current owner. \\n    modifier onlyOwner {\\n        require(msg.sender == _state().owner, \\\"WitnetBoardData: only owner\\\");\\n        _;    \\n    }\\n\\n    /// Asserts the give query was actually posted before calling this method.\\n    modifier wasPosted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        _;\\n    }\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    /// Gets current status of given query.\\n    function _getQueryStatus(uint256 _queryId)\\n      internal view\\n      returns (Witnet.QueryStatus)\\n    {\\n      if (_queryId == 0 || _queryId > _state().numQueries) {\\n        // \\\"Unknown\\\" status if queryId is out of range:\\n        return Witnet.QueryStatus.Unknown;\\n      }\\n      else {\\n        Witnet.Query storage _query = _state().queries[_queryId];\\n        if (_query.response.drTxHash != 0) {\\n          // Query is in \\\"Reported\\\" status as soon as the hash of the\\n          // Witnet transaction that solved the query is reported\\n          // back from a Witnet bridge:\\n          return Witnet.QueryStatus.Reported;\\n        }\\n        else if (_query.from != address(0)) {\\n          // Otherwise, while address from which the query was posted\\n          // is kept in storage, the query remains in \\\"Posted\\\" status:\\n          return Witnet.QueryStatus.Posted;\\n        }\\n        else {\\n          // Requester's address is removed from storage only if\\n          // the query gets \\\"Deleted\\\" by its requester.\\n          return Witnet.QueryStatus.Deleted;\\n        }\\n      }\\n    }\\n\\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\\n      internal pure\\n      returns (string memory)\\n    {\\n      if (_status == Witnet.QueryStatus.Posted) {\\n        return \\\"WitnetBoardData: not in Posted status\\\";\\n      } else if (_status == Witnet.QueryStatus.Reported) {\\n        return \\\"WitnetBoardData: not in Reported status\\\";\\n      } else if (_status == Witnet.QueryStatus.Deleted) {\\n        return \\\"WitnetBoardData: not in Deleted status\\\";\\n      } else {\\n        return \\\"WitnetBoardData: bad mood\\\";\\n      }\\n    }\\n\\n    /// Gets from of a given query.\\n    function _getRequester(uint256 _queryId)\\n      internal view\\n      returns (address)\\n    {\\n      return _state().queries[_queryId].from;\\n    }\\n\\n    /// Gets the Witnet.Request part of a given query.\\n    function _getRequestData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Request storage)\\n    {\\n        return _state().queries[_queryId].request;\\n    }\\n\\n    /// Gets the Witnet.Result part of a given query.\\n    function _getResponseData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Response storage)\\n    {\\n        return _state().queries[_queryId].response;\\n    }\\n\\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\\n    function _state()\\n      internal pure\\n      returns (WitnetBoardState storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0c78c9981103e9ed35ace4e5f886a848f9dfe2aa26928adc0d37dabeff6a19db\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetBoardData.sol\\\";\\n\\n/// @title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardDataACLs\\n    is\\n        WitnetBoardData\\n{\\n    bytes32 internal constant _WITNET_BOARD_ACLS_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data.acls\\\") */\\n        0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd;\\n\\n    struct WitnetBoardACLs {\\n        mapping (address => bool) isReporter_;\\n    }\\n\\n    constructor() {\\n        _acls().isReporter_[msg.sender] = true;\\n    }\\n\\n    modifier onlyReporters {\\n        require(\\n            _acls().isReporter_[msg.sender],\\n            \\\"WitnetBoardDataACLs: unauthorized reporter\\\"\\n        );\\n        _;\\n    } \\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function _acls() internal pure returns (WitnetBoardACLs storage _struct) {\\n        assembly {\\n            _struct.slot := _WITNET_BOARD_ACLS_SLOTHASH\\n        }\\n    }\\n}\\n\",\"keccak256\":\"0x558f28fc690d2f7180da9393bc49083da4857aa8480f044f68355a61ebf21257\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol":{"WitnetProxy":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newImplementation","type":"address"},{"internalType":"bytes","name":"_initData","type":"bytes"}],"name":"upgradeTo","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"upgradeTo(address,bytes)":{"params":{"_initData":"Raw data with which new implementation will be initialized.","_newImplementation":"New implementation address."},"returns":{"_0":"Returns whether new implementation would be further upgradable, or not."}}},"title":"WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a  `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. ","version":1},"evm":{"bytecode":{"functionDebugData":{"@_1622":{"entryPoint":null,"id":1622,"parameterSlots":0,"returnSlots":0}},"generatedSources":[],"linkReferences":{},"object":"608060405234801561001057600080fd5b506111a5806100206000396000f3fe60806040526004361061002d5760003560e01c80635c60da1b146100a05780636fbc15e9146100cb5761006d565b3661006d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006490610c84565b60405180910390fd5b6000610077610108565b905060405136600082376000803683855af43d806000843e816000811461009c578184f35b8184fd5b3480156100ac57600080fd5b506100b5610108565b6040516100c29190610c0c565b60405180910390f35b3480156100d757600080fd5b506100f260048036038101906100ed919061097c565b61013b565b6040516100ff9190610c27565b60405180910390f35b60006101126108a5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a390610ce4565b60405180910390fd5b60006101b6610108565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461061e578073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561025b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025290610d24565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16635479d9406040518163ffffffff1660e01b815260040160206040518083038186803b1580156102a157600080fd5b505afa9250505080156102d257506040513d601f19601f820116820180604052508101906102cf91906109d8565b60015b610311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161030890610ca4565b60405180910390fd5b80610351576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034890610d04565b60405180910390fd5b506000808273ffffffffffffffffffffffffffffffffffffffff163360405160240161037d9190610c0c565b6040516020818303038152906040527f6b58960a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516104079190610bf5565b600060405180830381855af49150503d8060008114610442576040519150601f19603f3d011682016040523d82523d6000602084013e610447565b606091505b50915091508161048c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161048390610d64565b60405180910390fd5b808060200190518101906104a091906109d8565b6104df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d690610cc4565b60405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b815260040160206040518083038186803b15801561052557600080fd5b505afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d9190610a05565b8373ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a357600080fd5b505afa1580156105b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105db9190610a05565b1461061b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061290610d44565b60405180910390fd5b50505b60008473ffffffffffffffffffffffffffffffffffffffff16846040516024016106489190610c42565b6040516020818303038152906040527f439fab91000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516106d29190610bf5565b600060405180830381855af49150503d806000811461070d576040519150601f19603f3d011682016040523d82523d6000602084013e610712565b606091505b5050905080610756576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074d90610c64565b60405180910390fd5b8461075f6108a5565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508473ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a28473ffffffffffffffffffffffffffffffffffffffff16635479d9406040518163ffffffff1660e01b815260040160206040518083038186803b15801561082957600080fd5b505afa92505050801561085a57506040513d601f19601f8201168201806040525081019061085791906109d8565b60015b610899576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089090610d64565b60405180910390fd5b80935050505092915050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc905090565b60006108e06108db84610da9565b610d84565b9050828152602081018484840111156108fc576108fb610f01565b5b610907848285610e5a565b509392505050565b60008135905061091e8161112a565b92915050565b60008151905061093381611141565b92915050565b60008151905061094881611158565b92915050565b600082601f83011261096357610962610efc565b5b81356109738482602086016108cd565b91505092915050565b6000806040838503121561099357610992610f0b565b5b60006109a18582860161090f565b925050602083013567ffffffffffffffff8111156109c2576109c1610f06565b5b6109ce8582860161094e565b9150509250929050565b6000602082840312156109ee576109ed610f0b565b5b60006109fc84828501610924565b91505092915050565b600060208284031215610a1b57610a1a610f0b565b5b6000610a2984828501610939565b91505092915050565b610a3b81610e12565b82525050565b610a4a81610e24565b82525050565b6000610a5b82610dda565b610a658185610de5565b9350610a75818560208601610e69565b610a7e81610f10565b840191505092915050565b6000610a9482610dda565b610a9e8185610df6565b9350610aae818560208601610e69565b80840191505092915050565b6000610ac7602183610e01565b9150610ad282610f21565b604082019050919050565b6000610aea602283610e01565b9150610af582610f70565b604082019050919050565b6000610b0d602a83610e01565b9150610b1882610fbf565b604082019050919050565b6000610b30601b83610e01565b9150610b3b8261100e565b602082019050919050565b6000610b53602083610e01565b9150610b5e82611037565b602082019050919050565b6000610b76601b83610e01565b9150610b8182611060565b602082019050919050565b6000610b99601f83610e01565b9150610ba482611089565b602082019050919050565b6000610bbc602483610e01565b9150610bc7826110b2565b604082019050919050565b6000610bdf601a83610e01565b9150610bea82611101565b602082019050919050565b6000610c018284610a89565b915081905092915050565b6000602082019050610c216000830184610a32565b92915050565b6000602082019050610c3c6000830184610a41565b92915050565b60006020820190508181036000830152610c5c8184610a50565b905092915050565b60006020820190508181036000830152610c7d81610aba565b9050919050565b60006020820190508181036000830152610c9d81610add565b9050919050565b60006020820190508181036000830152610cbd81610b00565b9050919050565b60006020820190508181036000830152610cdd81610b23565b9050919050565b60006020820190508181036000830152610cfd81610b46565b9050919050565b60006020820190508181036000830152610d1d81610b69565b9050919050565b60006020820190508181036000830152610d3d81610b8c565b9050919050565b60006020820190508181036000830152610d5d81610baf565b9050919050565b60006020820190508181036000830152610d7d81610bd2565b9050919050565b6000610d8e610d9f565b9050610d9a8282610e9c565b919050565b6000604051905090565b600067ffffffffffffffff821115610dc457610dc3610ecd565b5b610dcd82610f10565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000610e1d82610e3a565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b82818337600083830152505050565b60005b83811015610e87578082015181840152602081019050610e6c565b83811115610e96576000848401525b50505050565b610ea582610f10565b810181811067ffffffffffffffff82111715610ec457610ec3610ecd565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f5769746e657450726f78793a20756e61626c6520746f20696e697469616c697a60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a206e6f207472616e73666572732061636365707460008201527f6564000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a20756e61626c6520746f20636865636b2075706760008201527f7261646162696c69747900000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a206e6f7420617574686f72697a65640000000000600082015250565b7f5769746e657450726f78793a206e756c6c20696d706c656d656e746174696f6e600082015250565b7f5769746e657450726f78793a206e6f742075706772616461626c650000000000600082015250565b7f5769746e657450726f78793a206e6f7468696e6720746f207570677261646500600082015250565b7f5769746e657450726f78793a2070726f786961626c655555494473206d69736d60008201527f6174636800000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a206e6f7420636f6d706c69616e74000000000000600082015250565b61113381610e12565b811461113e57600080fd5b50565b61114a81610e24565b811461115557600080fd5b50565b61116181610e30565b811461116c57600080fd5b5056fea26469706673582212204ab7787d72da28baaa9c9bc0d8bb9a171073217de443a926002a74b6cd7143c464736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x11A5 DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2D JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5C60DA1B EQ PUSH2 0xA0 JUMPI DUP1 PUSH4 0x6FBC15E9 EQ PUSH2 0xCB JUMPI PUSH2 0x6D JUMP JUMPDEST CALLDATASIZE PUSH2 0x6D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64 SWAP1 PUSH2 0xC84 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x77 PUSH2 0x108 JUMP JUMPDEST SWAP1 POP PUSH1 0x40 MLOAD CALLDATASIZE PUSH1 0x0 DUP3 CALLDATACOPY PUSH1 0x0 DUP1 CALLDATASIZE DUP4 DUP6 GAS DELEGATECALL RETURNDATASIZE DUP1 PUSH1 0x0 DUP5 RETURNDATACOPY DUP2 PUSH1 0x0 DUP2 EQ PUSH2 0x9C JUMPI DUP2 DUP5 RETURN JUMPDEST DUP2 DUP5 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xAC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB5 PUSH2 0x108 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC2 SWAP2 SWAP1 PUSH2 0xC0C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xED SWAP2 SWAP1 PUSH2 0x97C JUMP JUMPDEST PUSH2 0x13B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xFF SWAP2 SWAP1 PUSH2 0xC27 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x112 PUSH2 0x8A5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1AC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A3 SWAP1 PUSH2 0xCE4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1B6 PUSH2 0x108 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x61E JUMPI DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x25B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x252 SWAP1 PUSH2 0xD24 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5479D940 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 0x2A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x2D2 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2CF SWAP2 SWAP1 PUSH2 0x9D8 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x311 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x308 SWAP1 PUSH2 0xCA4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH2 0x351 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x348 SWAP1 PUSH2 0xD04 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x37D SWAP2 SWAP1 PUSH2 0xC0C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x6B58960A00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0x407 SWAP2 SWAP1 PUSH2 0xBF5 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x442 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x447 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x48C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x483 SWAP1 PUSH2 0xD64 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x4A0 SWAP2 SWAP1 PUSH2 0x9D8 JUMP JUMPDEST PUSH2 0x4DF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D6 SWAP1 PUSH2 0xCC4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x52D1902D 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 0x525 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x539 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 0x55D SWAP2 SWAP1 PUSH2 0xA05 JUMP JUMPDEST DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x52D1902D 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 0x5A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B7 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 0x5DB SWAP2 SWAP1 PUSH2 0xA05 JUMP JUMPDEST EQ PUSH2 0x61B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x612 SWAP1 PUSH2 0xD44 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMPDEST PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x648 SWAP2 SWAP1 PUSH2 0xC42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x439FAB9100000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0x6D2 SWAP2 SWAP1 PUSH2 0xBF5 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x70D JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x712 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0x756 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x74D SWAP1 PUSH2 0xC64 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH2 0x75F PUSH2 0x8A5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xBC7CD75A20EE27FD9ADEBAB32041F755214DBC6BFFA90CC0225B39DA2E5C2D3B PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5479D940 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 0x829 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x85A JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x857 SWAP2 SWAP1 PUSH2 0x9D8 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x899 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x890 SWAP1 PUSH2 0xD64 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x360894A13BA1A3210667C828492DB98DCA3E2076CC3735A920A3CA505D382BBC SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E0 PUSH2 0x8DB DUP5 PUSH2 0xDA9 JUMP JUMPDEST PUSH2 0xD84 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x8FC JUMPI PUSH2 0x8FB PUSH2 0xF01 JUMP JUMPDEST JUMPDEST PUSH2 0x907 DUP5 DUP3 DUP6 PUSH2 0xE5A JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x91E DUP2 PUSH2 0x112A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x933 DUP2 PUSH2 0x1141 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x948 DUP2 PUSH2 0x1158 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x963 JUMPI PUSH2 0x962 PUSH2 0xEFC JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x973 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x8CD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x993 JUMPI PUSH2 0x992 PUSH2 0xF0B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x9A1 DUP6 DUP3 DUP7 ADD PUSH2 0x90F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9C2 JUMPI PUSH2 0x9C1 PUSH2 0xF06 JUMP JUMPDEST JUMPDEST PUSH2 0x9CE DUP6 DUP3 DUP7 ADD PUSH2 0x94E JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9EE JUMPI PUSH2 0x9ED PUSH2 0xF0B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x9FC DUP5 DUP3 DUP6 ADD PUSH2 0x924 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xA1B JUMPI PUSH2 0xA1A PUSH2 0xF0B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xA29 DUP5 DUP3 DUP6 ADD PUSH2 0x939 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xA3B DUP2 PUSH2 0xE12 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0xA4A DUP2 PUSH2 0xE24 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA5B DUP3 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0xA65 DUP2 DUP6 PUSH2 0xDE5 JUMP JUMPDEST SWAP4 POP PUSH2 0xA75 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0xE69 JUMP JUMPDEST PUSH2 0xA7E DUP2 PUSH2 0xF10 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA94 DUP3 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0xA9E DUP2 DUP6 PUSH2 0xDF6 JUMP JUMPDEST SWAP4 POP PUSH2 0xAAE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0xE69 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAC7 PUSH1 0x21 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xAD2 DUP3 PUSH2 0xF21 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAEA PUSH1 0x22 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xAF5 DUP3 PUSH2 0xF70 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB0D PUSH1 0x2A DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB18 DUP3 PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB30 PUSH1 0x1B DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB3B DUP3 PUSH2 0x100E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB53 PUSH1 0x20 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB5E DUP3 PUSH2 0x1037 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB76 PUSH1 0x1B DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB81 DUP3 PUSH2 0x1060 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB99 PUSH1 0x1F DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xBA4 DUP3 PUSH2 0x1089 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBBC PUSH1 0x24 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xBC7 DUP3 PUSH2 0x10B2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH1 0x1A DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xBEA DUP3 PUSH2 0x1101 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xC01 DUP3 DUP5 PUSH2 0xA89 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC21 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xA32 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC3C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xA41 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0xC5C DUP2 DUP5 PUSH2 0xA50 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 0xC7D DUP2 PUSH2 0xABA 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 0xC9D DUP2 PUSH2 0xADD 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 0xCBD DUP2 PUSH2 0xB00 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 0xCDD DUP2 PUSH2 0xB23 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 0xCFD DUP2 PUSH2 0xB46 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 0xD1D DUP2 PUSH2 0xB69 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 0xD3D DUP2 PUSH2 0xB8C 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 0xD5D DUP2 PUSH2 0xBAF 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 0xD7D DUP2 PUSH2 0xBD2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xD8E PUSH2 0xD9F JUMP JUMPDEST SWAP1 POP PUSH2 0xD9A DUP3 DUP3 PUSH2 0xE9C 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 0xDC4 JUMPI PUSH2 0xDC3 PUSH2 0xECD JUMP JUMPDEST JUMPDEST PUSH2 0xDCD DUP3 PUSH2 0xF10 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 DUP2 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 0xE1D DUP3 PUSH2 0xE3A 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 DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xE87 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0xE6C JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0xE96 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0xEA5 DUP3 PUSH2 0xF10 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0xEC4 JUMPI PUSH2 0xEC3 PUSH2 0xECD JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A20756E61626C6520746F20696E697469616C697A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F207472616E736665727320616363657074 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6564000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A20756E61626C6520746F20636865636B20757067 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7261646162696C69747900000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F7420617574686F72697A65640000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E756C6C20696D706C656D656E746174696F6E PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F742075706772616461626C650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F7468696E6720746F207570677261646500 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A2070726F786961626C655555494473206D69736D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6174636800000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F7420636F6D706C69616E74000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x1133 DUP2 PUSH2 0xE12 JUMP JUMPDEST DUP2 EQ PUSH2 0x113E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x114A DUP2 PUSH2 0xE24 JUMP JUMPDEST DUP2 EQ PUSH2 0x1155 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1161 DUP2 PUSH2 0xE30 JUMP JUMPDEST DUP2 EQ PUSH2 0x116C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x4A 0xB7 PUSH25 0x7D72DA28BAAA9C9BC0D8BB9A171073217DE443A926002A74B6 0xCD PUSH18 0x43C464736F6C634300080700330000000000 ","sourceMap":"378:4863:13:-:0;;;696:17;;;;;;;;;;378:4863;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_1631":{"entryPoint":null,"id":1631,"parameterSlots":0,"returnSlots":0},"@_1642":{"entryPoint":null,"id":1642,"parameterSlots":0,"returnSlots":0},"@_proxySlot_1815":{"entryPoint":2213,"id":1815,"parameterSlots":0,"returnSlots":1},"@implementation_1653":{"entryPoint":264,"id":1653,"parameterSlots":0,"returnSlots":1},"@upgradeTo_1806":{"entryPoint":315,"id":1806,"parameterSlots":2,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":2253,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_address":{"entryPoint":2319,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bool_fromMemory":{"entryPoint":2340,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":2361,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":2382,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_addresst_bytes_memory_ptr":{"entryPoint":2428,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_tuple_t_bool_fromMemory":{"entryPoint":2520,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":2565,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":2610,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_fromStack":{"entryPoint":2625,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":2640,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":2697,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c_to_t_string_memory_ptr_fromStack":{"entryPoint":2746,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d_to_t_string_memory_ptr_fromStack":{"entryPoint":2781,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc_to_t_string_memory_ptr_fromStack":{"entryPoint":2816,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2_to_t_string_memory_ptr_fromStack":{"entryPoint":2851,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a_to_t_string_memory_ptr_fromStack":{"entryPoint":2886,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f_to_t_string_memory_ptr_fromStack":{"entryPoint":2921,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084_to_t_string_memory_ptr_fromStack":{"entryPoint":2956,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8_to_t_string_memory_ptr_fromStack":{"entryPoint":2991,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65_to_t_string_memory_ptr_fromStack":{"entryPoint":3026,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":3061,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":3084,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed":{"entryPoint":3111,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":3138,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3172,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3204,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3236,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3268,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3300,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3332,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3364,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3396,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3428,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_memory":{"entryPoint":3460,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":3487,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":3497,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":3546,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":3557,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":3574,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":3585,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":3602,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bool":{"entryPoint":3620,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":3632,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":3642,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":3674,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":3689,"id":null,"parameterSlots":3,"returnSlots":0},"finalize_allocation":{"entryPoint":3740,"id":null,"parameterSlots":2,"returnSlots":0},"panic_error_0x41":{"entryPoint":3789,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":3836,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":3841,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":3846,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":3851,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":3856,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c":{"entryPoint":3873,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d":{"entryPoint":3952,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc":{"entryPoint":4031,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2":{"entryPoint":4110,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a":{"entryPoint":4151,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f":{"entryPoint":4192,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084":{"entryPoint":4233,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8":{"entryPoint":4274,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65":{"entryPoint":4353,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_address":{"entryPoint":4394,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bool":{"entryPoint":4417,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":4440,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:17085:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"475:87:46","statements":[{"nodeType":"YulAssignment","src":"485:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"507:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"494:12:46"},"nodeType":"YulFunctionCall","src":"494:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"485:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"550:5:46"}],"functionName":{"name":"validator_revert_t_address","nodeType":"YulIdentifier","src":"523:26:46"},"nodeType":"YulFunctionCall","src":"523:33:46"},"nodeType":"YulExpressionStatement","src":"523:33:46"}]},"name":"abi_decode_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"453:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"461:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"469:5:46","type":""}],"src":"423:139:46"},{"body":{"nodeType":"YulBlock","src":"628:77:46","statements":[{"nodeType":"YulAssignment","src":"638:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"653:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"647:5:46"},"nodeType":"YulFunctionCall","src":"647:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"638:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"693:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"669:23:46"},"nodeType":"YulFunctionCall","src":"669:30:46"},"nodeType":"YulExpressionStatement","src":"669:30:46"}]},"name":"abi_decode_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"606:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"614:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"622:5:46","type":""}],"src":"568:137:46"},{"body":{"nodeType":"YulBlock","src":"774:80:46","statements":[{"nodeType":"YulAssignment","src":"784:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"799:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"793:5:46"},"nodeType":"YulFunctionCall","src":"793:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"784:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"842:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"815:26:46"},"nodeType":"YulFunctionCall","src":"815:33:46"},"nodeType":"YulExpressionStatement","src":"815:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"752:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"760:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"768:5:46","type":""}],"src":"711:143:46"},{"body":{"nodeType":"YulBlock","src":"934:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"983:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"985:77:46"},"nodeType":"YulFunctionCall","src":"985:79:46"},"nodeType":"YulExpressionStatement","src":"985:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"962:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"970:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"958:3:46"},"nodeType":"YulFunctionCall","src":"958:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"977:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"954:3:46"},"nodeType":"YulFunctionCall","src":"954:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"947:6:46"},"nodeType":"YulFunctionCall","src":"947:35:46"},"nodeType":"YulIf","src":"944:122:46"},{"nodeType":"YulVariableDeclaration","src":"1075:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1102:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1089:12:46"},"nodeType":"YulFunctionCall","src":"1089:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"1079:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1118:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1178:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1186:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1174:3:46"},"nodeType":"YulFunctionCall","src":"1174:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"1193:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"1201:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1127:46:46"},"nodeType":"YulFunctionCall","src":"1127:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"1118:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"912:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"920:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"928:5:46","type":""}],"src":"873:338:46"},{"body":{"nodeType":"YulBlock","src":"1309:560:46","statements":[{"body":{"nodeType":"YulBlock","src":"1355:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1357:77:46"},"nodeType":"YulFunctionCall","src":"1357:79:46"},"nodeType":"YulExpressionStatement","src":"1357:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1330:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1339:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1326:3:46"},"nodeType":"YulFunctionCall","src":"1326:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1351:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1322:3:46"},"nodeType":"YulFunctionCall","src":"1322:32:46"},"nodeType":"YulIf","src":"1319:119:46"},{"nodeType":"YulBlock","src":"1448:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1463:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1477:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1467:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1492:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1527:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1538:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1523:3:46"},"nodeType":"YulFunctionCall","src":"1523:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1547:7:46"}],"functionName":{"name":"abi_decode_t_address","nodeType":"YulIdentifier","src":"1502:20:46"},"nodeType":"YulFunctionCall","src":"1502:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1492:6:46"}]}]},{"nodeType":"YulBlock","src":"1575:287:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1590:46:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1621:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1632:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1617:3:46"},"nodeType":"YulFunctionCall","src":"1617:18:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1604:12:46"},"nodeType":"YulFunctionCall","src":"1604:32:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1594:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1683:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"1685:77:46"},"nodeType":"YulFunctionCall","src":"1685:79:46"},"nodeType":"YulExpressionStatement","src":"1685:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1655:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1663:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1652:2:46"},"nodeType":"YulFunctionCall","src":"1652:30:46"},"nodeType":"YulIf","src":"1649:117:46"},{"nodeType":"YulAssignment","src":"1780:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1824:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1835:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1820:3:46"},"nodeType":"YulFunctionCall","src":"1820:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1844:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1790:29:46"},"nodeType":"YulFunctionCall","src":"1790:62:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"1780:6:46"}]}]}]},"name":"abi_decode_tuple_t_addresst_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1271:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1282:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1294:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"1302:6:46","type":""}],"src":"1217:652:46"},{"body":{"nodeType":"YulBlock","src":"1949:271:46","statements":[{"body":{"nodeType":"YulBlock","src":"1995:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1997:77:46"},"nodeType":"YulFunctionCall","src":"1997:79:46"},"nodeType":"YulExpressionStatement","src":"1997:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1970:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1979:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1966:3:46"},"nodeType":"YulFunctionCall","src":"1966:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1991:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1962:3:46"},"nodeType":"YulFunctionCall","src":"1962:32:46"},"nodeType":"YulIf","src":"1959:119:46"},{"nodeType":"YulBlock","src":"2088:125:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2103:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2117:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2107:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2132:71:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2175:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2186:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2171:3:46"},"nodeType":"YulFunctionCall","src":"2171:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2195:7:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"2142:28:46"},"nodeType":"YulFunctionCall","src":"2142:61:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2132:6:46"}]}]}]},"name":"abi_decode_tuple_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1919:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1930:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1942:6:46","type":""}],"src":"1875:345:46"},{"body":{"nodeType":"YulBlock","src":"2303:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"2349:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"2351:77:46"},"nodeType":"YulFunctionCall","src":"2351:79:46"},"nodeType":"YulExpressionStatement","src":"2351:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"2324:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2333:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2320:3:46"},"nodeType":"YulFunctionCall","src":"2320:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"2345:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2316:3:46"},"nodeType":"YulFunctionCall","src":"2316:32:46"},"nodeType":"YulIf","src":"2313:119:46"},{"nodeType":"YulBlock","src":"2442:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2457:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2471:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2461:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2486:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2532:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2543:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2528:3:46"},"nodeType":"YulFunctionCall","src":"2528:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2552:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"2496:31:46"},"nodeType":"YulFunctionCall","src":"2496:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2486:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2273:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"2284:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"2296:6:46","type":""}],"src":"2226:351:46"},{"body":{"nodeType":"YulBlock","src":"2648:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2665:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2688:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"2670:17:46"},"nodeType":"YulFunctionCall","src":"2670:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2658:6:46"},"nodeType":"YulFunctionCall","src":"2658:37:46"},"nodeType":"YulExpressionStatement","src":"2658:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2636:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2643:3:46","type":""}],"src":"2583:118:46"},{"body":{"nodeType":"YulBlock","src":"2766:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2783:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2803:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"2788:14:46"},"nodeType":"YulFunctionCall","src":"2788:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2776:6:46"},"nodeType":"YulFunctionCall","src":"2776:34:46"},"nodeType":"YulExpressionStatement","src":"2776:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2754:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2761:3:46","type":""}],"src":"2707:109:46"},{"body":{"nodeType":"YulBlock","src":"2912:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2922:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2968:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"2936:31:46"},"nodeType":"YulFunctionCall","src":"2936:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"2926:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2983:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3048:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3053:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2990:57:46"},"nodeType":"YulFunctionCall","src":"2990:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2983:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3095:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3102:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3091:3:46"},"nodeType":"YulFunctionCall","src":"3091:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"3109:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3114:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"3069:21:46"},"nodeType":"YulFunctionCall","src":"3069:52:46"},"nodeType":"YulExpressionStatement","src":"3069:52:46"},{"nodeType":"YulAssignment","src":"3130:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3141:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3168:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"3146:21:46"},"nodeType":"YulFunctionCall","src":"3146:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3137:3:46"},"nodeType":"YulFunctionCall","src":"3137:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3130:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2893:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"2900:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2908:3:46","type":""}],"src":"2822:360:46"},{"body":{"nodeType":"YulBlock","src":"3296:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3306:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3352:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"3320:31:46"},"nodeType":"YulFunctionCall","src":"3320:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"3310:6:46","type":""}]},{"nodeType":"YulAssignment","src":"3367:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3450:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3455:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"3374:75:46"},"nodeType":"YulFunctionCall","src":"3374:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"3367:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3497:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3504:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3493:3:46"},"nodeType":"YulFunctionCall","src":"3493:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"3511:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3516:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"3471:21:46"},"nodeType":"YulFunctionCall","src":"3471:52:46"},"nodeType":"YulExpressionStatement","src":"3471:52:46"},{"nodeType":"YulAssignment","src":"3532:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3543:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3548:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3539:3:46"},"nodeType":"YulFunctionCall","src":"3539:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3532:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3277:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"3284:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3292:3:46","type":""}],"src":"3188:373:46"},{"body":{"nodeType":"YulBlock","src":"3713:220:46","statements":[{"nodeType":"YulAssignment","src":"3723:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3789:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3794:2:46","type":"","value":"33"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"3730:58:46"},"nodeType":"YulFunctionCall","src":"3730:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"3723:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3895:3:46"}],"functionName":{"name":"store_literal_in_memory_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c","nodeType":"YulIdentifier","src":"3806:88:46"},"nodeType":"YulFunctionCall","src":"3806:93:46"},"nodeType":"YulExpressionStatement","src":"3806:93:46"},{"nodeType":"YulAssignment","src":"3908:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3919:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3924:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3915:3:46"},"nodeType":"YulFunctionCall","src":"3915:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3908:3:46"}]}]},"name":"abi_encode_t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3701:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3709:3:46","type":""}],"src":"3567:366:46"},{"body":{"nodeType":"YulBlock","src":"4085:220:46","statements":[{"nodeType":"YulAssignment","src":"4095:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4161:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"4166:2:46","type":"","value":"34"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"4102:58:46"},"nodeType":"YulFunctionCall","src":"4102:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4095:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4267:3:46"}],"functionName":{"name":"store_literal_in_memory_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d","nodeType":"YulIdentifier","src":"4178:88:46"},"nodeType":"YulFunctionCall","src":"4178:93:46"},"nodeType":"YulExpressionStatement","src":"4178:93:46"},{"nodeType":"YulAssignment","src":"4280:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4291:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"4296:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4287:3:46"},"nodeType":"YulFunctionCall","src":"4287:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"4280:3:46"}]}]},"name":"abi_encode_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"4073:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"4081:3:46","type":""}],"src":"3939:366:46"},{"body":{"nodeType":"YulBlock","src":"4457:220:46","statements":[{"nodeType":"YulAssignment","src":"4467:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4533:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"4538:2:46","type":"","value":"42"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"4474:58:46"},"nodeType":"YulFunctionCall","src":"4474:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4467:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4639:3:46"}],"functionName":{"name":"store_literal_in_memory_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc","nodeType":"YulIdentifier","src":"4550:88:46"},"nodeType":"YulFunctionCall","src":"4550:93:46"},"nodeType":"YulExpressionStatement","src":"4550:93:46"},{"nodeType":"YulAssignment","src":"4652:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4663:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"4668:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4659:3:46"},"nodeType":"YulFunctionCall","src":"4659:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"4652:3:46"}]}]},"name":"abi_encode_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"4445:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"4453:3:46","type":""}],"src":"4311:366:46"},{"body":{"nodeType":"YulBlock","src":"4829:220:46","statements":[{"nodeType":"YulAssignment","src":"4839:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4905:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"4910:2:46","type":"","value":"27"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"4846:58:46"},"nodeType":"YulFunctionCall","src":"4846:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4839:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5011:3:46"}],"functionName":{"name":"store_literal_in_memory_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2","nodeType":"YulIdentifier","src":"4922:88:46"},"nodeType":"YulFunctionCall","src":"4922:93:46"},"nodeType":"YulExpressionStatement","src":"4922:93:46"},{"nodeType":"YulAssignment","src":"5024:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5035:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5040:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5031:3:46"},"nodeType":"YulFunctionCall","src":"5031:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"5024:3:46"}]}]},"name":"abi_encode_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"4817:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"4825:3:46","type":""}],"src":"4683:366:46"},{"body":{"nodeType":"YulBlock","src":"5201:220:46","statements":[{"nodeType":"YulAssignment","src":"5211:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5277:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5282:2:46","type":"","value":"32"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5218:58:46"},"nodeType":"YulFunctionCall","src":"5218:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5211:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5383:3:46"}],"functionName":{"name":"store_literal_in_memory_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a","nodeType":"YulIdentifier","src":"5294:88:46"},"nodeType":"YulFunctionCall","src":"5294:93:46"},"nodeType":"YulExpressionStatement","src":"5294:93:46"},{"nodeType":"YulAssignment","src":"5396:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5407:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5412:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5403:3:46"},"nodeType":"YulFunctionCall","src":"5403:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"5396:3:46"}]}]},"name":"abi_encode_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5189:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"5197:3:46","type":""}],"src":"5055:366:46"},{"body":{"nodeType":"YulBlock","src":"5573:220:46","statements":[{"nodeType":"YulAssignment","src":"5583:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5649:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5654:2:46","type":"","value":"27"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5590:58:46"},"nodeType":"YulFunctionCall","src":"5590:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5583:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5755:3:46"}],"functionName":{"name":"store_literal_in_memory_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f","nodeType":"YulIdentifier","src":"5666:88:46"},"nodeType":"YulFunctionCall","src":"5666:93:46"},"nodeType":"YulExpressionStatement","src":"5666:93:46"},{"nodeType":"YulAssignment","src":"5768:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5779:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5784:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5775:3:46"},"nodeType":"YulFunctionCall","src":"5775:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"5768:3:46"}]}]},"name":"abi_encode_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5561:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"5569:3:46","type":""}],"src":"5427:366:46"},{"body":{"nodeType":"YulBlock","src":"5945:220:46","statements":[{"nodeType":"YulAssignment","src":"5955:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6021:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6026:2:46","type":"","value":"31"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5962:58:46"},"nodeType":"YulFunctionCall","src":"5962:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5955:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6127:3:46"}],"functionName":{"name":"store_literal_in_memory_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084","nodeType":"YulIdentifier","src":"6038:88:46"},"nodeType":"YulFunctionCall","src":"6038:93:46"},"nodeType":"YulExpressionStatement","src":"6038:93:46"},{"nodeType":"YulAssignment","src":"6140:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6151:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6156:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6147:3:46"},"nodeType":"YulFunctionCall","src":"6147:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"6140:3:46"}]}]},"name":"abi_encode_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"5933:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"5941:3:46","type":""}],"src":"5799:366:46"},{"body":{"nodeType":"YulBlock","src":"6317:220:46","statements":[{"nodeType":"YulAssignment","src":"6327:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6393:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6398:2:46","type":"","value":"36"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"6334:58:46"},"nodeType":"YulFunctionCall","src":"6334:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6327:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6499:3:46"}],"functionName":{"name":"store_literal_in_memory_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8","nodeType":"YulIdentifier","src":"6410:88:46"},"nodeType":"YulFunctionCall","src":"6410:93:46"},"nodeType":"YulExpressionStatement","src":"6410:93:46"},{"nodeType":"YulAssignment","src":"6512:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6523:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6528:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6519:3:46"},"nodeType":"YulFunctionCall","src":"6519:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"6512:3:46"}]}]},"name":"abi_encode_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"6305:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"6313:3:46","type":""}],"src":"6171:366:46"},{"body":{"nodeType":"YulBlock","src":"6689:220:46","statements":[{"nodeType":"YulAssignment","src":"6699:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6765:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6770:2:46","type":"","value":"26"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"6706:58:46"},"nodeType":"YulFunctionCall","src":"6706:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6699:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6871:3:46"}],"functionName":{"name":"store_literal_in_memory_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65","nodeType":"YulIdentifier","src":"6782:88:46"},"nodeType":"YulFunctionCall","src":"6782:93:46"},"nodeType":"YulExpressionStatement","src":"6782:93:46"},{"nodeType":"YulAssignment","src":"6884:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6895:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6900:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6891:3:46"},"nodeType":"YulFunctionCall","src":"6891:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"6884:3:46"}]}]},"name":"abi_encode_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"6677:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"6685:3:46","type":""}],"src":"6543:366:46"},{"body":{"nodeType":"YulBlock","src":"7049:137:46","statements":[{"nodeType":"YulAssignment","src":"7060:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"7147:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"7156:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"7067:79:46"},"nodeType":"YulFunctionCall","src":"7067:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7060:3:46"}]},{"nodeType":"YulAssignment","src":"7170:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"7177:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"7170:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"7028:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"7034:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7045:3:46","type":""}],"src":"6915:271:46"},{"body":{"nodeType":"YulBlock","src":"7290:124:46","statements":[{"nodeType":"YulAssignment","src":"7300:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7312:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7323:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7308:3:46"},"nodeType":"YulFunctionCall","src":"7308:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7300:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"7380:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7393:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7404:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7389:3:46"},"nodeType":"YulFunctionCall","src":"7389:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"7336:43:46"},"nodeType":"YulFunctionCall","src":"7336:71:46"},"nodeType":"YulExpressionStatement","src":"7336:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7262:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"7274:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"7285:4:46","type":""}],"src":"7192:222:46"},{"body":{"nodeType":"YulBlock","src":"7512:118:46","statements":[{"nodeType":"YulAssignment","src":"7522:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7534:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7545:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7530:3:46"},"nodeType":"YulFunctionCall","src":"7530:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7522:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"7596:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7609:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7620:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7605:3:46"},"nodeType":"YulFunctionCall","src":"7605:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulIdentifier","src":"7558:37:46"},"nodeType":"YulFunctionCall","src":"7558:65:46"},"nodeType":"YulExpressionStatement","src":"7558:65:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7484:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"7496:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"7507:4:46","type":""}],"src":"7420:210:46"},{"body":{"nodeType":"YulBlock","src":"7752:193:46","statements":[{"nodeType":"YulAssignment","src":"7762:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7774:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7785:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7770:3:46"},"nodeType":"YulFunctionCall","src":"7770:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7762:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7809:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7820:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7805:3:46"},"nodeType":"YulFunctionCall","src":"7805:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"7828:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"7834:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"7824:3:46"},"nodeType":"YulFunctionCall","src":"7824:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7798:6:46"},"nodeType":"YulFunctionCall","src":"7798:47:46"},"nodeType":"YulExpressionStatement","src":"7798:47:46"},{"nodeType":"YulAssignment","src":"7854:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"7924:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"7933:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7862:61:46"},"nodeType":"YulFunctionCall","src":"7862:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7854:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7724:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"7736:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"7747:4:46","type":""}],"src":"7636:309:46"},{"body":{"nodeType":"YulBlock","src":"8122:248:46","statements":[{"nodeType":"YulAssignment","src":"8132:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8144:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"8155:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8140:3:46"},"nodeType":"YulFunctionCall","src":"8140:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"8132:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8179:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"8190:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8175:3:46"},"nodeType":"YulFunctionCall","src":"8175:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"8198:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"8204:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8194:3:46"},"nodeType":"YulFunctionCall","src":"8194:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8168:6:46"},"nodeType":"YulFunctionCall","src":"8168:47:46"},"nodeType":"YulExpressionStatement","src":"8168:47:46"},{"nodeType":"YulAssignment","src":"8224:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"8358:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8232:124:46"},"nodeType":"YulFunctionCall","src":"8232:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"8224:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8102:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"8117:4:46","type":""}],"src":"7951:419:46"},{"body":{"nodeType":"YulBlock","src":"8547:248:46","statements":[{"nodeType":"YulAssignment","src":"8557:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8569:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"8580:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8565:3:46"},"nodeType":"YulFunctionCall","src":"8565:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"8557:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8604:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"8615:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8600:3:46"},"nodeType":"YulFunctionCall","src":"8600:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"8623:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"8629:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8619:3:46"},"nodeType":"YulFunctionCall","src":"8619:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8593:6:46"},"nodeType":"YulFunctionCall","src":"8593:47:46"},"nodeType":"YulExpressionStatement","src":"8593:47:46"},{"nodeType":"YulAssignment","src":"8649:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"8783:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8657:124:46"},"nodeType":"YulFunctionCall","src":"8657:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"8649:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8527:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"8542:4:46","type":""}],"src":"8376:419:46"},{"body":{"nodeType":"YulBlock","src":"8972:248:46","statements":[{"nodeType":"YulAssignment","src":"8982:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8994:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9005:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8990:3:46"},"nodeType":"YulFunctionCall","src":"8990:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"8982:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9029:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9040:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9025:3:46"},"nodeType":"YulFunctionCall","src":"9025:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"9048:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9054:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9044:3:46"},"nodeType":"YulFunctionCall","src":"9044:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9018:6:46"},"nodeType":"YulFunctionCall","src":"9018:47:46"},"nodeType":"YulExpressionStatement","src":"9018:47:46"},{"nodeType":"YulAssignment","src":"9074:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"9208:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"9082:124:46"},"nodeType":"YulFunctionCall","src":"9082:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9074:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8952:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"8967:4:46","type":""}],"src":"8801:419:46"},{"body":{"nodeType":"YulBlock","src":"9397:248:46","statements":[{"nodeType":"YulAssignment","src":"9407:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9419:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9430:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9415:3:46"},"nodeType":"YulFunctionCall","src":"9415:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9407:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9454:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9465:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9450:3:46"},"nodeType":"YulFunctionCall","src":"9450:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"9473:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9479:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9469:3:46"},"nodeType":"YulFunctionCall","src":"9469:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9443:6:46"},"nodeType":"YulFunctionCall","src":"9443:47:46"},"nodeType":"YulExpressionStatement","src":"9443:47:46"},{"nodeType":"YulAssignment","src":"9499:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"9633:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"9507:124:46"},"nodeType":"YulFunctionCall","src":"9507:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9499:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9377:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"9392:4:46","type":""}],"src":"9226:419:46"},{"body":{"nodeType":"YulBlock","src":"9822:248:46","statements":[{"nodeType":"YulAssignment","src":"9832:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9844:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9855:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9840:3:46"},"nodeType":"YulFunctionCall","src":"9840:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9832:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9879:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9890:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9875:3:46"},"nodeType":"YulFunctionCall","src":"9875:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"9898:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9904:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9894:3:46"},"nodeType":"YulFunctionCall","src":"9894:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9868:6:46"},"nodeType":"YulFunctionCall","src":"9868:47:46"},"nodeType":"YulExpressionStatement","src":"9868:47:46"},{"nodeType":"YulAssignment","src":"9924:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"10058:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"9932:124:46"},"nodeType":"YulFunctionCall","src":"9932:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9924:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9802:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"9817:4:46","type":""}],"src":"9651:419:46"},{"body":{"nodeType":"YulBlock","src":"10247:248:46","statements":[{"nodeType":"YulAssignment","src":"10257:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10269:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10280:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10265:3:46"},"nodeType":"YulFunctionCall","src":"10265:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10257:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10304:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10315:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10300:3:46"},"nodeType":"YulFunctionCall","src":"10300:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"10323:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"10329:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"10319:3:46"},"nodeType":"YulFunctionCall","src":"10319:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10293:6:46"},"nodeType":"YulFunctionCall","src":"10293:47:46"},"nodeType":"YulExpressionStatement","src":"10293:47:46"},{"nodeType":"YulAssignment","src":"10349:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"10483:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"10357:124:46"},"nodeType":"YulFunctionCall","src":"10357:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10349:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10227:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"10242:4:46","type":""}],"src":"10076:419:46"},{"body":{"nodeType":"YulBlock","src":"10672:248:46","statements":[{"nodeType":"YulAssignment","src":"10682:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10694:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10705:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10690:3:46"},"nodeType":"YulFunctionCall","src":"10690:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10682:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10729:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10740:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10725:3:46"},"nodeType":"YulFunctionCall","src":"10725:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"10748:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"10754:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"10744:3:46"},"nodeType":"YulFunctionCall","src":"10744:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10718:6:46"},"nodeType":"YulFunctionCall","src":"10718:47:46"},"nodeType":"YulExpressionStatement","src":"10718:47:46"},{"nodeType":"YulAssignment","src":"10774:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"10908:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"10782:124:46"},"nodeType":"YulFunctionCall","src":"10782:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10774:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10652:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"10667:4:46","type":""}],"src":"10501:419:46"},{"body":{"nodeType":"YulBlock","src":"11097:248:46","statements":[{"nodeType":"YulAssignment","src":"11107:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11119:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11130:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11115:3:46"},"nodeType":"YulFunctionCall","src":"11115:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11107:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11154:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11165:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11150:3:46"},"nodeType":"YulFunctionCall","src":"11150:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"11173:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"11179:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"11169:3:46"},"nodeType":"YulFunctionCall","src":"11169:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11143:6:46"},"nodeType":"YulFunctionCall","src":"11143:47:46"},"nodeType":"YulExpressionStatement","src":"11143:47:46"},{"nodeType":"YulAssignment","src":"11199:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"11333:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"11207:124:46"},"nodeType":"YulFunctionCall","src":"11207:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11199:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11077:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"11092:4:46","type":""}],"src":"10926:419:46"},{"body":{"nodeType":"YulBlock","src":"11522:248:46","statements":[{"nodeType":"YulAssignment","src":"11532:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11544:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11555:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11540:3:46"},"nodeType":"YulFunctionCall","src":"11540:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11532:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11579:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11590:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11575:3:46"},"nodeType":"YulFunctionCall","src":"11575:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"11598:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"11604:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"11594:3:46"},"nodeType":"YulFunctionCall","src":"11594:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11568:6:46"},"nodeType":"YulFunctionCall","src":"11568:47:46"},"nodeType":"YulExpressionStatement","src":"11568:47:46"},{"nodeType":"YulAssignment","src":"11624:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"11758:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"11632:124:46"},"nodeType":"YulFunctionCall","src":"11632:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11624:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11502:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"11517:4:46","type":""}],"src":"11351:419:46"},{"body":{"nodeType":"YulBlock","src":"11817:88:46","statements":[{"nodeType":"YulAssignment","src":"11827:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"11837:18:46"},"nodeType":"YulFunctionCall","src":"11837:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11827:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11886:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"11894:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"11866:19:46"},"nodeType":"YulFunctionCall","src":"11866:33:46"},"nodeType":"YulExpressionStatement","src":"11866:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"11801:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"11810:6:46","type":""}],"src":"11776:129:46"},{"body":{"nodeType":"YulBlock","src":"11951:35:46","statements":[{"nodeType":"YulAssignment","src":"11961:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"11977:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11971:5:46"},"nodeType":"YulFunctionCall","src":"11971:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11961:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"11944:6:46","type":""}],"src":"11911:75:46"},{"body":{"nodeType":"YulBlock","src":"12058:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"12163:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"12165:16:46"},"nodeType":"YulFunctionCall","src":"12165:18:46"},"nodeType":"YulExpressionStatement","src":"12165:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"12135:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12143:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"12132:2:46"},"nodeType":"YulFunctionCall","src":"12132:30:46"},"nodeType":"YulIf","src":"12129:56:46"},{"nodeType":"YulAssignment","src":"12195:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"12225:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"12203:21:46"},"nodeType":"YulFunctionCall","src":"12203:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"12195:4:46"}]},{"nodeType":"YulAssignment","src":"12269:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"12281:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"12287:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12277:3:46"},"nodeType":"YulFunctionCall","src":"12277:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"12269:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"12042:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"12053:4:46","type":""}],"src":"11992:307:46"},{"body":{"nodeType":"YulBlock","src":"12363:40:46","statements":[{"nodeType":"YulAssignment","src":"12374:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12390:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"12384:5:46"},"nodeType":"YulFunctionCall","src":"12384:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"12374:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12346:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"12356:6:46","type":""}],"src":"12305:98:46"},{"body":{"nodeType":"YulBlock","src":"12504:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12521:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"12526:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12514:6:46"},"nodeType":"YulFunctionCall","src":"12514:19:46"},"nodeType":"YulExpressionStatement","src":"12514:19:46"},{"nodeType":"YulAssignment","src":"12542:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12561:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12566:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12557:3:46"},"nodeType":"YulFunctionCall","src":"12557:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"12542:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"12476:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"12481:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"12492:11:46","type":""}],"src":"12409:168:46"},{"body":{"nodeType":"YulBlock","src":"12696:34:46","statements":[{"nodeType":"YulAssignment","src":"12706:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"12721:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"12706:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"12668:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"12673:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"12684:11:46","type":""}],"src":"12583:147:46"},{"body":{"nodeType":"YulBlock","src":"12832:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12849:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"12854:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12842:6:46"},"nodeType":"YulFunctionCall","src":"12842:19:46"},"nodeType":"YulExpressionStatement","src":"12842:19:46"},{"nodeType":"YulAssignment","src":"12870:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12889:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12894:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12885:3:46"},"nodeType":"YulFunctionCall","src":"12885:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"12870:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"12804:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"12809:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"12820:11:46","type":""}],"src":"12736:169:46"},{"body":{"nodeType":"YulBlock","src":"12956:51:46","statements":[{"nodeType":"YulAssignment","src":"12966:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12995:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"12977:17:46"},"nodeType":"YulFunctionCall","src":"12977:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"12966:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12938:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"12948:7:46","type":""}],"src":"12911:96:46"},{"body":{"nodeType":"YulBlock","src":"13055:48:46","statements":[{"nodeType":"YulAssignment","src":"13065:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13090:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"13083:6:46"},"nodeType":"YulFunctionCall","src":"13083:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"13076:6:46"},"nodeType":"YulFunctionCall","src":"13076:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"13065:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13037:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"13047:7:46","type":""}],"src":"13013:90:46"},{"body":{"nodeType":"YulBlock","src":"13154:32:46","statements":[{"nodeType":"YulAssignment","src":"13164:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"13175:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"13164:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13136:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"13146:7:46","type":""}],"src":"13109:77:46"},{"body":{"nodeType":"YulBlock","src":"13237:81:46","statements":[{"nodeType":"YulAssignment","src":"13247:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13262:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"13269:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"13258:3:46"},"nodeType":"YulFunctionCall","src":"13258:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"13247:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"13219:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"13229:7:46","type":""}],"src":"13192:126:46"},{"body":{"nodeType":"YulBlock","src":"13375:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"13398:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"13403:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"13408:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"13385:12:46"},"nodeType":"YulFunctionCall","src":"13385:30:46"},"nodeType":"YulExpressionStatement","src":"13385:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"13456:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"13461:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13452:3:46"},"nodeType":"YulFunctionCall","src":"13452:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"13470:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13445:6:46"},"nodeType":"YulFunctionCall","src":"13445:27:46"},"nodeType":"YulExpressionStatement","src":"13445:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"13357:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"13362:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"13367:6:46","type":""}],"src":"13324:154:46"},{"body":{"nodeType":"YulBlock","src":"13533:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13543:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"13552:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"13547:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"13612:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"13637:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"13642:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13633:3:46"},"nodeType":"YulFunctionCall","src":"13633:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"13656:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"13661:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13652:3:46"},"nodeType":"YulFunctionCall","src":"13652:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"13646:5:46"},"nodeType":"YulFunctionCall","src":"13646:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13626:6:46"},"nodeType":"YulFunctionCall","src":"13626:39:46"},"nodeType":"YulExpressionStatement","src":"13626:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"13573:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"13576:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"13570:2:46"},"nodeType":"YulFunctionCall","src":"13570:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"13584:19:46","statements":[{"nodeType":"YulAssignment","src":"13586:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"13595:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"13598:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13591:3:46"},"nodeType":"YulFunctionCall","src":"13591:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"13586:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"13566:3:46","statements":[]},"src":"13562:113:46"},{"body":{"nodeType":"YulBlock","src":"13709:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"13759:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"13764:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13755:3:46"},"nodeType":"YulFunctionCall","src":"13755:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"13773:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13748:6:46"},"nodeType":"YulFunctionCall","src":"13748:27:46"},"nodeType":"YulExpressionStatement","src":"13748:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"13690:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"13693:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"13687:2:46"},"nodeType":"YulFunctionCall","src":"13687:13:46"},"nodeType":"YulIf","src":"13684:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"13515:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"13520:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"13525:6:46","type":""}],"src":"13484:307:46"},{"body":{"nodeType":"YulBlock","src":"13840:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13850:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"13872:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"13902:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"13880:21:46"},"nodeType":"YulFunctionCall","src":"13880:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13868:3:46"},"nodeType":"YulFunctionCall","src":"13868:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"13854:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"14019:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"14021:16:46"},"nodeType":"YulFunctionCall","src":"14021:18:46"},"nodeType":"YulExpressionStatement","src":"14021:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"13962:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"13974:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"13959:2:46"},"nodeType":"YulFunctionCall","src":"13959:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"13998:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"14010:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"13995:2:46"},"nodeType":"YulFunctionCall","src":"13995:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"13956:2:46"},"nodeType":"YulFunctionCall","src":"13956:62:46"},"nodeType":"YulIf","src":"13953:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14057:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"14061:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14050:6:46"},"nodeType":"YulFunctionCall","src":"14050:22:46"},"nodeType":"YulExpressionStatement","src":"14050:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"13826:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"13834:4:46","type":""}],"src":"13797:281:46"},{"body":{"nodeType":"YulBlock","src":"14112:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14129:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"14132:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14122:6:46"},"nodeType":"YulFunctionCall","src":"14122:88:46"},"nodeType":"YulExpressionStatement","src":"14122:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14226:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"14229:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14219:6:46"},"nodeType":"YulFunctionCall","src":"14219:15:46"},"nodeType":"YulExpressionStatement","src":"14219:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14250:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"14253:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"14243:6:46"},"nodeType":"YulFunctionCall","src":"14243:15:46"},"nodeType":"YulExpressionStatement","src":"14243:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"14084:180:46"},{"body":{"nodeType":"YulBlock","src":"14359:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14376:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"14379:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"14369:6:46"},"nodeType":"YulFunctionCall","src":"14369:12:46"},"nodeType":"YulExpressionStatement","src":"14369:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"14270:117:46"},{"body":{"nodeType":"YulBlock","src":"14482:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14499:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"14502:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"14492:6:46"},"nodeType":"YulFunctionCall","src":"14492:12:46"},"nodeType":"YulExpressionStatement","src":"14492:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"14393:117:46"},{"body":{"nodeType":"YulBlock","src":"14605:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14622:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"14625:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"14615:6:46"},"nodeType":"YulFunctionCall","src":"14615:12:46"},"nodeType":"YulExpressionStatement","src":"14615:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"14516:117:46"},{"body":{"nodeType":"YulBlock","src":"14728:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14745:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"14748:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"14738:6:46"},"nodeType":"YulFunctionCall","src":"14738:12:46"},"nodeType":"YulExpressionStatement","src":"14738:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"14639:117:46"},{"body":{"nodeType":"YulBlock","src":"14810:54:46","statements":[{"nodeType":"YulAssignment","src":"14820:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14838:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"14845:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14834:3:46"},"nodeType":"YulFunctionCall","src":"14834:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14854:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"14850:3:46"},"nodeType":"YulFunctionCall","src":"14850:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"14830:3:46"},"nodeType":"YulFunctionCall","src":"14830:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"14820:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"14793:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"14803:6:46","type":""}],"src":"14762:102:46"},{"body":{"nodeType":"YulBlock","src":"14976:114:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"14998:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15006:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14994:3:46"},"nodeType":"YulFunctionCall","src":"14994:14:46"},{"hexValue":"5769746e657450726f78793a20756e61626c6520746f20696e697469616c697a","kind":"string","nodeType":"YulLiteral","src":"15010:34:46","type":"","value":"WitnetProxy: unable to initializ"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14987:6:46"},"nodeType":"YulFunctionCall","src":"14987:58:46"},"nodeType":"YulExpressionStatement","src":"14987:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15066:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15074:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15062:3:46"},"nodeType":"YulFunctionCall","src":"15062:15:46"},{"hexValue":"65","kind":"string","nodeType":"YulLiteral","src":"15079:3:46","type":"","value":"e"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15055:6:46"},"nodeType":"YulFunctionCall","src":"15055:28:46"},"nodeType":"YulExpressionStatement","src":"15055:28:46"}]},"name":"store_literal_in_memory_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"14968:6:46","type":""}],"src":"14870:220:46"},{"body":{"nodeType":"YulBlock","src":"15202:115:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15224:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15232:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15220:3:46"},"nodeType":"YulFunctionCall","src":"15220:14:46"},{"hexValue":"5769746e657450726f78793a206e6f207472616e736665727320616363657074","kind":"string","nodeType":"YulLiteral","src":"15236:34:46","type":"","value":"WitnetProxy: no transfers accept"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15213:6:46"},"nodeType":"YulFunctionCall","src":"15213:58:46"},"nodeType":"YulExpressionStatement","src":"15213:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15292:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15300:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15288:3:46"},"nodeType":"YulFunctionCall","src":"15288:15:46"},{"hexValue":"6564","kind":"string","nodeType":"YulLiteral","src":"15305:4:46","type":"","value":"ed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15281:6:46"},"nodeType":"YulFunctionCall","src":"15281:29:46"},"nodeType":"YulExpressionStatement","src":"15281:29:46"}]},"name":"store_literal_in_memory_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"15194:6:46","type":""}],"src":"15096:221:46"},{"body":{"nodeType":"YulBlock","src":"15429:123:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15451:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15459:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15447:3:46"},"nodeType":"YulFunctionCall","src":"15447:14:46"},{"hexValue":"5769746e657450726f78793a20756e61626c6520746f20636865636b20757067","kind":"string","nodeType":"YulLiteral","src":"15463:34:46","type":"","value":"WitnetProxy: unable to check upg"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15440:6:46"},"nodeType":"YulFunctionCall","src":"15440:58:46"},"nodeType":"YulExpressionStatement","src":"15440:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15519:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15527:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15515:3:46"},"nodeType":"YulFunctionCall","src":"15515:15:46"},{"hexValue":"7261646162696c697479","kind":"string","nodeType":"YulLiteral","src":"15532:12:46","type":"","value":"radability"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15508:6:46"},"nodeType":"YulFunctionCall","src":"15508:37:46"},"nodeType":"YulExpressionStatement","src":"15508:37:46"}]},"name":"store_literal_in_memory_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"15421:6:46","type":""}],"src":"15323:229:46"},{"body":{"nodeType":"YulBlock","src":"15664:71:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15686:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15694:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15682:3:46"},"nodeType":"YulFunctionCall","src":"15682:14:46"},{"hexValue":"5769746e657450726f78793a206e6f7420617574686f72697a6564","kind":"string","nodeType":"YulLiteral","src":"15698:29:46","type":"","value":"WitnetProxy: not authorized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15675:6:46"},"nodeType":"YulFunctionCall","src":"15675:53:46"},"nodeType":"YulExpressionStatement","src":"15675:53:46"}]},"name":"store_literal_in_memory_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"15656:6:46","type":""}],"src":"15558:177:46"},{"body":{"nodeType":"YulBlock","src":"15847:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15869:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15877:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15865:3:46"},"nodeType":"YulFunctionCall","src":"15865:14:46"},{"hexValue":"5769746e657450726f78793a206e756c6c20696d706c656d656e746174696f6e","kind":"string","nodeType":"YulLiteral","src":"15881:34:46","type":"","value":"WitnetProxy: null implementation"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15858:6:46"},"nodeType":"YulFunctionCall","src":"15858:58:46"},"nodeType":"YulExpressionStatement","src":"15858:58:46"}]},"name":"store_literal_in_memory_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"15839:6:46","type":""}],"src":"15741:182:46"},{"body":{"nodeType":"YulBlock","src":"16035:71:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"16057:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16065:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16053:3:46"},"nodeType":"YulFunctionCall","src":"16053:14:46"},{"hexValue":"5769746e657450726f78793a206e6f742075706772616461626c65","kind":"string","nodeType":"YulLiteral","src":"16069:29:46","type":"","value":"WitnetProxy: not upgradable"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16046:6:46"},"nodeType":"YulFunctionCall","src":"16046:53:46"},"nodeType":"YulExpressionStatement","src":"16046:53:46"}]},"name":"store_literal_in_memory_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"16027:6:46","type":""}],"src":"15929:177:46"},{"body":{"nodeType":"YulBlock","src":"16218:75:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"16240:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16248:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16236:3:46"},"nodeType":"YulFunctionCall","src":"16236:14:46"},{"hexValue":"5769746e657450726f78793a206e6f7468696e6720746f2075706772616465","kind":"string","nodeType":"YulLiteral","src":"16252:33:46","type":"","value":"WitnetProxy: nothing to upgrade"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16229:6:46"},"nodeType":"YulFunctionCall","src":"16229:57:46"},"nodeType":"YulExpressionStatement","src":"16229:57:46"}]},"name":"store_literal_in_memory_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"16210:6:46","type":""}],"src":"16112:181:46"},{"body":{"nodeType":"YulBlock","src":"16405:117:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"16427:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16435:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16423:3:46"},"nodeType":"YulFunctionCall","src":"16423:14:46"},{"hexValue":"5769746e657450726f78793a2070726f786961626c655555494473206d69736d","kind":"string","nodeType":"YulLiteral","src":"16439:34:46","type":"","value":"WitnetProxy: proxiableUUIDs mism"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16416:6:46"},"nodeType":"YulFunctionCall","src":"16416:58:46"},"nodeType":"YulExpressionStatement","src":"16416:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"16495:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16503:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16491:3:46"},"nodeType":"YulFunctionCall","src":"16491:15:46"},{"hexValue":"61746368","kind":"string","nodeType":"YulLiteral","src":"16508:6:46","type":"","value":"atch"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16484:6:46"},"nodeType":"YulFunctionCall","src":"16484:31:46"},"nodeType":"YulExpressionStatement","src":"16484:31:46"}]},"name":"store_literal_in_memory_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"16397:6:46","type":""}],"src":"16299:223:46"},{"body":{"nodeType":"YulBlock","src":"16634:70:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"16656:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16664:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16652:3:46"},"nodeType":"YulFunctionCall","src":"16652:14:46"},{"hexValue":"5769746e657450726f78793a206e6f7420636f6d706c69616e74","kind":"string","nodeType":"YulLiteral","src":"16668:28:46","type":"","value":"WitnetProxy: not compliant"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16645:6:46"},"nodeType":"YulFunctionCall","src":"16645:52:46"},"nodeType":"YulExpressionStatement","src":"16645:52:46"}]},"name":"store_literal_in_memory_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"16626:6:46","type":""}],"src":"16528:176:46"},{"body":{"nodeType":"YulBlock","src":"16753:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"16810:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"16819:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"16822:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"16812:6:46"},"nodeType":"YulFunctionCall","src":"16812:12:46"},"nodeType":"YulExpressionStatement","src":"16812:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16776:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16801:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"16783:17:46"},"nodeType":"YulFunctionCall","src":"16783:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"16773:2:46"},"nodeType":"YulFunctionCall","src":"16773:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"16766:6:46"},"nodeType":"YulFunctionCall","src":"16766:43:46"},"nodeType":"YulIf","src":"16763:63:46"}]},"name":"validator_revert_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"16746:5:46","type":""}],"src":"16710:122:46"},{"body":{"nodeType":"YulBlock","src":"16878:76:46","statements":[{"body":{"nodeType":"YulBlock","src":"16932:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"16941:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"16944:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"16934:6:46"},"nodeType":"YulFunctionCall","src":"16934:12:46"},"nodeType":"YulExpressionStatement","src":"16934:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16901:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16923:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"16908:14:46"},"nodeType":"YulFunctionCall","src":"16908:21:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"16898:2:46"},"nodeType":"YulFunctionCall","src":"16898:32:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"16891:6:46"},"nodeType":"YulFunctionCall","src":"16891:40:46"},"nodeType":"YulIf","src":"16888:60:46"}]},"name":"validator_revert_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"16871:5:46","type":""}],"src":"16838:116:46"},{"body":{"nodeType":"YulBlock","src":"17003:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"17060:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"17069:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"17072:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"17062:6:46"},"nodeType":"YulFunctionCall","src":"17062:12:46"},"nodeType":"YulExpressionStatement","src":"17062:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17026:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17051:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"17033:17:46"},"nodeType":"YulFunctionCall","src":"17033:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"17023:2:46"},"nodeType":"YulFunctionCall","src":"17023:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"17016:6:46"},"nodeType":"YulFunctionCall","src":"17016:43:46"},"nodeType":"YulIf","src":"17013:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"16996:5:46","type":""}],"src":"16960:122:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\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_bool_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bool(value)\n    }\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_tuple_t_addresst_bytes_memory_ptr(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := calldataload(add(headStart, 32))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value1 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\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_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_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    function abi_encode_t_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n        store_literal_in_memory_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 34)\n        store_literal_in_memory_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n        store_literal_in_memory_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n        store_literal_in_memory_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n        store_literal_in_memory_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n        store_literal_in_memory_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 31)\n        store_literal_in_memory_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n        store_literal_in_memory_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 26)\n        store_literal_in_memory_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\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_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_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_stringliteral_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c__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_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d__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_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc__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_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2__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_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a__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_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f__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_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084__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_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8__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_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65__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_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65_to_t_string_memory_ptr_fromStack( tail)\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_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 array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\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 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 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 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 panic_error_0x41() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x41)\n        revert(0, 0x24)\n    }\n\n    function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function store_literal_in_memory_55e9f07b665adf0e8c084720fbd831f583a2d75f5997894b64a77e28a0171f3c(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: unable to initializ\")\n\n        mstore(add(memPtr, 32), \"e\")\n\n    }\n\n    function store_literal_in_memory_774f1c1f39aa6307ffed1c232166bea02e6ab0d8771bdf0ac6a80de6ac5b053d(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: no transfers accept\")\n\n        mstore(add(memPtr, 32), \"ed\")\n\n    }\n\n    function store_literal_in_memory_7f859058ad3ee4e192700ff813ed67dc892a0c7de91510ee584a0ac25fc982fc(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: unable to check upg\")\n\n        mstore(add(memPtr, 32), \"radability\")\n\n    }\n\n    function store_literal_in_memory_ba8d4d661ce88eb2915ba133e6cad533938b754d7b66d8253879ef2c2193ecb2(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: not authorized\")\n\n    }\n\n    function store_literal_in_memory_d599eaa5e68d91d75c142446490ab9a15fd0284a41ce949219b5b4d8f267239a(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: null implementation\")\n\n    }\n\n    function store_literal_in_memory_d96132834a96bae5cb2f32cb07f13985dcde0f2358055c198eb3065af6c5aa7f(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: not upgradable\")\n\n    }\n\n    function store_literal_in_memory_e332eab1bae45430d1201a30c0d80d8fcb5570f9e70201a9eb7b229e17fd2084(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: nothing to upgrade\")\n\n    }\n\n    function store_literal_in_memory_f3c1ad1fa1688d47e62cc4dd5b4be101315ef47e38e05aa3a37a4ef2e1cec0a8(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: proxiableUUIDs mism\")\n\n        mstore(add(memPtr, 32), \"atch\")\n\n    }\n\n    function store_literal_in_memory_fe0c5d56f2e637bc6ae9d29f1058c00159080f3dd6202013ecdbcca6e4740a65(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetProxy: not compliant\")\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_bool(value) {\n        if iszero(eq(value, cleanup_t_bool(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}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"60806040526004361061002d5760003560e01c80635c60da1b146100a05780636fbc15e9146100cb5761006d565b3661006d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161006490610c84565b60405180910390fd5b6000610077610108565b905060405136600082376000803683855af43d806000843e816000811461009c578184f35b8184fd5b3480156100ac57600080fd5b506100b5610108565b6040516100c29190610c0c565b60405180910390f35b3480156100d757600080fd5b506100f260048036038101906100ed919061097c565b61013b565b6040516100ff9190610c27565b60405180910390f35b60006101126108a5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156101ac576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101a390610ce4565b60405180910390fd5b60006101b6610108565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461061e578073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561025b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161025290610d24565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16635479d9406040518163ffffffff1660e01b815260040160206040518083038186803b1580156102a157600080fd5b505afa9250505080156102d257506040513d601f19601f820116820180604052508101906102cf91906109d8565b60015b610311576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161030890610ca4565b60405180910390fd5b80610351576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034890610d04565b60405180910390fd5b506000808273ffffffffffffffffffffffffffffffffffffffff163360405160240161037d9190610c0c565b6040516020818303038152906040527f6b58960a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516104079190610bf5565b600060405180830381855af49150503d8060008114610442576040519150601f19603f3d011682016040523d82523d6000602084013e610447565b606091505b50915091508161048c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161048390610d64565b60405180910390fd5b808060200190518101906104a091906109d8565b6104df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104d690610cc4565b60405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b815260040160206040518083038186803b15801561052557600080fd5b505afa158015610539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055d9190610a05565b8373ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b815260040160206040518083038186803b1580156105a357600080fd5b505afa1580156105b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105db9190610a05565b1461061b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061290610d44565b60405180910390fd5b50505b60008473ffffffffffffffffffffffffffffffffffffffff16846040516024016106489190610c42565b6040516020818303038152906040527f439fab91000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516106d29190610bf5565b600060405180830381855af49150503d806000811461070d576040519150601f19603f3d011682016040523d82523d6000602084013e610712565b606091505b5050905080610756576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161074d90610c64565b60405180910390fd5b8461075f6108a5565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508473ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a28473ffffffffffffffffffffffffffffffffffffffff16635479d9406040518163ffffffff1660e01b815260040160206040518083038186803b15801561082957600080fd5b505afa92505050801561085a57506040513d601f19601f8201168201806040525081019061085791906109d8565b60015b610899576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161089090610d64565b60405180910390fd5b80935050505092915050565b60007f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc905090565b60006108e06108db84610da9565b610d84565b9050828152602081018484840111156108fc576108fb610f01565b5b610907848285610e5a565b509392505050565b60008135905061091e8161112a565b92915050565b60008151905061093381611141565b92915050565b60008151905061094881611158565b92915050565b600082601f83011261096357610962610efc565b5b81356109738482602086016108cd565b91505092915050565b6000806040838503121561099357610992610f0b565b5b60006109a18582860161090f565b925050602083013567ffffffffffffffff8111156109c2576109c1610f06565b5b6109ce8582860161094e565b9150509250929050565b6000602082840312156109ee576109ed610f0b565b5b60006109fc84828501610924565b91505092915050565b600060208284031215610a1b57610a1a610f0b565b5b6000610a2984828501610939565b91505092915050565b610a3b81610e12565b82525050565b610a4a81610e24565b82525050565b6000610a5b82610dda565b610a658185610de5565b9350610a75818560208601610e69565b610a7e81610f10565b840191505092915050565b6000610a9482610dda565b610a9e8185610df6565b9350610aae818560208601610e69565b80840191505092915050565b6000610ac7602183610e01565b9150610ad282610f21565b604082019050919050565b6000610aea602283610e01565b9150610af582610f70565b604082019050919050565b6000610b0d602a83610e01565b9150610b1882610fbf565b604082019050919050565b6000610b30601b83610e01565b9150610b3b8261100e565b602082019050919050565b6000610b53602083610e01565b9150610b5e82611037565b602082019050919050565b6000610b76601b83610e01565b9150610b8182611060565b602082019050919050565b6000610b99601f83610e01565b9150610ba482611089565b602082019050919050565b6000610bbc602483610e01565b9150610bc7826110b2565b604082019050919050565b6000610bdf601a83610e01565b9150610bea82611101565b602082019050919050565b6000610c018284610a89565b915081905092915050565b6000602082019050610c216000830184610a32565b92915050565b6000602082019050610c3c6000830184610a41565b92915050565b60006020820190508181036000830152610c5c8184610a50565b905092915050565b60006020820190508181036000830152610c7d81610aba565b9050919050565b60006020820190508181036000830152610c9d81610add565b9050919050565b60006020820190508181036000830152610cbd81610b00565b9050919050565b60006020820190508181036000830152610cdd81610b23565b9050919050565b60006020820190508181036000830152610cfd81610b46565b9050919050565b60006020820190508181036000830152610d1d81610b69565b9050919050565b60006020820190508181036000830152610d3d81610b8c565b9050919050565b60006020820190508181036000830152610d5d81610baf565b9050919050565b60006020820190508181036000830152610d7d81610bd2565b9050919050565b6000610d8e610d9f565b9050610d9a8282610e9c565b919050565b6000604051905090565b600067ffffffffffffffff821115610dc457610dc3610ecd565b5b610dcd82610f10565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b6000610e1d82610e3a565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b82818337600083830152505050565b60005b83811015610e87578082015181840152602081019050610e6c565b83811115610e96576000848401525b50505050565b610ea582610f10565b810181811067ffffffffffffffff82111715610ec457610ec3610ecd565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f5769746e657450726f78793a20756e61626c6520746f20696e697469616c697a60008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a206e6f207472616e73666572732061636365707460008201527f6564000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a20756e61626c6520746f20636865636b2075706760008201527f7261646162696c69747900000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a206e6f7420617574686f72697a65640000000000600082015250565b7f5769746e657450726f78793a206e756c6c20696d706c656d656e746174696f6e600082015250565b7f5769746e657450726f78793a206e6f742075706772616461626c650000000000600082015250565b7f5769746e657450726f78793a206e6f7468696e6720746f207570677261646500600082015250565b7f5769746e657450726f78793a2070726f786961626c655555494473206d69736d60008201527f6174636800000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657450726f78793a206e6f7420636f6d706c69616e74000000000000600082015250565b61113381610e12565b811461113e57600080fd5b50565b61114a81610e24565b811461115557600080fd5b50565b61116181610e30565b811461116c57600080fd5b5056fea26469706673582212204ab7787d72da28baaa9c9bc0d8bb9a171073217de443a926002a74b6cd7143c464736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2D JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x5C60DA1B EQ PUSH2 0xA0 JUMPI DUP1 PUSH4 0x6FBC15E9 EQ PUSH2 0xCB JUMPI PUSH2 0x6D JUMP JUMPDEST CALLDATASIZE PUSH2 0x6D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x64 SWAP1 PUSH2 0xC84 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x77 PUSH2 0x108 JUMP JUMPDEST SWAP1 POP PUSH1 0x40 MLOAD CALLDATASIZE PUSH1 0x0 DUP3 CALLDATACOPY PUSH1 0x0 DUP1 CALLDATASIZE DUP4 DUP6 GAS DELEGATECALL RETURNDATASIZE DUP1 PUSH1 0x0 DUP5 RETURNDATACOPY DUP2 PUSH1 0x0 DUP2 EQ PUSH2 0x9C JUMPI DUP2 DUP5 RETURN JUMPDEST DUP2 DUP5 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xAC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB5 PUSH2 0x108 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC2 SWAP2 SWAP1 PUSH2 0xC0C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xF2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xED SWAP2 SWAP1 PUSH2 0x97C JUMP JUMPDEST PUSH2 0x13B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xFF SWAP2 SWAP1 PUSH2 0xC27 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x112 PUSH2 0x8A5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1AC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A3 SWAP1 PUSH2 0xCE4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x1B6 PUSH2 0x108 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x61E JUMPI DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x25B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x252 SWAP1 PUSH2 0xD24 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5479D940 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 0x2A1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x2D2 JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x2CF SWAP2 SWAP1 PUSH2 0x9D8 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x311 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x308 SWAP1 PUSH2 0xCA4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH2 0x351 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x348 SWAP1 PUSH2 0xD04 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x37D SWAP2 SWAP1 PUSH2 0xC0C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x6B58960A00000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0x407 SWAP2 SWAP1 PUSH2 0xBF5 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x442 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x447 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP DUP2 PUSH2 0x48C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x483 SWAP1 PUSH2 0xD64 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x4A0 SWAP2 SWAP1 PUSH2 0x9D8 JUMP JUMPDEST PUSH2 0x4DF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4D6 SWAP1 PUSH2 0xCC4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x52D1902D 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 0x525 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x539 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 0x55D SWAP2 SWAP1 PUSH2 0xA05 JUMP JUMPDEST DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x52D1902D 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 0x5A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x5B7 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 0x5DB SWAP2 SWAP1 PUSH2 0xA05 JUMP JUMPDEST EQ PUSH2 0x61B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x612 SWAP1 PUSH2 0xD44 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP POP JUMPDEST PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x40 MLOAD PUSH1 0x24 ADD PUSH2 0x648 SWAP2 SWAP1 PUSH2 0xC42 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH32 0x439FAB9100000000000000000000000000000000000000000000000000000000 PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND PUSH1 0x20 DUP3 ADD DUP1 MLOAD PUSH28 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 DUP4 AND OR DUP4 MSTORE POP POP POP POP PUSH1 0x40 MLOAD PUSH2 0x6D2 SWAP2 SWAP1 PUSH2 0xBF5 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x70D JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x712 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP DUP1 PUSH2 0x756 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x74D SWAP1 PUSH2 0xC64 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH2 0x75F PUSH2 0x8A5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xBC7CD75A20EE27FD9ADEBAB32041F755214DBC6BFFA90CC0225B39DA2E5C2D3B PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x5479D940 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 0x829 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x85A JUMPI POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND DUP3 ADD DUP1 PUSH1 0x40 MSTORE POP DUP2 ADD SWAP1 PUSH2 0x857 SWAP2 SWAP1 PUSH2 0x9D8 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x899 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x890 SWAP1 PUSH2 0xD64 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x360894A13BA1A3210667C828492DB98DCA3E2076CC3735A920A3CA505D382BBC SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8E0 PUSH2 0x8DB DUP5 PUSH2 0xDA9 JUMP JUMPDEST PUSH2 0xD84 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x8FC JUMPI PUSH2 0x8FB PUSH2 0xF01 JUMP JUMPDEST JUMPDEST PUSH2 0x907 DUP5 DUP3 DUP6 PUSH2 0xE5A JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x91E DUP2 PUSH2 0x112A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x933 DUP2 PUSH2 0x1141 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x948 DUP2 PUSH2 0x1158 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x963 JUMPI PUSH2 0x962 PUSH2 0xEFC JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x973 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x8CD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x993 JUMPI PUSH2 0x992 PUSH2 0xF0B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x9A1 DUP6 DUP3 DUP7 ADD PUSH2 0x90F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x9C2 JUMPI PUSH2 0x9C1 PUSH2 0xF06 JUMP JUMPDEST JUMPDEST PUSH2 0x9CE DUP6 DUP3 DUP7 ADD PUSH2 0x94E JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x9EE JUMPI PUSH2 0x9ED PUSH2 0xF0B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x9FC DUP5 DUP3 DUP6 ADD PUSH2 0x924 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0xA1B JUMPI PUSH2 0xA1A PUSH2 0xF0B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0xA29 DUP5 DUP3 DUP6 ADD PUSH2 0x939 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0xA3B DUP2 PUSH2 0xE12 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0xA4A DUP2 PUSH2 0xE24 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA5B DUP3 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0xA65 DUP2 DUP6 PUSH2 0xDE5 JUMP JUMPDEST SWAP4 POP PUSH2 0xA75 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0xE69 JUMP JUMPDEST PUSH2 0xA7E DUP2 PUSH2 0xF10 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA94 DUP3 PUSH2 0xDDA JUMP JUMPDEST PUSH2 0xA9E DUP2 DUP6 PUSH2 0xDF6 JUMP JUMPDEST SWAP4 POP PUSH2 0xAAE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0xE69 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAC7 PUSH1 0x21 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xAD2 DUP3 PUSH2 0xF21 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAEA PUSH1 0x22 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xAF5 DUP3 PUSH2 0xF70 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB0D PUSH1 0x2A DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB18 DUP3 PUSH2 0xFBF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB30 PUSH1 0x1B DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB3B DUP3 PUSH2 0x100E JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB53 PUSH1 0x20 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB5E DUP3 PUSH2 0x1037 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB76 PUSH1 0x1B DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xB81 DUP3 PUSH2 0x1060 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xB99 PUSH1 0x1F DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xBA4 DUP3 PUSH2 0x1089 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBBC PUSH1 0x24 DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xBC7 DUP3 PUSH2 0x10B2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xBDF PUSH1 0x1A DUP4 PUSH2 0xE01 JUMP JUMPDEST SWAP2 POP PUSH2 0xBEA DUP3 PUSH2 0x1101 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xC01 DUP3 DUP5 PUSH2 0xA89 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC21 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xA32 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0xC3C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0xA41 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0xC5C DUP2 DUP5 PUSH2 0xA50 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 0xC7D DUP2 PUSH2 0xABA 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 0xC9D DUP2 PUSH2 0xADD 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 0xCBD DUP2 PUSH2 0xB00 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 0xCDD DUP2 PUSH2 0xB23 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 0xCFD DUP2 PUSH2 0xB46 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 0xD1D DUP2 PUSH2 0xB69 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 0xD3D DUP2 PUSH2 0xB8C 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 0xD5D DUP2 PUSH2 0xBAF 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 0xD7D DUP2 PUSH2 0xBD2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xD8E PUSH2 0xD9F JUMP JUMPDEST SWAP1 POP PUSH2 0xD9A DUP3 DUP3 PUSH2 0xE9C 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 0xDC4 JUMPI PUSH2 0xDC3 PUSH2 0xECD JUMP JUMPDEST JUMPDEST PUSH2 0xDCD DUP3 PUSH2 0xF10 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 DUP2 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 0xE1D DUP3 PUSH2 0xE3A 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 DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xE87 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0xE6C JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0xE96 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0xEA5 DUP3 PUSH2 0xF10 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0xEC4 JUMPI PUSH2 0xEC3 PUSH2 0xECD JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A20756E61626C6520746F20696E697469616C697A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6500000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F207472616E736665727320616363657074 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6564000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A20756E61626C6520746F20636865636B20757067 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7261646162696C69747900000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F7420617574686F72697A65640000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E756C6C20696D706C656D656E746174696F6E PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F742075706772616461626C650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F7468696E6720746F207570677261646500 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A2070726F786961626C655555494473206D69736D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6174636800000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657450726F78793A206E6F7420636F6D706C69616E74000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x1133 DUP2 PUSH2 0xE12 JUMP JUMPDEST DUP2 EQ PUSH2 0x113E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x114A DUP2 PUSH2 0xE24 JUMP JUMPDEST DUP2 EQ PUSH2 0x1155 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x1161 DUP2 PUSH2 0xE30 JUMP JUMPDEST DUP2 EQ PUSH2 0x116C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x4A 0xB7 PUSH25 0x7D72DA28BAAA9C9BC0D8BB9A171073217DE443A926002A74B6 0xCD PUSH18 0x43C464736F6C634300080700330000000000 ","sourceMap":"378:4863:13:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;821:44;;;;;;;;;;:::i;:::-;;;;;;;;378:4863;1032:23;1058:16;:14;:16::i;:::-;1032:42;;1418:4;1412:11;1457:14;1454:1;1449:3;1436:36;1560:1;1557;1541:14;1536:3;1519:15;1512:5;1499:63;1587:16;1639:4;1636:1;1631:3;1616:28;1664:6;1692:1;1687:116;;;;1943:4;1938:3;1931:17;1687:116;1779:4;1774:3;1767:17;2045:107;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2440:2395;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2045:107;2092:7;2118:12;:10;:12::i;:::-;:27;;;;;;;;;;;;2111:34;;2045:107;:::o;2440:2395::-;2535:4;2639:1;2609:32;;:18;:32;;;;2601:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;2689:26;2718:16;:14;:16::i;:::-;2689:45;;2778:1;2748:32;;:18;:32;;;2744:1258;;2898:18;2876:40;;:18;:40;;;;2868:84;;;;;;;;;;;;:::i;:::-;;;;;;;;;3064:18;3053:43;;;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;3049:257;;3239:52;;;;;;;;;;:::i;:::-;;;;;;;;3049:257;3154:13;3146:53;;;;;;;;;;;;:::i;:::-;;;;;;;;;3099:115;3416:15;3433:20;3457:18;:31;;3600:10;3506:122;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3457:185;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3415:227;;;;3664:10;3656:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;3738:7;3727:27;;;;;;;;;;;;:::i;:::-;3719:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3886:18;3875:44;;;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3836:18;3825:44;;;:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:96;3800:191;;;;;;;;;;;;:::i;:::-;;;;;;;;;2782:1220;;2744:1258;4084:20;4109:18;:31;;4232:9;4154:101;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4109:156;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4083:182;;;4283:15;4275:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;4458:18;4428:12;:10;:12::i;:::-;:27;;;:48;;;;;;;;;;;;;;;;;;4500:18;4491:28;;;;;;;;;;;;4643:18;4632:43;;;:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;4628:201;;4781:37;;;;;;;;;;:::i;:::-;;;;;;;;4628:201;4728:13;4721:20;;;;;2440:2395;;;;:::o;4955:283::-;4999:29;5156:66;5142:80;;4955:283;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;423:139::-;469:5;507:6;494:20;485:29;;523:33;550:5;523:33;:::i;:::-;423:139;;;;:::o;568:137::-;622:5;653:6;647:13;638:22;;669:30;693:5;669:30;:::i;:::-;568:137;;;;:::o;711:143::-;768:5;799:6;793:13;784:22;;815:33;842:5;815:33;:::i;:::-;711:143;;;;:::o;873:338::-;928:5;977:3;970:4;962:6;958:17;954:27;944:122;;985:79;;:::i;:::-;944:122;1102:6;1089:20;1127:78;1201:3;1193:6;1186:4;1178:6;1174:17;1127:78;:::i;:::-;1118:87;;934:277;873:338;;;;:::o;1217:652::-;1294:6;1302;1351:2;1339:9;1330:7;1326:23;1322:32;1319:119;;;1357:79;;:::i;:::-;1319:119;1477:1;1502:53;1547:7;1538:6;1527:9;1523:22;1502:53;:::i;:::-;1492:63;;1448:117;1632:2;1621:9;1617:18;1604:32;1663:18;1655:6;1652:30;1649:117;;;1685:79;;:::i;:::-;1649:117;1790:62;1844:7;1835:6;1824:9;1820:22;1790:62;:::i;:::-;1780:72;;1575:287;1217:652;;;;;:::o;1875:345::-;1942:6;1991:2;1979:9;1970:7;1966:23;1962:32;1959:119;;;1997:79;;:::i;:::-;1959:119;2117:1;2142:61;2195:7;2186:6;2175:9;2171:22;2142:61;:::i;:::-;2132:71;;2088:125;1875:345;;;;:::o;2226:351::-;2296:6;2345:2;2333:9;2324:7;2320:23;2316:32;2313:119;;;2351:79;;:::i;:::-;2313:119;2471:1;2496:64;2552:7;2543:6;2532:9;2528:22;2496:64;:::i;:::-;2486:74;;2442:128;2226:351;;;;:::o;2583:118::-;2670:24;2688:5;2670:24;:::i;:::-;2665:3;2658:37;2583:118;;:::o;2707:109::-;2788:21;2803:5;2788:21;:::i;:::-;2783:3;2776:34;2707:109;;:::o;2822:360::-;2908:3;2936:38;2968:5;2936:38;:::i;:::-;2990:70;3053:6;3048:3;2990:70;:::i;:::-;2983:77;;3069:52;3114:6;3109:3;3102:4;3095:5;3091:16;3069:52;:::i;:::-;3146:29;3168:6;3146:29;:::i;:::-;3141:3;3137:39;3130:46;;2912:270;2822:360;;;;:::o;3188:373::-;3292:3;3320:38;3352:5;3320:38;:::i;:::-;3374:88;3455:6;3450:3;3374:88;:::i;:::-;3367:95;;3471:52;3516:6;3511:3;3504:4;3497:5;3493:16;3471:52;:::i;:::-;3548:6;3543:3;3539:16;3532:23;;3296:265;3188:373;;;;:::o;3567:366::-;3709:3;3730:67;3794:2;3789:3;3730:67;:::i;:::-;3723:74;;3806:93;3895:3;3806:93;:::i;:::-;3924:2;3919:3;3915:12;3908:19;;3567:366;;;:::o;3939:::-;4081:3;4102:67;4166:2;4161:3;4102:67;:::i;:::-;4095:74;;4178:93;4267:3;4178:93;:::i;:::-;4296:2;4291:3;4287:12;4280:19;;3939:366;;;:::o;4311:::-;4453:3;4474:67;4538:2;4533:3;4474:67;:::i;:::-;4467:74;;4550:93;4639:3;4550:93;:::i;:::-;4668:2;4663:3;4659:12;4652:19;;4311:366;;;:::o;4683:::-;4825:3;4846:67;4910:2;4905:3;4846:67;:::i;:::-;4839:74;;4922:93;5011:3;4922:93;:::i;:::-;5040:2;5035:3;5031:12;5024:19;;4683:366;;;:::o;5055:::-;5197:3;5218:67;5282:2;5277:3;5218:67;:::i;:::-;5211:74;;5294:93;5383:3;5294:93;:::i;:::-;5412:2;5407:3;5403:12;5396:19;;5055:366;;;:::o;5427:::-;5569:3;5590:67;5654:2;5649:3;5590:67;:::i;:::-;5583:74;;5666:93;5755:3;5666:93;:::i;:::-;5784:2;5779:3;5775:12;5768:19;;5427:366;;;:::o;5799:::-;5941:3;5962:67;6026:2;6021:3;5962:67;:::i;:::-;5955:74;;6038:93;6127:3;6038:93;:::i;:::-;6156:2;6151:3;6147:12;6140:19;;5799:366;;;:::o;6171:::-;6313:3;6334:67;6398:2;6393:3;6334:67;:::i;:::-;6327:74;;6410:93;6499:3;6410:93;:::i;:::-;6528:2;6523:3;6519:12;6512:19;;6171:366;;;:::o;6543:::-;6685:3;6706:67;6770:2;6765:3;6706:67;:::i;:::-;6699:74;;6782:93;6871:3;6782:93;:::i;:::-;6900:2;6895:3;6891:12;6884:19;;6543:366;;;:::o;6915:271::-;7045:3;7067:93;7156:3;7147:6;7067:93;:::i;:::-;7060:100;;7177:3;7170:10;;6915:271;;;;:::o;7192:222::-;7285:4;7323:2;7312:9;7308:18;7300:26;;7336:71;7404:1;7393:9;7389:17;7380:6;7336:71;:::i;:::-;7192:222;;;;:::o;7420:210::-;7507:4;7545:2;7534:9;7530:18;7522:26;;7558:65;7620:1;7609:9;7605:17;7596:6;7558:65;:::i;:::-;7420:210;;;;:::o;7636:309::-;7747:4;7785:2;7774:9;7770:18;7762:26;;7834:9;7828:4;7824:20;7820:1;7809:9;7805:17;7798:47;7862:76;7933:4;7924:6;7862:76;:::i;:::-;7854:84;;7636:309;;;;:::o;7951:419::-;8117:4;8155:2;8144:9;8140:18;8132:26;;8204:9;8198:4;8194:20;8190:1;8179:9;8175:17;8168:47;8232:131;8358:4;8232:131;:::i;:::-;8224:139;;7951:419;;;:::o;8376:::-;8542:4;8580:2;8569:9;8565:18;8557:26;;8629:9;8623:4;8619:20;8615:1;8604:9;8600:17;8593:47;8657:131;8783:4;8657:131;:::i;:::-;8649:139;;8376:419;;;:::o;8801:::-;8967:4;9005:2;8994:9;8990:18;8982:26;;9054:9;9048:4;9044:20;9040:1;9029:9;9025:17;9018:47;9082:131;9208:4;9082:131;:::i;:::-;9074:139;;8801:419;;;:::o;9226:::-;9392:4;9430:2;9419:9;9415:18;9407:26;;9479:9;9473:4;9469:20;9465:1;9454:9;9450:17;9443:47;9507:131;9633:4;9507:131;:::i;:::-;9499:139;;9226:419;;;:::o;9651:::-;9817:4;9855:2;9844:9;9840:18;9832:26;;9904:9;9898:4;9894:20;9890:1;9879:9;9875:17;9868:47;9932:131;10058:4;9932:131;:::i;:::-;9924:139;;9651:419;;;:::o;10076:::-;10242:4;10280:2;10269:9;10265:18;10257:26;;10329:9;10323:4;10319:20;10315:1;10304:9;10300:17;10293:47;10357:131;10483:4;10357:131;:::i;:::-;10349:139;;10076:419;;;:::o;10501:::-;10667:4;10705:2;10694:9;10690:18;10682:26;;10754:9;10748:4;10744:20;10740:1;10729:9;10725:17;10718:47;10782:131;10908:4;10782:131;:::i;:::-;10774:139;;10501:419;;;:::o;10926:::-;11092:4;11130:2;11119:9;11115:18;11107:26;;11179:9;11173:4;11169:20;11165:1;11154:9;11150:17;11143:47;11207:131;11333:4;11207:131;:::i;:::-;11199:139;;10926:419;;;:::o;11351:::-;11517:4;11555:2;11544:9;11540:18;11532:26;;11604:9;11598:4;11594:20;11590:1;11579:9;11575:17;11568:47;11632:131;11758:4;11632:131;:::i;:::-;11624:139;;11351:419;;;:::o;11776:129::-;11810:6;11837:20;;:::i;:::-;11827:30;;11866:33;11894:4;11886:6;11866:33;:::i;:::-;11776:129;;;:::o;11911:75::-;11944:6;11977:2;11971:9;11961:19;;11911:75;:::o;11992:307::-;12053:4;12143:18;12135:6;12132:30;12129:56;;;12165:18;;:::i;:::-;12129:56;12203:29;12225:6;12203:29;:::i;:::-;12195:37;;12287:4;12281;12277:15;12269:23;;11992:307;;;:::o;12305:98::-;12356:6;12390:5;12384:12;12374:22;;12305:98;;;:::o;12409:168::-;12492:11;12526:6;12521:3;12514:19;12566:4;12561:3;12557:14;12542:29;;12409:168;;;;:::o;12583:147::-;12684:11;12721:3;12706:18;;12583:147;;;;:::o;12736:169::-;12820:11;12854:6;12849:3;12842:19;12894:4;12889:3;12885:14;12870:29;;12736:169;;;;:::o;12911:96::-;12948:7;12977:24;12995:5;12977:24;:::i;:::-;12966:35;;12911:96;;;:::o;13013:90::-;13047:7;13090:5;13083:13;13076:21;13065:32;;13013:90;;;:::o;13109:77::-;13146:7;13175:5;13164:16;;13109:77;;;:::o;13192:126::-;13229:7;13269:42;13262:5;13258:54;13247:65;;13192:126;;;:::o;13324:154::-;13408:6;13403:3;13398;13385:30;13470:1;13461:6;13456:3;13452:16;13445:27;13324:154;;;:::o;13484:307::-;13552:1;13562:113;13576:6;13573:1;13570:13;13562:113;;;13661:1;13656:3;13652:11;13646:18;13642:1;13637:3;13633:11;13626:39;13598:2;13595:1;13591:10;13586:15;;13562:113;;;13693:6;13690:1;13687:13;13684:101;;;13773:1;13764:6;13759:3;13755:16;13748:27;13684:101;13533:258;13484:307;;;:::o;13797:281::-;13880:27;13902:4;13880:27;:::i;:::-;13872:6;13868:40;14010:6;13998:10;13995:22;13974:18;13962:10;13959:34;13956:62;13953:88;;;14021:18;;:::i;:::-;13953:88;14061:10;14057:2;14050:22;13840:238;13797:281;;:::o;14084:180::-;14132:77;14129:1;14122:88;14229:4;14226:1;14219:15;14253:4;14250:1;14243:15;14270:117;14379:1;14376;14369:12;14393:117;14502:1;14499;14492:12;14516:117;14625:1;14622;14615:12;14639:117;14748:1;14745;14738:12;14762:102;14803:6;14854:2;14850:7;14845:2;14838:5;14834:14;14830:28;14820:38;;14762:102;;;:::o;14870:220::-;15010:34;15006:1;14998:6;14994:14;14987:58;15079:3;15074:2;15066:6;15062:15;15055:28;14870:220;:::o;15096:221::-;15236:34;15232:1;15224:6;15220:14;15213:58;15305:4;15300:2;15292:6;15288:15;15281:29;15096:221;:::o;15323:229::-;15463:34;15459:1;15451:6;15447:14;15440:58;15532:12;15527:2;15519:6;15515:15;15508:37;15323:229;:::o;15558:177::-;15698:29;15694:1;15686:6;15682:14;15675:53;15558:177;:::o;15741:182::-;15881:34;15877:1;15869:6;15865:14;15858:58;15741:182;:::o;15929:177::-;16069:29;16065:1;16057:6;16053:14;16046:53;15929:177;:::o;16112:181::-;16252:33;16248:1;16240:6;16236:14;16229:57;16112:181;:::o;16299:223::-;16439:34;16435:1;16427:6;16423:14;16416:58;16508:6;16503:2;16495:6;16491:15;16484:31;16299:223;:::o;16528:176::-;16668:28;16664:1;16656:6;16652:14;16645:52;16528:176;:::o;16710:122::-;16783:24;16801:5;16783:24;:::i;:::-;16776:5;16773:35;16763:63;;16822:1;16819;16812:12;16763:63;16710:122;:::o;16838:116::-;16908:21;16923:5;16908:21;:::i;:::-;16901:5;16898:32;16888:60;;16944:1;16941;16934:12;16888:60;16838:116;:::o;16960:122::-;17033:24;17051:5;17033:24;:::i;:::-;17026:5;17023:35;17013:63;;17072:1;17069;17062:12;17013:63;16960:122;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"903400","executionCost":"942","totalCost":"904342"},"external":{"":"infinite","implementation()":"2541","upgradeTo(address,bytes)":"infinite"},"internal":{"_proxySlot()":"23"}},"methodIdentifiers":{"implementation()":"5c60da1b","upgradeTo(address,bytes)":"6fbc15e9"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newImplementation\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"_initData\",\"type\":\"bytes\"}],\"name\":\"upgradeTo\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"upgradeTo(address,bytes)\":{\"params\":{\"_initData\":\"Raw data with which new implementation will be initialized.\",\"_newImplementation\":\"New implementation address.\"},\"returns\":{\"_0\":\"Returns whether new implementation would be further upgradable, or not.\"}}},\"title\":\"WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a  `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \",\"version\":1},\"userdoc\":{\"events\":{\"Upgraded(address)\":{\"notice\":\"Event emitted every time the implementation gets updated.\"}},\"kind\":\"user\",\"methods\":{\"constructor\":{\"notice\":\"Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\"},\"implementation()\":{\"notice\":\"Returns proxy's current implementation address.\"},\"upgradeTo(address,bytes)\":{\"notice\":\"Upgrades the `implementation` address.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":\"WitnetProxy\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \\n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \\n/// @author The Witnet Foundation.\\ncontract WitnetProxy {\\n\\n    struct WitnetProxySlot {\\n        address implementation;\\n    }\\n\\n    /// Event emitted every time the implementation gets updated.\\n    event Upgraded(address indexed implementation);  \\n\\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\\n    constructor () {}\\n\\n    /// WitnetProxies will never accept direct transfer of ETHs.\\n    receive() external payable {\\n        revert(\\\"WitnetProxy: no transfers accepted\\\");\\n    }\\n\\n    /// Payable fallback accepts delegating calls to payable functions.  \\n    fallback() external payable { /* solhint-disable no-complex-fallback */\\n        address _implementation = implementation();\\n\\n        assembly { /* solhint-disable avoid-low-level-calls */\\n            // Gas optimized delegate call to 'implementation' contract.\\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \\n            //       to actual implementation of `msg.sig` within `implementation` contract.\\n            let ptr := mload(0x40)\\n            calldatacopy(ptr, 0, calldatasize())\\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\\n            let size := returndatasize()\\n            returndatacopy(ptr, 0, size)\\n            switch result\\n                case 0  { \\n                    // pass back revert message:\\n                    revert(ptr, size) \\n                }\\n                default {\\n                  // pass back same data as returned by 'implementation' contract:\\n                  return(ptr, size) \\n                }\\n        }\\n    }\\n\\n    /// Returns proxy's current implementation address.\\n    function implementation() public view returns (address) {\\n        return _proxySlot().implementation;\\n    }\\n\\n    /// Upgrades the `implementation` address.\\n    /// @param _newImplementation New implementation address.\\n    /// @param _initData Raw data with which new implementation will be initialized.\\n    /// @return Returns whether new implementation would be further upgradable, or not.\\n    function upgradeTo(address _newImplementation, bytes memory _initData)\\n        public returns (bool)\\n    {\\n        // New implementation cannot be null:\\n        require(_newImplementation != address(0), \\\"WitnetProxy: null implementation\\\");\\n\\n        address _oldImplementation = implementation();\\n        if (_oldImplementation != address(0)) {\\n            // New implementation address must differ from current one:\\n            require(_newImplementation != _oldImplementation, \\\"WitnetProxy: nothing to upgrade\\\");\\n\\n            // Assert whether current implementation is intrinsically upgradable:\\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\\n                require(_isUpgradable, \\\"WitnetProxy: not upgradable\\\");\\n            } catch {\\n                revert(\\\"WitnetProxy: unable to check upgradability\\\");\\n            }\\n\\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\\n                abi.encodeWithSignature(\\n                    \\\"isUpgradableFrom(address)\\\",\\n                    msg.sender\\n                )\\n            );\\n            require(_wasCalled, \\\"WitnetProxy: not compliant\\\");\\n            require(abi.decode(_result, (bool)), \\\"WitnetProxy: not authorized\\\");\\n            require(\\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\\n                \\\"WitnetProxy: proxiableUUIDs mismatch\\\"\\n            );\\n        }\\n\\n        // Initialize new implementation within proxy-context storage:\\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\\n            abi.encodeWithSignature(\\n                \\\"initialize(bytes)\\\",\\n                _initData\\n            )\\n        );\\n        require(_wasInitialized, \\\"WitnetProxy: unable to initialize\\\");\\n\\n        // If all checks and initialization pass, update implementation address:\\n        _proxySlot().implementation = _newImplementation;\\n        emit Upgraded(_newImplementation);\\n\\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\\n            return _isUpgradable;\\n        }\\n        catch {\\n            revert (\\\"WitnetProxy: not compliant\\\");\\n        }\\n    }\\n\\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\\n        assembly {\\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0xcfdb698b63b9300631b046ecd8e16dbff90e8b4e84fdf1d629195ad17c8234d0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"Upgraded(address)":{"notice":"Event emitted every time the implementation gets updated."}},"kind":"user","methods":{"constructor":{"notice":"Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470)."},"implementation()":{"notice":"Returns proxy's current implementation address."},"upgradeTo(address,bytes)":{"notice":"Upgrades the `implementation` address."}},"version":1}}},"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol":{"WitnetRequestBoardUpgradableBase":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"string","name":"reason","type":"string"}],"name":"BatchReportError","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"DeletedQuery","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedRequest","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedResult","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"baseAddr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"baseCodehash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"versionTag","type":"bytes32"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorCode","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorMessage","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asRawError","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"base","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"codehash","outputs":[{"internalType":"bytes32","name":"_codehash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"deleteQuery","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextQueryId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryData","outputs":[{"components":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"request","type":"tuple"},{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"response","type":"tuple"},{"internalType":"address","name":"from","type":"address"}],"internalType":"struct Witnet.Query","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryStatus","outputs":[{"internalType":"enum Witnet.QueryStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isError","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isOk","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"isUpgradable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"isUpgradableFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IWitnetRequest","name":"_addr","type":"address"}],"name":"postRequest","outputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequest","outputs":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestBytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestGasPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponse","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseDrTxHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseReporter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseResult","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_result","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"uint256","name":"_timestamp","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_result","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"queryId","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct IWitnetRequestBoardReporter.BatchResult[]","name":"_batchResults","type":"tuple[]"},{"internalType":"bool","name":"_verbose","type":"bool"}],"name":"reportResultBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"resultFromCborBytes","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"resultFromCborValue","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"upgradeReward","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bool` decoded from the Witnet.Result."}},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes` decoded from the Witnet.Result."}},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes32` decoded from the Witnet.Result."}},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `CBORValue.Error memory` decoded from the Witnet.Result."}},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function","params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."}},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `uint64[]` raw error as decoded from the `Witnet.Result`."}},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string` decoded from the Witnet.Result."}},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string[]` decoded from the Witnet.Result."}},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64` decoded from the Witnet.Result."}},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64[]` decoded from the Witnet.Result."}},"base()":{"details":"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern."},"codehash()":{"details":"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.","returns":{"_codehash":"This contracts immutable codehash."}},"deleteQuery(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.","params":{"_queryId":"The unique query identifier."}},"estimateReward(uint256)":{"params":{"_gasPrice":"The gas price for which we need to calculate the rewards."}},"initialize(bytes)":{"details":"Initialize contract's storage context."},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if errored, `false` if successful."}},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if successful, `false` if errored."}},"isUpgradable()":{"details":"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling."},"isUpgradableFrom(address)":{"details":"Tells whether provided address could eventually upgrade the contract."},"postRequest(address)":{"details":"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.","params":{"_addr":"The address of the IWitnetRequest contract that can provide the actual Data Request bytecode."},"returns":{"_queryId":"An unique query identifier."}},"proxiableUUID()":{"details":"Gets immutable \"heritage blood line\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.      If implemented as an Upgradable touch, upgrading this contract to another one with a different       `proxiableUUID()` value should fail."},"readRequest(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.","params":{"_queryId":"The unique identifier of a previously posted query."}},"readRequestBytecode(uint256)":{"details":"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.","params":{"_queryId":"The unique query identifier."}},"readRequestGasPrice(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifie"}},"readRequestReward(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier."}},"readResponse(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseDrTxHash(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseReporter(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseResult(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseTimestamp(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"reportResult(uint256,bytes32,bytes)":{"details":"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_drTxHash":"The hash of the corresponding data request transaction in Witnet.","_queryId":"The unique identifier of the data request.","_result":"The result itself as bytes."}},"reportResult(uint256,uint256,bytes32,bytes)":{"details":"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_drTxHash":"The hash of the corresponding data request transaction in Witnet.","_queryId":"The unique query identifier","_result":"The result itself as bytes.","_timestamp":"The timestamp of the solving tally transaction in Witnet."}},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"details":"Must emit a PostedResult event for every succesfully reported result.","params":{"_batchResults":"Array of BatchResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.","_verbose":"If true, must emit a BatchReportError event for every failing report, if any. "}},"resultFromCborBytes(bytes)":{"params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.Result` instance."}},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"A `Witnet.Result` instance."}},"upgradeReward(uint256)":{"details":"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. ","params":{"_queryId":"The unique query identifier."}}},"title":"Witnet Request Board base contract, with an Upgradable (and Destructible) touch.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d4ced132","asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c683b465","asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"cf62d115","asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"db04f16d","asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d74803be","asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2241f2db","asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"0f572d2c","asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2b905fbb","asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"07e66852","asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"b0768328","asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"109a0e3c","asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c87d969e","asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"bc7e25ff","asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"4dcffaf3","base()":"5001f3b5","codehash()":"a9e954b9","deleteQuery(uint256)":"7c1fbda3","estimateReward(uint256)":"d2e87561","getNextQueryId()":"c805dd0f","getQueryData(uint256)":"c2485ebd","getQueryStatus(uint256)":"6f07abcc","initialize(bytes)":"439fab91","isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"7780cde1","isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"a8604c1a","isUpgradable()":"5479d940","isUpgradableFrom(address)":"6b58960a","postRequest(address)":"b281a7bd","proxiableUUID()":"52d1902d","readRequest(uint256)":"99f65804","readRequestBytecode(uint256)":"3b885f2a","readRequestGasPrice(uint256)":"3ae97295","readRequestReward(uint256)":"1dd27daf","readResponse(uint256)":"754e5bea","readResponseDrTxHash(uint256)":"dc3c71cd","readResponseReporter(uint256)":"9d96fced","readResponseResult(uint256)":"d4da69ac","readResponseTimestamp(uint256)":"20f9241e","reportResult(uint256,bytes32,bytes)":"6280bce8","reportResult(uint256,uint256,bytes32,bytes)":"c8f5cdd5","reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":"81a398b5","resultFromCborBytes(bytes)":"e99e47f3","resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":"2565082b","upgradeReward(uint256)":"66bfdc75","version()":"54fd4d50"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"reason\",\"type\":\"string\"}],\"name\":\"BatchReportError\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"DeletedQuery\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedResult\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseAddr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"baseCodehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"versionTag\",\"type\":\"bytes32\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorCode\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorMessage\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asRawError\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"base\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"codehash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_codehash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"deleteQuery\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNextQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryData\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"request\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"response\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"internalType\":\"struct Witnet.Query\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryStatus\",\"outputs\":[{\"internalType\":\"enum Witnet.QueryStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isError\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isOk\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isUpgradable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"isUpgradableFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"postRequest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequest\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestBytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestGasPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponse\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseDrTxHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseReporter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseResult\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_result\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_result\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitnetRequestBoardReporter.BatchResult[]\",\"name\":\"_batchResults\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"_verbose\",\"type\":\"bool\"}],\"name\":\"reportResultBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"resultFromCborBytes\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"resultFromCborValue\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"upgradeReward\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bool` decoded from the Witnet.Result.\"}},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes` decoded from the Witnet.Result.\"}},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes32` decoded from the Witnet.Result.\"}},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `CBORValue.Error memory` decoded from the Witnet.Result.\"}},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\",\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\"}},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `uint64[]` raw error as decoded from the `Witnet.Result`.\"}},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string` decoded from the Witnet.Result.\"}},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string[]` decoded from the Witnet.Result.\"}},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64` decoded from the Witnet.Result.\"}},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64[]` decoded from the Witnet.Result.\"}},\"base()\":{\"details\":\"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\"},\"codehash()\":{\"details\":\"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\",\"returns\":{\"_codehash\":\"This contracts immutable codehash.\"}},\"deleteQuery(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"estimateReward(uint256)\":{\"params\":{\"_gasPrice\":\"The gas price for which we need to calculate the rewards.\"}},\"initialize(bytes)\":{\"details\":\"Initialize contract's storage context.\"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if errored, `false` if successful.\"}},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if successful, `false` if errored.\"}},\"isUpgradable()\":{\"details\":\"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling.\"},\"isUpgradableFrom(address)\":{\"details\":\"Tells whether provided address could eventually upgrade the contract.\"},\"postRequest(address)\":{\"details\":\"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.\",\"params\":{\"_addr\":\"The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\"},\"returns\":{\"_queryId\":\"An unique query identifier.\"}},\"proxiableUUID()\":{\"details\":\"Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.      If implemented as an Upgradable touch, upgrading this contract to another one with a different       `proxiableUUID()` value should fail.\"},\"readRequest(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.\",\"params\":{\"_queryId\":\"The unique identifier of a previously posted query.\"}},\"readRequestBytecode(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readRequestGasPrice(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifie\"}},\"readRequestReward(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponse(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseDrTxHash(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseReporter(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseResult(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseTimestamp(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"reportResult(uint256,bytes32,bytes)\":{\"details\":\"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_drTxHash\":\"The hash of the corresponding data request transaction in Witnet.\",\"_queryId\":\"The unique identifier of the data request.\",\"_result\":\"The result itself as bytes.\"}},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"details\":\"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_drTxHash\":\"The hash of the corresponding data request transaction in Witnet.\",\"_queryId\":\"The unique query identifier\",\"_result\":\"The result itself as bytes.\",\"_timestamp\":\"The timestamp of the solving tally transaction in Witnet.\"}},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"details\":\"Must emit a PostedResult event for every succesfully reported result.\",\"params\":{\"_batchResults\":\"Array of BatchResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.\",\"_verbose\":\"If true, must emit a BatchReportError event for every failing report, if any. \"}},\"resultFromCborBytes(bytes)\":{\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"upgradeReward(uint256)\":{\"details\":\"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}}},\"title\":\"Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\",\"version\":1},\"userdoc\":{\"events\":{\"DeletedQuery(uint256,address)\":{\"notice\":\"Emitted when all data related to given query is deleted from the WRB.\"},\"PostedRequest(uint256,address)\":{\"notice\":\"Emitted when a Witnet Data Request is posted to the WRB.\"},\"PostedResult(uint256,address)\":{\"notice\":\"Emitted when a Witnet-solved result is reported to the WRB.\"},\"Upgraded(address,address,bytes32,bytes32)\":{\"notice\":\"Emitted every time the contract gets upgraded.\"}},\"kind\":\"user\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a boolean value from a Witnet.Result as an `bool` value.\"},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes` value.\"},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes32` value.\"},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\"},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\"},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\"},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\"},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a integer numeric value from a Witnet.Result as an `int128` value.\"},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\"},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\"},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a string value from a Witnet.Result as a `string` value.\"},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of string values from a Witnet.Result as a `string[]` value.\"},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\"},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\"},\"deleteQuery(uint256)\":{\"notice\":\"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\"},\"estimateReward(uint256)\":{\"notice\":\"Estimates the amount of reward we need to insert for a given gas price.\"},\"getNextQueryId()\":{\"notice\":\"Returns next query id to be generated by the Witnet Request Board.\"},\"getQueryData(uint256)\":{\"notice\":\"Gets the whole Query data contents, if any, no matter its current status.\"},\"getQueryStatus(uint256)\":{\"notice\":\"Gets current status of given query.\"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is errored.\"},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is successful.\"},\"postRequest(address)\":{\"notice\":\"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request.\"},\"readRequest(uint256)\":{\"notice\":\"Retrieves the whole Request record posted to the Witnet Request Board.\"},\"readRequestBytecode(uint256)\":{\"notice\":\"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\"},\"readRequestGasPrice(uint256)\":{\"notice\":\"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request.\"},\"readRequestReward(uint256)\":{\"notice\":\"Retrieves the reward currently set for the referred query.\"},\"readResponse(uint256)\":{\"notice\":\"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\"},\"readResponseDrTxHash(uint256)\":{\"notice\":\"Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\"},\"readResponseReporter(uint256)\":{\"notice\":\"Retrieves the address that reported the result to a previously-posted request.\"},\"readResponseResult(uint256)\":{\"notice\":\"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\"},\"readResponseTimestamp(uint256)\":{\"notice\":\"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\"},\"reportResult(uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request. \"},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request.\"},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"notice\":\"Reports Witnet-provided results to multiple requests within a single EVM tx.\"},\"resultFromCborBytes(bytes)\":{\"notice\":\"Decode raw CBOR bytes into a Witnet.Result instance.\"},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Decode a CBOR value into a Witnet.Result instance.\"},\"upgradeReward(uint256)\":{\"notice\":\"Increments the reward of a previously posted request by adding the transaction value to it.\"},\"version()\":{\"notice\":\"Retrieves human-readable version tag of current implementation.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol\":\"WitnetRequestBoardUpgradableBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \\n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \\n/// @author The Witnet Foundation.\\ncontract WitnetProxy {\\n\\n    struct WitnetProxySlot {\\n        address implementation;\\n    }\\n\\n    /// Event emitted every time the implementation gets updated.\\n    event Upgraded(address indexed implementation);  \\n\\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\\n    constructor () {}\\n\\n    /// WitnetProxies will never accept direct transfer of ETHs.\\n    receive() external payable {\\n        revert(\\\"WitnetProxy: no transfers accepted\\\");\\n    }\\n\\n    /// Payable fallback accepts delegating calls to payable functions.  \\n    fallback() external payable { /* solhint-disable no-complex-fallback */\\n        address _implementation = implementation();\\n\\n        assembly { /* solhint-disable avoid-low-level-calls */\\n            // Gas optimized delegate call to 'implementation' contract.\\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \\n            //       to actual implementation of `msg.sig` within `implementation` contract.\\n            let ptr := mload(0x40)\\n            calldatacopy(ptr, 0, calldatasize())\\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\\n            let size := returndatasize()\\n            returndatacopy(ptr, 0, size)\\n            switch result\\n                case 0  { \\n                    // pass back revert message:\\n                    revert(ptr, size) \\n                }\\n                default {\\n                  // pass back same data as returned by 'implementation' contract:\\n                  return(ptr, size) \\n                }\\n        }\\n    }\\n\\n    /// Returns proxy's current implementation address.\\n    function implementation() public view returns (address) {\\n        return _proxySlot().implementation;\\n    }\\n\\n    /// Upgrades the `implementation` address.\\n    /// @param _newImplementation New implementation address.\\n    /// @param _initData Raw data with which new implementation will be initialized.\\n    /// @return Returns whether new implementation would be further upgradable, or not.\\n    function upgradeTo(address _newImplementation, bytes memory _initData)\\n        public returns (bool)\\n    {\\n        // New implementation cannot be null:\\n        require(_newImplementation != address(0), \\\"WitnetProxy: null implementation\\\");\\n\\n        address _oldImplementation = implementation();\\n        if (_oldImplementation != address(0)) {\\n            // New implementation address must differ from current one:\\n            require(_newImplementation != _oldImplementation, \\\"WitnetProxy: nothing to upgrade\\\");\\n\\n            // Assert whether current implementation is intrinsically upgradable:\\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\\n                require(_isUpgradable, \\\"WitnetProxy: not upgradable\\\");\\n            } catch {\\n                revert(\\\"WitnetProxy: unable to check upgradability\\\");\\n            }\\n\\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\\n                abi.encodeWithSignature(\\n                    \\\"isUpgradableFrom(address)\\\",\\n                    msg.sender\\n                )\\n            );\\n            require(_wasCalled, \\\"WitnetProxy: not compliant\\\");\\n            require(abi.decode(_result, (bool)), \\\"WitnetProxy: not authorized\\\");\\n            require(\\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\\n                \\\"WitnetProxy: proxiableUUIDs mismatch\\\"\\n            );\\n        }\\n\\n        // Initialize new implementation within proxy-context storage:\\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\\n            abi.encodeWithSignature(\\n                \\\"initialize(bytes)\\\",\\n                _initData\\n            )\\n        );\\n        require(_wasInitialized, \\\"WitnetProxy: unable to initialize\\\");\\n\\n        // If all checks and initialization pass, update implementation address:\\n        _proxySlot().implementation = _newImplementation;\\n        emit Upgraded(_newImplementation);\\n\\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\\n            return _isUpgradable;\\n        }\\n        catch {\\n            revert (\\\"WitnetProxy: not compliant\\\");\\n        }\\n    }\\n\\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\\n        assembly {\\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0xcfdb698b63b9300631b046ecd8e16dbff90e8b4e84fdf1d629195ad17c8234d0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\n/* solhint-disable var-name-mixedcase */\\n\\n// Inherits from:\\nimport \\\"../WitnetRequestBoard.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n// Eventual deployment dependencies:\\nimport \\\"./WitnetProxy.sol\\\";\\n\\n/// @title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoardUpgradableBase\\n    is\\n        Proxiable,\\n        Upgradable,\\n        WitnetRequestBoard\\n{\\n    bytes32 internal immutable _VERSION;\\n\\n    constructor(\\n            bool _upgradable,\\n            bytes32 _versionTag\\n        )\\n        Upgradable(_upgradable)\\n    {\\n        _VERSION = _versionTag;\\n    }\\n\\n    /// @dev Reverts if proxy delegatecalls to unexistent method.\\n    fallback() external payable {\\n        revert(\\\"WitnetRequestBoardUpgradableBase: not implemented\\\");\\n    }\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Proxiable' --------------------------------------------------------------------------------------\\n\\n    /// @dev Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\\n    ///      If implemented as an Upgradable touch, upgrading this contract to another one with a different \\n    ///      `proxiableUUID()` value should fail.\\n    function proxiableUUID() external pure override returns (bytes32) {\\n        return (\\n            /* keccak256(\\\"io.witnet.proxiable.board\\\") */\\n            0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018\\n        );\\n    }   \\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' --------------------------------------------------------------------------------------\\n\\n    /// Retrieves human-readable version tag of current implementation.\\n    function version() public view override returns (bytes32) {\\n        return _VERSION;\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0930557dfafb03730e716e0af67ba7637a562f304ead6f2cedfa2c0eee91a65c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"DeletedQuery(uint256,address)":{"notice":"Emitted when all data related to given query is deleted from the WRB."},"PostedRequest(uint256,address)":{"notice":"Emitted when a Witnet Data Request is posted to the WRB."},"PostedResult(uint256,address)":{"notice":"Emitted when a Witnet-solved result is reported to the WRB."},"Upgraded(address,address,bytes32,bytes32)":{"notice":"Emitted every time the contract gets upgraded."}},"kind":"user","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a boolean value from a Witnet.Result as an `bool` value."},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes` value."},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes32` value."},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`."},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments."},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value."},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value."},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a integer numeric value from a Witnet.Result as an `int128` value."},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value."},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a raw error from a `Witnet.Result` as a `uint64[]`."},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a string value from a Witnet.Result as a `string` value."},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of string values from a Witnet.Result as a `string[]` value."},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a natural numeric value from a Witnet.Result as a `uint64` value."},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value."},"deleteQuery(uint256)":{"notice":"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage."},"estimateReward(uint256)":{"notice":"Estimates the amount of reward we need to insert for a given gas price."},"getNextQueryId()":{"notice":"Returns next query id to be generated by the Witnet Request Board."},"getQueryData(uint256)":{"notice":"Gets the whole Query data contents, if any, no matter its current status."},"getQueryStatus(uint256)":{"notice":"Gets current status of given query."},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is errored."},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is successful."},"postRequest(address)":{"notice":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request."},"readRequest(uint256)":{"notice":"Retrieves the whole Request record posted to the Witnet Request Board."},"readRequestBytecode(uint256)":{"notice":"Retrieves the serialized bytecode of a previously posted Witnet Data Request."},"readRequestGasPrice(uint256)":{"notice":"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request."},"readRequestReward(uint256)":{"notice":"Retrieves the reward currently set for the referred query."},"readResponse(uint256)":{"notice":"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request."},"readResponseDrTxHash(uint256)":{"notice":"Retrieves the hash of the Witnet transaction hash that actually solved the referred query."},"readResponseReporter(uint256)":{"notice":"Retrieves the address that reported the result to a previously-posted request."},"readResponseResult(uint256)":{"notice":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request."},"readResponseTimestamp(uint256)":{"notice":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON."},"reportResult(uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request. "},"reportResult(uint256,uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request."},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"notice":"Reports Witnet-provided results to multiple requests within a single EVM tx."},"resultFromCborBytes(bytes)":{"notice":"Decode raw CBOR bytes into a Witnet.Result instance."},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"notice":"Decode a CBOR value into a Witnet.Result instance."},"upgradeReward(uint256)":{"notice":"Increments the reward of a previously posted request by adding the transaction value to it."},"version()":{"notice":"Retrieves human-readable version tag of current implementation."}},"version":1}}},"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol":{"WitnetRequestBoardTrustableBase":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"string","name":"reason","type":"string"}],"name":"BatchReportError","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"DeletedQuery","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedRequest","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedResult","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"ReportersSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"ReportersUnset","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"baseAddr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"baseCodehash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"versionTag","type":"bytes32"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorCode","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorMessage","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asRawError","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"base","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"codehash","outputs":[{"internalType":"bytes32","name":"_codehash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currency","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"deleteQuery","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"_response","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextQueryId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryData","outputs":[{"components":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"request","type":"tuple"},{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"response","type":"tuple"},{"internalType":"address","name":"from","type":"address"}],"internalType":"struct Witnet.Query","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryStatus","outputs":[{"internalType":"enum Witnet.QueryStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_initData","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isError","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isOk","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_reporter","type":"address"}],"name":"isReporter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isUpgradable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"}],"name":"isUpgradableFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IWitnetRequest","name":"_addr","type":"address"}],"name":"postRequest","outputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequest","outputs":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"_request","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestBytecode","outputs":[{"internalType":"bytes","name":"_bytecode","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestGasPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponse","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"_response","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseDrTxHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseReporter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseResult","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"uint256","name":"_timestamp","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"queryId","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct IWitnetRequestBoardReporter.BatchResult[]","name":"_batchResults","type":"tuple[]"},{"internalType":"bool","name":"_verbose","type":"bool"}],"name":"reportResultBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"resultFromCborBytes","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"resultFromCborValue","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"_reporters","type":"address[]"}],"name":"setReporters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_exReporters","type":"address[]"}],"name":"unsetReporters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"upgradeReward","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}],"devdoc":{"author":"The Witnet Foundation","details":"This contract enables posting requests that Witnet bridges will insert into the Witnet network. The result of the requests will be posted back to this contract by the bridge nodes too.","kind":"dev","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bool` decoded from the Witnet.Result."}},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes` decoded from the Witnet.Result."}},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes32` decoded from the Witnet.Result."}},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `CBORValue.Error memory` decoded from the Witnet.Result."}},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function","params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."}},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `uint64[]` raw error as decoded from the `Witnet.Result`."}},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string` decoded from the Witnet.Result."}},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string[]` decoded from the Witnet.Result."}},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64` decoded from the Witnet.Result."}},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64[]` decoded from the Witnet.Result."}},"base()":{"details":"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern."},"codehash()":{"details":"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.","returns":{"_codehash":"This contracts immutable codehash."}},"deleteQuery(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.","params":{"_queryId":"The unique query identifier."}},"estimateReward(uint256)":{"params":{"_gasPrice":"The gas price for which we need to calculate the rewards."}},"initialize(bytes)":{"details":"Must fail when trying to initialize same instance more than once."},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if errored, `false` if successful."}},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if successful, `false` if errored."}},"isReporter(address)":{"params":{"_reporter":"The address to be checked."}},"isUpgradable()":{"details":"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling."},"postRequest(address)":{"details":"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.","params":{"_addr":"The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode."},"returns":{"_queryId":"An unique query identifier."}},"proxiableUUID()":{"details":"Gets immutable \"heritage blood line\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.      If implemented as an Upgradable touch, upgrading this contract to another one with a different       `proxiableUUID()` value should fail."},"readRequest(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.","params":{"_queryId":"The unique identifier of a previously posted query."}},"readRequestBytecode(uint256)":{"details":"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.","params":{"_queryId":"The unique query identifier."}},"readRequestGasPrice(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier"}},"readRequestReward(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier"}},"readResponse(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier"}},"readResponseDrTxHash(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseReporter(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier"}},"readResponseResult(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier"}},"readResponseTimestamp(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"reportResult(uint256,bytes32,bytes)":{"details":"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_cborBytes":"The result itself as bytes.","_drTxHash":"The hash of the solving tally transaction in Witnet.","_queryId":"The unique identifier of the data request."}},"reportResult(uint256,uint256,bytes32,bytes)":{"details":"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_cborBytes":"The result itself as bytes.","_drTxHash":"The hash of the solving tally transaction in Witnet.","_queryId":"The unique query identifier","_timestamp":"The timestamp of the solving tally transaction in Witnet."}},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"details":"Fails if called from unauthorized address.Emits a PostedResult event for every succesfully reported result, if any.","params":{"_batchResults":"Array of BatchedResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.","_verbose":"If true, emits a BatchReportError event for every failing report, if any. "}},"resultFromCborBytes(bytes)":{"params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.Result` instance."}},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"A `Witnet.Result` instance."}},"setReporters(address[])":{"details":"Can only be called from the owner address.Emits the `ReportersSet` event. ","params":{"_reporters":"List of addresses to be added to the active reporters control list."}},"unsetReporters(address[])":{"details":"Can only be called from the owner address.Emits the `ReportersUnset` event. ","params":{"_exReporters":"List of addresses to be added to the active reporters control list."}},"upgradeReward(uint256)":{"details":"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. ","params":{"_queryId":"The unique query identifier."}}},"title":"Witnet Request Board \"trustable\" base implementation contract.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d4ced132","asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c683b465","asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"cf62d115","asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"db04f16d","asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d74803be","asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2241f2db","asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"0f572d2c","asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2b905fbb","asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"07e66852","asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"b0768328","asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"109a0e3c","asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c87d969e","asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"bc7e25ff","asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"4dcffaf3","base()":"5001f3b5","codehash()":"a9e954b9","currency()":"e5a6b10f","deleteQuery(uint256)":"7c1fbda3","estimateReward(uint256)":"d2e87561","getNextQueryId()":"c805dd0f","getQueryData(uint256)":"c2485ebd","getQueryStatus(uint256)":"6f07abcc","initialize(bytes)":"439fab91","isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"7780cde1","isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"a8604c1a","isReporter(address)":"044ad7be","isUpgradable()":"5479d940","isUpgradableFrom(address)":"6b58960a","owner()":"8da5cb5b","postRequest(address)":"b281a7bd","proxiableUUID()":"52d1902d","readRequest(uint256)":"99f65804","readRequestBytecode(uint256)":"3b885f2a","readRequestGasPrice(uint256)":"3ae97295","readRequestReward(uint256)":"1dd27daf","readResponse(uint256)":"754e5bea","readResponseDrTxHash(uint256)":"dc3c71cd","readResponseReporter(uint256)":"9d96fced","readResponseResult(uint256)":"d4da69ac","readResponseTimestamp(uint256)":"20f9241e","reportResult(uint256,bytes32,bytes)":"6280bce8","reportResult(uint256,uint256,bytes32,bytes)":"c8f5cdd5","reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":"81a398b5","resultFromCborBytes(bytes)":"e99e47f3","resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":"2565082b","setReporters(address[])":"4c9f72e3","transferOwnership(address)":"f2fde38b","unsetReporters(address[])":"28a78d9b","upgradeReward(uint256)":"66bfdc75","version()":"54fd4d50"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"reason\",\"type\":\"string\"}],\"name\":\"BatchReportError\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"DeletedQuery\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedResult\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"ReportersSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"ReportersUnset\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseAddr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"baseCodehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"versionTag\",\"type\":\"bytes32\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorCode\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorMessage\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asRawError\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"base\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"codehash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_codehash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currency\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"deleteQuery\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"_response\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNextQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryData\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"request\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"response\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"internalType\":\"struct Witnet.Query\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryStatus\",\"outputs\":[{\"internalType\":\"enum Witnet.QueryStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_initData\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isError\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isOk\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"isReporter\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isUpgradable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"}],\"name\":\"isUpgradableFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"postRequest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequest\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"_request\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestBytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"_bytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestGasPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponse\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"_response\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseDrTxHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseReporter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseResult\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitnetRequestBoardReporter.BatchResult[]\",\"name\":\"_batchResults\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"_verbose\",\"type\":\"bool\"}],\"name\":\"reportResultBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"resultFromCborBytes\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"resultFromCborValue\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_reporters\",\"type\":\"address[]\"}],\"name\":\"setReporters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_exReporters\",\"type\":\"address[]\"}],\"name\":\"unsetReporters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"upgradeReward\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"The Witnet Foundation\",\"details\":\"This contract enables posting requests that Witnet bridges will insert into the Witnet network. The result of the requests will be posted back to this contract by the bridge nodes too.\",\"kind\":\"dev\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bool` decoded from the Witnet.Result.\"}},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes` decoded from the Witnet.Result.\"}},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes32` decoded from the Witnet.Result.\"}},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `CBORValue.Error memory` decoded from the Witnet.Result.\"}},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\",\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\"}},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `uint64[]` raw error as decoded from the `Witnet.Result`.\"}},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string` decoded from the Witnet.Result.\"}},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string[]` decoded from the Witnet.Result.\"}},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64` decoded from the Witnet.Result.\"}},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64[]` decoded from the Witnet.Result.\"}},\"base()\":{\"details\":\"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\"},\"codehash()\":{\"details\":\"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\",\"returns\":{\"_codehash\":\"This contracts immutable codehash.\"}},\"deleteQuery(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"estimateReward(uint256)\":{\"params\":{\"_gasPrice\":\"The gas price for which we need to calculate the rewards.\"}},\"initialize(bytes)\":{\"details\":\"Must fail when trying to initialize same instance more than once.\"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if errored, `false` if successful.\"}},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if successful, `false` if errored.\"}},\"isReporter(address)\":{\"params\":{\"_reporter\":\"The address to be checked.\"}},\"isUpgradable()\":{\"details\":\"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling.\"},\"postRequest(address)\":{\"details\":\"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.\",\"params\":{\"_addr\":\"The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\"},\"returns\":{\"_queryId\":\"An unique query identifier.\"}},\"proxiableUUID()\":{\"details\":\"Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.      If implemented as an Upgradable touch, upgrading this contract to another one with a different       `proxiableUUID()` value should fail.\"},\"readRequest(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.\",\"params\":{\"_queryId\":\"The unique identifier of a previously posted query.\"}},\"readRequestBytecode(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readRequestGasPrice(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readRequestReward(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponse(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponseDrTxHash(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseReporter(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponseResult(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponseTimestamp(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"reportResult(uint256,bytes32,bytes)\":{\"details\":\"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_cborBytes\":\"The result itself as bytes.\",\"_drTxHash\":\"The hash of the solving tally transaction in Witnet.\",\"_queryId\":\"The unique identifier of the data request.\"}},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"details\":\"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_cborBytes\":\"The result itself as bytes.\",\"_drTxHash\":\"The hash of the solving tally transaction in Witnet.\",\"_queryId\":\"The unique query identifier\",\"_timestamp\":\"The timestamp of the solving tally transaction in Witnet.\"}},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"details\":\"Fails if called from unauthorized address.Emits a PostedResult event for every succesfully reported result, if any.\",\"params\":{\"_batchResults\":\"Array of BatchedResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.\",\"_verbose\":\"If true, emits a BatchReportError event for every failing report, if any. \"}},\"resultFromCborBytes(bytes)\":{\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"setReporters(address[])\":{\"details\":\"Can only be called from the owner address.Emits the `ReportersSet` event. \",\"params\":{\"_reporters\":\"List of addresses to be added to the active reporters control list.\"}},\"unsetReporters(address[])\":{\"details\":\"Can only be called from the owner address.Emits the `ReportersUnset` event. \",\"params\":{\"_exReporters\":\"List of addresses to be added to the active reporters control list.\"}},\"upgradeReward(uint256)\":{\"details\":\"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}}},\"title\":\"Witnet Request Board \\\"trustable\\\" base implementation contract.\",\"version\":1},\"userdoc\":{\"events\":{\"DeletedQuery(uint256,address)\":{\"notice\":\"Emitted when all data related to given query is deleted from the WRB.\"},\"PostedRequest(uint256,address)\":{\"notice\":\"Emitted when a Witnet Data Request is posted to the WRB.\"},\"PostedResult(uint256,address)\":{\"notice\":\"Emitted when a Witnet-solved result is reported to the WRB.\"},\"Upgraded(address,address,bytes32,bytes32)\":{\"notice\":\"Emitted every time the contract gets upgraded.\"}},\"kind\":\"user\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a boolean value from a Witnet.Result as an `bool` value.\"},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes` value.\"},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes32` value.\"},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\"},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\"},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\"},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\"},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a integer numeric value from a Witnet.Result as an `int128` value.\"},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\"},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\"},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a string value from a Witnet.Result as a `string` value.\"},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of string values from a Witnet.Result as a `string[]` value.\"},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\"},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\"},\"deleteQuery(uint256)\":{\"notice\":\"Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\"},\"estimateReward(uint256)\":{\"notice\":\"Estimates the amount of reward we need to insert for a given gas price.\"},\"getNextQueryId()\":{\"notice\":\"Returns next request id to be generated by the Witnet Request Board.\"},\"getQueryData(uint256)\":{\"notice\":\"Gets the whole Query data contents, if any, no matter its current status.\"},\"getQueryStatus(uint256)\":{\"notice\":\"Gets current status of given query.\"},\"initialize(bytes)\":{\"notice\":\"Initialize storage-context when invoked as delegatecall. \"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is errored.\"},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is successful.\"},\"isReporter(address)\":{\"notice\":\"Tells whether given address is included in the active reporters control list.\"},\"isUpgradableFrom(address)\":{\"notice\":\"Tells whether provided address could eventually upgrade the contract.\"},\"owner()\":{\"notice\":\"Gets admin/owner address.\"},\"postRequest(address)\":{\"notice\":\"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request.\"},\"readRequest(uint256)\":{\"notice\":\"Retrieves the whole Request record posted to the Witnet Request Board.\"},\"readRequestBytecode(uint256)\":{\"notice\":\"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\"},\"readRequestGasPrice(uint256)\":{\"notice\":\"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request.\"},\"readRequestReward(uint256)\":{\"notice\":\"Retrieves the reward currently set for a previously posted request.\"},\"readResponse(uint256)\":{\"notice\":\"Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \"},\"readResponseDrTxHash(uint256)\":{\"notice\":\"Retrieves the hash of the Witnet transaction that actually solved the referred query.\"},\"readResponseReporter(uint256)\":{\"notice\":\"Retrieves the address that reported the result to a previously-posted request.\"},\"readResponseResult(uint256)\":{\"notice\":\"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\"},\"readResponseTimestamp(uint256)\":{\"notice\":\"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\"},\"reportResult(uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request. \"},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request.\"},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"notice\":\"Reports Witnet-provided results to multiple requests within a single EVM tx.\"},\"resultFromCborBytes(bytes)\":{\"notice\":\"Decode raw CBOR bytes into a Witnet.Result instance.\"},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Decode a CBOR value into a Witnet.Result instance.\"},\"setReporters(address[])\":{\"notice\":\"Adds given addresses to the active reporters control list.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership.\"},\"unsetReporters(address[])\":{\"notice\":\"Removes given addresses from the active reporters control list.\"},\"upgradeReward(uint256)\":{\"notice\":\"Increments the reward of a previously posted request by adding the transaction value to it.\"},\"version()\":{\"notice\":\"Retrieves human-readable version tag of current implementation.\"}},\"notice\":\"Contract to bridge requests to Witnet Decentralized Oracle Network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol\":\"WitnetRequestBoardTrustableBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board base data model. \\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardData {  \\n\\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data\\\") */\\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\\n\\n    struct WitnetBoardState {\\n        address base;\\n        address owner;    \\n        uint256 numQueries;\\n        mapping (uint => Witnet.Query) queries;\\n    }\\n\\n    constructor() {\\n        _state().owner = msg.sender;\\n    }\\n\\n    /// Asserts the given query is currently in the given status.\\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\\n      require(\\n          _getQueryStatus(_queryId) == _status,\\n          _getQueryStatusRevertMessage(_status)\\n        );\\n      _;\\n    }\\n\\n    /// Asserts the given query was previously posted and that it was not yet deleted.\\n    modifier notDeleted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        require(_getRequester(_queryId) != address(0), \\\"WitnetBoardData: deleted\\\");\\n        _;\\n    }\\n\\n    /// Asserts caller corresponds to the current owner. \\n    modifier onlyOwner {\\n        require(msg.sender == _state().owner, \\\"WitnetBoardData: only owner\\\");\\n        _;    \\n    }\\n\\n    /// Asserts the give query was actually posted before calling this method.\\n    modifier wasPosted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        _;\\n    }\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    /// Gets current status of given query.\\n    function _getQueryStatus(uint256 _queryId)\\n      internal view\\n      returns (Witnet.QueryStatus)\\n    {\\n      if (_queryId == 0 || _queryId > _state().numQueries) {\\n        // \\\"Unknown\\\" status if queryId is out of range:\\n        return Witnet.QueryStatus.Unknown;\\n      }\\n      else {\\n        Witnet.Query storage _query = _state().queries[_queryId];\\n        if (_query.response.drTxHash != 0) {\\n          // Query is in \\\"Reported\\\" status as soon as the hash of the\\n          // Witnet transaction that solved the query is reported\\n          // back from a Witnet bridge:\\n          return Witnet.QueryStatus.Reported;\\n        }\\n        else if (_query.from != address(0)) {\\n          // Otherwise, while address from which the query was posted\\n          // is kept in storage, the query remains in \\\"Posted\\\" status:\\n          return Witnet.QueryStatus.Posted;\\n        }\\n        else {\\n          // Requester's address is removed from storage only if\\n          // the query gets \\\"Deleted\\\" by its requester.\\n          return Witnet.QueryStatus.Deleted;\\n        }\\n      }\\n    }\\n\\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\\n      internal pure\\n      returns (string memory)\\n    {\\n      if (_status == Witnet.QueryStatus.Posted) {\\n        return \\\"WitnetBoardData: not in Posted status\\\";\\n      } else if (_status == Witnet.QueryStatus.Reported) {\\n        return \\\"WitnetBoardData: not in Reported status\\\";\\n      } else if (_status == Witnet.QueryStatus.Deleted) {\\n        return \\\"WitnetBoardData: not in Deleted status\\\";\\n      } else {\\n        return \\\"WitnetBoardData: bad mood\\\";\\n      }\\n    }\\n\\n    /// Gets from of a given query.\\n    function _getRequester(uint256 _queryId)\\n      internal view\\n      returns (address)\\n    {\\n      return _state().queries[_queryId].from;\\n    }\\n\\n    /// Gets the Witnet.Request part of a given query.\\n    function _getRequestData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Request storage)\\n    {\\n        return _state().queries[_queryId].request;\\n    }\\n\\n    /// Gets the Witnet.Result part of a given query.\\n    function _getResponseData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Response storage)\\n    {\\n        return _state().queries[_queryId].response;\\n    }\\n\\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\\n    function _state()\\n      internal pure\\n      returns (WitnetBoardState storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0c78c9981103e9ed35ace4e5f886a848f9dfe2aa26928adc0d37dabeff6a19db\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetBoardData.sol\\\";\\n\\n/// @title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardDataACLs\\n    is\\n        WitnetBoardData\\n{\\n    bytes32 internal constant _WITNET_BOARD_ACLS_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data.acls\\\") */\\n        0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd;\\n\\n    struct WitnetBoardACLs {\\n        mapping (address => bool) isReporter_;\\n    }\\n\\n    constructor() {\\n        _acls().isReporter_[msg.sender] = true;\\n    }\\n\\n    modifier onlyReporters {\\n        require(\\n            _acls().isReporter_[msg.sender],\\n            \\\"WitnetBoardDataACLs: unauthorized reporter\\\"\\n        );\\n        _;\\n    } \\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function _acls() internal pure returns (WitnetBoardACLs storage _struct) {\\n        assembly {\\n            _struct.slot := _WITNET_BOARD_ACLS_SLOTHASH\\n        }\\n    }\\n}\\n\",\"keccak256\":\"0x558f28fc690d2f7180da9393bc49083da4857aa8480f044f68355a61ebf21257\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \\n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \\n/// @author The Witnet Foundation.\\ncontract WitnetProxy {\\n\\n    struct WitnetProxySlot {\\n        address implementation;\\n    }\\n\\n    /// Event emitted every time the implementation gets updated.\\n    event Upgraded(address indexed implementation);  \\n\\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\\n    constructor () {}\\n\\n    /// WitnetProxies will never accept direct transfer of ETHs.\\n    receive() external payable {\\n        revert(\\\"WitnetProxy: no transfers accepted\\\");\\n    }\\n\\n    /// Payable fallback accepts delegating calls to payable functions.  \\n    fallback() external payable { /* solhint-disable no-complex-fallback */\\n        address _implementation = implementation();\\n\\n        assembly { /* solhint-disable avoid-low-level-calls */\\n            // Gas optimized delegate call to 'implementation' contract.\\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \\n            //       to actual implementation of `msg.sig` within `implementation` contract.\\n            let ptr := mload(0x40)\\n            calldatacopy(ptr, 0, calldatasize())\\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\\n            let size := returndatasize()\\n            returndatacopy(ptr, 0, size)\\n            switch result\\n                case 0  { \\n                    // pass back revert message:\\n                    revert(ptr, size) \\n                }\\n                default {\\n                  // pass back same data as returned by 'implementation' contract:\\n                  return(ptr, size) \\n                }\\n        }\\n    }\\n\\n    /// Returns proxy's current implementation address.\\n    function implementation() public view returns (address) {\\n        return _proxySlot().implementation;\\n    }\\n\\n    /// Upgrades the `implementation` address.\\n    /// @param _newImplementation New implementation address.\\n    /// @param _initData Raw data with which new implementation will be initialized.\\n    /// @return Returns whether new implementation would be further upgradable, or not.\\n    function upgradeTo(address _newImplementation, bytes memory _initData)\\n        public returns (bool)\\n    {\\n        // New implementation cannot be null:\\n        require(_newImplementation != address(0), \\\"WitnetProxy: null implementation\\\");\\n\\n        address _oldImplementation = implementation();\\n        if (_oldImplementation != address(0)) {\\n            // New implementation address must differ from current one:\\n            require(_newImplementation != _oldImplementation, \\\"WitnetProxy: nothing to upgrade\\\");\\n\\n            // Assert whether current implementation is intrinsically upgradable:\\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\\n                require(_isUpgradable, \\\"WitnetProxy: not upgradable\\\");\\n            } catch {\\n                revert(\\\"WitnetProxy: unable to check upgradability\\\");\\n            }\\n\\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\\n                abi.encodeWithSignature(\\n                    \\\"isUpgradableFrom(address)\\\",\\n                    msg.sender\\n                )\\n            );\\n            require(_wasCalled, \\\"WitnetProxy: not compliant\\\");\\n            require(abi.decode(_result, (bool)), \\\"WitnetProxy: not authorized\\\");\\n            require(\\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\\n                \\\"WitnetProxy: proxiableUUIDs mismatch\\\"\\n            );\\n        }\\n\\n        // Initialize new implementation within proxy-context storage:\\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\\n            abi.encodeWithSignature(\\n                \\\"initialize(bytes)\\\",\\n                _initData\\n            )\\n        );\\n        require(_wasInitialized, \\\"WitnetProxy: unable to initialize\\\");\\n\\n        // If all checks and initialization pass, update implementation address:\\n        _proxySlot().implementation = _newImplementation;\\n        emit Upgraded(_newImplementation);\\n\\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\\n            return _isUpgradable;\\n        }\\n        catch {\\n            revert (\\\"WitnetProxy: not compliant\\\");\\n        }\\n    }\\n\\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\\n        assembly {\\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0xcfdb698b63b9300631b046ecd8e16dbff90e8b4e84fdf1d629195ad17c8234d0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\n/* solhint-disable var-name-mixedcase */\\n\\n// Inherits from:\\nimport \\\"../WitnetRequestBoard.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n// Eventual deployment dependencies:\\nimport \\\"./WitnetProxy.sol\\\";\\n\\n/// @title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoardUpgradableBase\\n    is\\n        Proxiable,\\n        Upgradable,\\n        WitnetRequestBoard\\n{\\n    bytes32 internal immutable _VERSION;\\n\\n    constructor(\\n            bool _upgradable,\\n            bytes32 _versionTag\\n        )\\n        Upgradable(_upgradable)\\n    {\\n        _VERSION = _versionTag;\\n    }\\n\\n    /// @dev Reverts if proxy delegatecalls to unexistent method.\\n    fallback() external payable {\\n        revert(\\\"WitnetRequestBoardUpgradableBase: not implemented\\\");\\n    }\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Proxiable' --------------------------------------------------------------------------------------\\n\\n    /// @dev Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\\n    ///      If implemented as an Upgradable touch, upgrading this contract to another one with a different \\n    ///      `proxiableUUID()` value should fail.\\n    function proxiableUUID() external pure override returns (bytes32) {\\n        return (\\n            /* keccak256(\\\"io.witnet.proxiable.board\\\") */\\n            0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018\\n        );\\n    }   \\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' --------------------------------------------------------------------------------------\\n\\n    /// Retrieves human-readable version tag of current implementation.\\n    function version() public view override returns (bytes32) {\\n        return _VERSION;\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0930557dfafb03730e716e0af67ba7637a562f304ead6f2cedfa2c0eee91a65c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../WitnetRequestBoardUpgradableBase.sol\\\";\\nimport \\\"../../data/WitnetBoardDataACLs.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdmin.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdminACLs.sol\\\";\\nimport \\\"../../libs/WitnetParserLib.sol\\\";\\nimport \\\"../../patterns/Payable.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" base implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\nabstract contract WitnetRequestBoardTrustableBase\\n    is \\n        Payable,\\n        IWitnetRequestBoardAdmin,\\n        IWitnetRequestBoardAdminACLs,        \\n        WitnetBoardDataACLs,\\n        WitnetRequestBoardUpgradableBase        \\n{\\n    using Witnet for bytes;\\n    using WitnetParserLib for Witnet.Result;\\n    \\n    constructor(bool _upgradable, bytes32 _versionTag, address _currency)\\n        Payable(_currency)\\n        WitnetRequestBoardUpgradableBase(_upgradable, _versionTag)\\n    {}\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' -------------------------------------------------------------------------------------\\n\\n    /// Initialize storage-context when invoked as delegatecall. \\n    /// @dev Must fail when trying to initialize same instance more than once.\\n    function initialize(bytes memory _initData) virtual external override {\\n        address _owner = _state().owner;\\n        if (_owner == address(0)) {\\n            // set owner if none set yet\\n            _owner = msg.sender;\\n            _state().owner = _owner;\\n        } else {\\n            // only owner can initialize:\\n            require(msg.sender == _owner, \\\"WitnetRequestBoardTrustableBase: only owner\\\");\\n        }        \\n\\n        if (_state().base != address(0)) {\\n            // current implementation cannot be initialized more than once:\\n            require(_state().base != base(), \\\"WitnetRequestBoardTrustableBase: already initialized\\\");\\n        }        \\n        _state().base = base();\\n\\n        emit Upgraded(msg.sender, base(), codehash(), version());\\n\\n        // Do actual base initialization:\\n        setReporters(abi.decode(_initData, (address[])));\\n    }\\n\\n    /// Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address _from) external view override returns (bool) {\\n        address _owner = _state().owner;\\n        return (\\n            // false if the WRB is intrinsically not upgradable, or `_from` is no owner\\n            isUpgradable()\\n                && _owner == _from\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdmin' ----------------------------------------------------------\\n\\n    /// Gets admin/owner address.\\n    function owner()\\n        public view\\n        override\\n        returns (address)\\n    {\\n        return _state().owner;\\n    }\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address _newOwner)\\n        external\\n        virtual override\\n        onlyOwner\\n    {\\n        address _owner = _state().owner;\\n        if (_newOwner != _owner) {\\n            _state().owner = _newOwner;\\n            emit OwnershipTransferred(_owner, _newOwner);\\n        }\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdminACLs' ------------------------------------------------------\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    /// @param _reporter The address to be checked.\\n    function isReporter(address _reporter) public view override returns (bool) {\\n        return _acls().isReporter_[_reporter];\\n    }\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    /// @param _reporters List of addresses to be added to the active reporters control list.\\n    function setReporters(address[] memory _reporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _reporters.length; ix ++) {\\n            address _reporter = _reporters[ix];\\n            _acls().isReporter_[_reporter] = true;\\n        }\\n        emit ReportersSet(_reporters);\\n    }\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    /// @param _exReporters List of addresses to be added to the active reporters control list.\\n    function unsetReporters(address[] memory _exReporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _exReporters.length; ix ++) {\\n            address _reporter = _exReporters[ix];\\n            _acls().isReporter_[_reporter] = false;\\n        }\\n        emit ReportersUnset(_exReporters);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardReporter' -------------------------------------------------------\\n\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        // solhint-disable not-rely-on-time\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                block.timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_timestamp <= block.timestamp, \\\"WitnetRequestBoardTrustableDefault: bad timestamp\\\");\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                _timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Fails if called from unauthorized address.\\n    /// @dev Emits a PostedResult event for every succesfully reported result, if any.\\n    /// @param _batchResults Array of BatchedResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, emits a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(\\n            BatchResult[] memory _batchResults,\\n            bool _verbose\\n        )\\n        external\\n        override\\n        onlyReporters\\n    {\\n        uint _batchReward;\\n        uint _batchSize = _batchResults.length;\\n        for ( uint _i = 0; _i < _batchSize; _i ++) {\\n            BatchResult memory _result = _batchResults[_i];\\n            if (_getQueryStatus(_result.queryId) != Witnet.QueryStatus.Posted) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad queryId\\\"\\n                    );\\n                }\\n            } else if (_result.drTxHash == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad drTxHash\\\"\\n                    );\\n                }\\n            } else if (_result.cborBytes.length == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId, \\n                        \\\"WitnetRequestBoardTrustableBase: bad cborBytes\\\"\\n                    );\\n                }\\n            } else if (_result.timestamp > 0 && _result.timestamp > block.timestamp) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad timestamp\\\"\\n                    );\\n                }\\n            } else {\\n                _batchReward += __reportResult(\\n                    _result.queryId,\\n                    _result.timestamp == 0 ? block.timestamp : _result.timestamp,\\n                    _result.drTxHash,\\n                    _result.cborBytes\\n                );\\n                emit PostedResult(\\n                    _result.queryId,\\n                    msg.sender\\n                );\\n            }\\n        }   \\n        // Transfer all successful rewards in one single shot to the authorized reporter, if any:\\n        if (_batchReward > 0) {\\n            _safeTransferTo(\\n                payable(msg.sender),\\n                _batchReward\\n            );\\n        }\\n    }\\n    \\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardRequestor' ------------------------------------------------------\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId)\\n        public\\n        virtual override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        require(\\n            msg.sender == __query.from,\\n            \\\"WitnetRequestBoardTrustableBase: only requester\\\"\\n        );\\n        _response = __query.response;\\n        delete _state().queries[_queryId];\\n        emit DeletedQuery(_queryId, msg.sender);\\n    }\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr)\\n        public payable\\n        virtual override\\n        returns (uint256 _queryId)\\n    {\\n        uint256 _value = _getMsgValue();\\n        uint256 _gasPrice = _getGasPrice();\\n\\n        // Checks the tally reward is covering gas cost\\n        uint256 minResultReward = estimateReward(_gasPrice);\\n        require(_value >= minResultReward, \\\"WitnetRequestBoardTrustableBase: reward too low\\\");\\n\\n        // Validates provided script:\\n        require(address(_addr) != address(0), \\\"WitnetRequestBoardTrustableBase: null script\\\");\\n        bytes memory _bytecode = _addr.bytecode();\\n        require(_bytecode.length > 0, \\\"WitnetRequestBoardTrustableBase: empty script\\\");\\n\\n        _queryId = ++ _state().numQueries;\\n        _state().queries[_queryId].from = msg.sender;\\n\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        _request.addr = _addr;\\n        _request.hash = _bytecode.hash();\\n        _request.gasprice = _gasPrice;\\n        _request.reward = _value;\\n\\n        // Let observers know that a new request has been posted\\n        emit PostedRequest(_queryId, msg.sender);\\n    }\\n    \\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId)\\n        public payable\\n        virtual override      \\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n\\n        uint256 _newReward = _request.reward + _getMsgValue();\\n        uint256 _newGasPrice = _getGasPrice();\\n\\n        // If gas price is increased, then check if new rewards cover gas costs\\n        if (_newGasPrice > _request.gasprice) {\\n            // Checks the reward is covering gas cost\\n            uint256 _minResultReward = estimateReward(_newGasPrice);\\n            require(\\n                _newReward >= _minResultReward,\\n                \\\"WitnetRequestBoardTrustableBase: reward too low\\\"\\n            );\\n            _request.gasprice = _newGasPrice;\\n        }\\n        _request.reward = _newReward;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardView' -----------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256);\\n\\n    /// Returns next request id to be generated by the Witnet Request Board.\\n    function getNextQueryId()\\n        external view \\n        override\\n        returns (uint256)\\n    {\\n        return _state().numQueries + 1;\\n    }\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId)\\n      external view\\n      override\\n      returns (Witnet.Query memory)\\n    {\\n        return _state().queries[_queryId];\\n    }\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId)\\n        external view\\n        override\\n        returns (Witnet.QueryStatus)\\n    {\\n        return _getQueryStatus(_queryId);\\n\\n    }\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (Witnet.Request memory _request)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        _request = __query.request;\\n        if (__query.from != address(0)) {\\n            _request.requester = __query.from;\\n        }\\n    }\\n    \\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId)\\n        external view\\n        override\\n        returns (bytes memory _bytecode)\\n    {\\n        require(\\n            _getQueryStatus(_queryId) != Witnet.QueryStatus.Unknown,\\n            \\\"WitnetRequestBoardTrustableBase: not yet posted\\\"\\n        );\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        if (address(_request.addr) != address(0)) {\\n            // if DR's request contract address is not zero,\\n            // we assume the DR has not been deleted, so\\n            // DR's bytecode can still be fetched:\\n            _bytecode = _request.addr.bytecode();\\n            require(\\n                _bytecode.hash() == _request.hash,\\n                \\\"WitnetRequestBoardTrustableBase: bytecode changed after posting\\\"\\n            );\\n        } \\n    }\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestGasPrice(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.gasprice;\\n    }\\n\\n    /// Retrieves the reward currently set for a previously posted request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestReward(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.reward;\\n    }\\n\\n    /// Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponse(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        return _getResponseData(_queryId);\\n    }\\n\\n    /// Retrieves the hash of the Witnet transaction that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId)\\n        external view        \\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (bytes32)\\n    {\\n        return _getResponseData(_queryId).drTxHash;\\n    }\\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseReporter(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (address)\\n    {\\n        return _getResponseData(_queryId).reporter;\\n    }\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseResult(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.Response storage _response = _getResponseData(_queryId);\\n        return WitnetParserLib.resultFromCborBytes(_response.cborBytes);\\n    }\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (uint256)\\n    {\\n        return _getResponseData(_queryId).timestamp;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestParser' interface ----------------------------------------------------\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborBytes(_cborBytes);\\n    }\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborValue(_cborValue);\\n    }\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isOk();\\n    }\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isError();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes memory)\\n    {\\n        return _result.asBytes();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes32)\\n    {\\n        return _result.asBytes32();\\n    }\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return _result.asErrorCode();\\n    }\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes, string memory)\\n    {\\n        try _result.asErrorMessage() returns (Witnet.ErrorCodes _code, string memory _message) {\\n            return (_code, _message);\\n        } \\n        catch Error(string memory _reason) {\\n            return (Witnet.ErrorCodes.Unknown, _reason);\\n        }\\n        catch (bytes memory) {\\n            return (Witnet.ErrorCodes.UnhandledIntercept, \\\"WitnetRequestBoardTrustableBase: failing assert\\\");\\n        }\\n    }\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns(uint64[] memory)\\n    {\\n        return _result.asRawError();\\n    }\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.asBool();\\n    }\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32)\\n    {\\n        return _result.asFixed16();\\n    }\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32[] memory)\\n    {\\n        return _result.asFixed16Array();\\n    }\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128)\\n    {\\n        return _result.asInt128();\\n    }\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128[] memory)\\n    {\\n        return _result.asInt128Array();\\n    }\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string memory)\\n    {\\n        return _result.asString();\\n    }\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string[] memory)\\n    {\\n        return _result.asStringArray();\\n    }\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure \\n        override\\n        returns(uint64)\\n    {\\n        return _result.asUint64();\\n    }\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (uint64[] memory)\\n    {\\n        return _result.asUint64Array();\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function __reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes memory _cborBytes\\n        )\\n        internal\\n        returns (uint256 _reward)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        Witnet.Request storage __request = __query.request;\\n        Witnet.Response storage __response = __query.response;\\n\\n        // solhint-disable not-rely-on-time\\n        __response.timestamp = _timestamp;\\n        __response.drTxHash = _drTxHash;\\n        __response.reporter = msg.sender;\\n        __response.cborBytes = _cborBytes;\\n\\n        // return request latest reward\\n        _reward = __request.reward;\\n\\n        // Request data won't be needed anymore, so it can just get deleted right now:  \\n        delete __query.request;\\n    }\\n}\\n\",\"keccak256\":\"0x6b6ccba7e686a69bf0847b9c541e3997f14f3f91246c63fbadd412ba78c4a8d4\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC20 standard as defined in the EIP.\\n */\\ninterface IERC20 {\\n    /// Returns the amount of tokens in existence.\\n    function totalSupply() external view returns (uint256);\\n\\n    /// Returns the amount of tokens owned by `_account`.\\n    function balanceOf(address _account) external view returns (uint256);\\n\\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event.\\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\\n\\n    /// Returns the remaining number of tokens that `_spender` will be\\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\\n    /// zero by default.\\n    /// This value changes when {approve} or {transferFrom} are called.\\n    function allowance(address _owner, address _spender) external view returns (uint256);\\n\\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// \\n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\\n    /// that someone may use both the old and the new allowance by unfortunate\\n    /// transaction ordering. One possible solution to mitigate this race\\n    /// condition is to first reduce the spender's allowance to 0 and set the\\n    /// desired value afterwards:\\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\\n    ///\\n    /// Emits an {Approval} event.     \\n    function approve(address _spender, uint256 _amount) external returns (bool);\\n\\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\\n    /// allowance mechanism. `amount` is then deducted from the caller's\\n    /// allowance.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event. \\n    function transferFrom(\\n        address _sender,\\n        address _recipient,\\n        uint256 _amount\\n    ) external returns (bool);\\n\\n    /// Emitted when `value` tokens are moved from one account (`from`) to\\n    /// another (`to`).\\n    /// Note that `:value` may be zero.\\n    event Transfer(address indexed from, address indexed to, uint256 value);\\n\\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\\n    /// a call to {approve}. `value` is the new allowance.\\n    event Approval(address indexed owner, address indexed spender, uint256 value);\\n}\\n\",\"keccak256\":\"0xd6b25613fab1f6172ca58e377371a0b708f1af8982961364fecf9da196213f48\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board basic administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdmin {\\n    event OwnershipTransferred(address indexed from, address indexed to);\\n\\n    /// Gets admin/owner address.\\n    function owner() external view returns (address);\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address) external;\\n}\\n\",\"keccak256\":\"0xa88e828c55cb4e2c1ef02c9204e367d3034fc2e35cc881581d898942b9715d50\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board ACLs administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdminACLs {\\n    event ReportersSet(address[] reporters);\\n    event ReportersUnset(address[] reporters);\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    function isReporter(address) external view returns (bool);\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    function setReporters(address[] calldata reporters) external;\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    function unsetReporters(address[] calldata reporters) external;\\n}\\n\",\"keccak256\":\"0xafcd6f01a977d597032b341fec291ea7e26b1dac3eb13eced8b37d89eb76e4ff\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetBuffer.sol\\\";\\n\\n/// @title A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\\n/// the gas cost of decoding them into a useful native type.\\n/// @dev Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\\n/// @author The Witnet Foundation.\\n/// \\n/// TODO: add support for Array (majorType = 4)\\n/// TODO: add support for Map (majorType = 5)\\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \\n\\nlibrary WitnetDecoderLib {\\n\\n  using WitnetBuffer for Witnet.Buffer;\\n\\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bool` value.\\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\\\");\\n    if (_cborValue.len == 20) {\\n      return false;\\n    } else if (_cborValue.len == 21) {\\n      return true;\\n    } else {\\n      revert(\\\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\\\");\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bytes` value.   \\n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT32_MAX) {\\n      bytes memory bytesData;\\n\\n      // These checks look repetitive but the equivalent loop would be more expensive.\\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n      if (itemLength < _UINT32_MAX) {\\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n        if (itemLength < _UINT32_MAX) {\\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        }\\n      }\\n      return bytesData;\\n    } else {\\n      return _cborValue.buffer.read(uint32(_cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\\n    bytes memory _bb = decodeBytes(_cborValue);\\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\\n    for (uint _i = 0; _i < _len; _i ++) {\\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\\\");\\n    require(_cborValue.additionalInformation == 25, \\\"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\\\");\\n    return _cborValue.buffer.readFloat16();\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\\n  /// as explained in `decodeFixed16`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int32[] memory array = new int32[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeFixed16(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\\n    if (_cborValue.majorType == 1) {\\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n      return int128(-1) - int128(uint128(length));\\n    } else if (_cborValue.majorType == 0) {\\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\\n      // a uniform API for positive and negative numbers\\n      return int128(uint128(decodeUint64(_cborValue)));\\n    }\\n    revert(\\\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\\\");\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int128[] memory array = new int128[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeInt128(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `string` value.\\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT64_MAX) {\\n      bytes memory textData;\\n      bool done;\\n      while (!done) {\\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\\n        if (itemLength < _UINT64_MAX) {\\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\\n        } else {\\n          done = true;\\n        }\\n      }\\n      return string(textData);\\n    } else {\\n      return string(readText(_cborValue.buffer, _cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `string[]` value.\\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    string[] memory array = new string[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeString(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64` value.\\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\\n    require(_cborValue.majorType == 0, \\\"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\\\");\\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64[]` value.\\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    uint64[] memory array = new uint64[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeUint64(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\\n\\n    return valueFromBuffer(buffer);\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\\n    require(_buffer.data.length > 0, \\\"WitnetDecoderLib: Found empty buffer when parsing CBOR value\\\");\\n\\n    uint8 initialByte;\\n    uint8 majorType = 255;\\n    uint8 additionalInformation;\\n    uint64 tag = _UINT64_MAX;\\n\\n    bool isTagged = true;\\n    while (isTagged) {\\n      // Extract basic CBOR properties from input bytes\\n      initialByte = _buffer.readUint8();\\n      majorType = initialByte >> 5;\\n      additionalInformation = initialByte & 0x1f;\\n\\n      // Early CBOR tag parsing.\\n      if (majorType == 6) {\\n        tag = readLength(_buffer, additionalInformation);\\n      } else {\\n        isTagged = false;\\n      }\\n    }\\n\\n    require(majorType <= 7, \\\"WitnetDecoderLib: Invalid CBOR major type\\\");\\n\\n    return Witnet.CBOR(\\n      _buffer,\\n      initialByte,\\n      majorType,\\n      additionalInformation,\\n      0,\\n      tag);\\n  }\\n\\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\\n  /// value of the `additionalInformation` argument.\\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\\n    if (additionalInformation < 24) {\\n      return additionalInformation;\\n    }\\n    if (additionalInformation == 24) {\\n      return _buffer.readUint8();\\n    }\\n    if (additionalInformation == 25) {\\n      return _buffer.readUint16();\\n    }\\n    if (additionalInformation == 26) {\\n      return _buffer.readUint32();\\n    }\\n    if (additionalInformation == 27) {\\n      return _buffer.readUint64();\\n    }\\n    if (additionalInformation == 31) {\\n      return _UINT64_MAX;\\n    }\\n    revert(\\\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\\\");\\n  }\\n\\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\\n  /// as many bytes as specified by the first byte.\\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\\n    uint8 initialByte = _buffer.readUint8();\\n    if (initialByte == 0xff) {\\n      return _UINT64_MAX;\\n    }\\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \\\"WitnetDecoderLib: Invalid indefinite length\\\");\\n    return length;\\n  }\\n\\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\\n  /// but it can be easily casted into a string with `string(result)`.\\n  // solium-disable-next-line security/no-assign-params\\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\\n    bytes memory result;\\n    for (uint64 index = 0; index < _length; index++) {\\n      uint8 value = _buffer.readUint8();\\n      if (value & 0x80 != 0) {\\n        if (value < 0xe0) {\\n          value = (value & 0x1f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 1;\\n        } else if (value < 0xf0) {\\n          value = (value & 0x0f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 2;\\n        } else {\\n          value = (value & 0x0f) << 18 |\\n            (_buffer.readUint8() & 0x3f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6  |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 3;\\n        }\\n      }\\n      result = abi.encodePacked(result, value);\\n    }\\n    return result;\\n  }\\n}\\n\",\"keccak256\":\"0xb8f5b618ebae15a7f5d21870ac8ba7034afe5dce876b53a1a81572378a817c32\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetDecoderLib.sol\\\";\\n\\n/// @title A library for decoding Witnet request results\\n/// @notice The library exposes functions to check the Witnet request success.\\n/// and retrieve Witnet results from CBOR values into solidity types.\\n/// @author The Witnet Foundation.\\nlibrary WitnetParserLib {\\n\\n    using WitnetDecoderLib for bytes;\\n    using WitnetDecoderLib for Witnet.CBOR;\\n\\n    /// @notice Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes calldata _cborBytes)\\n        external pure\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.CBOR memory cborValue = _cborBytes.valueFromBytes();\\n        return resultFromCborValue(cborValue);\\n    }\\n\\n    /// @notice Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.Value`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        public pure\\n        returns (Witnet.Result memory)    \\n    {\\n        // Witnet uses CBOR tag 39 to represent RADON error code identifiers.\\n        // [CBOR tag 39] Identifiers for CBOR: https://github.com/lucas-clemente/cbor-specs/blob/master/id.md\\n        bool success = _cborValue.tag != 39;\\n        return Witnet.Result(success, _cborValue);\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        return _result.success;\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n      external pure\\n      returns (bool)\\n    {\\n        return !_result.success;\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes();\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes32();\\n    }\\n\\n    /// @notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return Witnet.ErrorCodes.Unknown;\\n        }\\n        return _supportedErrorOrElseUnknown(error[0]);\\n    }\\n\\n    /// @notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n      public pure\\n      returns (Witnet.ErrorCodes, string memory)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return (Witnet.ErrorCodes.Unknown, \\\"Unknown error (no error code)\\\");\\n        }\\n        Witnet.ErrorCodes errorCode = _supportedErrorOrElseUnknown(error[0]);\\n        bytes memory errorMessage;\\n\\n        if (errorCode == Witnet.ErrorCodes.SourceScriptNotCBOR && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid CBOR value\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotArray && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not an Array of calls\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotRADON && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid Data Request\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RequestTooManySources && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The request contained too many sources (\\\", \\n                _utoa(error[1]), \\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.ScriptTooManyCalls && error.length >= 4) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Script #\\\",\\n                _utoa(error[2]),\\n                \\\" from the \\\",\\n                stageName(error[1]),\\n                \\\" stage contained too many calls (\\\",\\n                _utoa(error[3]),\\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.UnsupportedOperator && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage is not supported\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.HTTP && error.length >= 3) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved. Failed with HTTP error code: \\\",\\n                _utoa(error[2] / 100),\\n                _utoa(error[2] % 100 / 10),\\n                _utoa(error[2] % 10)\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RetrievalTimeout && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved because of a timeout\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Underflow && error.length >= 5) {\\n              errorMessage = abi.encodePacked(\\n                \\\"Underflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Overflow && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Overflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.DivisionByZero && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Division by zero at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeMalformedRequest) {\\n            errorMessage = \\\"The structure of the request is invalid and it cannot be parsed\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgePoorIncentives) {\\n            errorMessage = \\\"The request has been rejected by the bridge node due to poor incentives\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeOversizedResult) {\\n            errorMessage = \\\"The request result length exceeds a bridge contract defined limit\\\";\\n        } else {\\n            errorMessage = abi.encodePacked(\\\"Unknown error (0x\\\", _utohex(error[0]), \\\")\\\");\\n        }\\n        return (errorCode, string(errorMessage));\\n    }\\n\\n    /// @notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        public pure\\n        returns(uint64[] memory)\\n    {\\n        require(\\n            !_result.success,\\n            \\\"WitnetParserLib: Tried to read error code from successful Witnet.Result\\\"\\n        );\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\\\");\\n        return _result.value.decodeBool();\\n    }\\n\\n    /// @notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        returns (int32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16();\\n    }\\n\\n    /// @notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int32[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16Array();\\n    }\\n\\n    /// @notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n      external pure\\n      returns (int128)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128();\\n    }\\n\\n    /// @notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int128[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128Array();\\n    }\\n\\n    /// @notice Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        returns(string memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\\\");\\n        return _result.value.decodeString();\\n    }\\n\\n    /// @notice Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        returns (string[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeStringArray();\\n    }\\n\\n    /// @notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure\\n        returns(uint64)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64();\\n    }\\n\\n    /// @notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        returns (uint64[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Convert a stage index number into the name of the matching Witnet request stage.\\n    /// @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\\n    /// @return The name of the matching stage.\\n    function stageName(uint64 _stageIndex)\\n        public pure\\n        returns (string memory)\\n    {\\n        if (_stageIndex == 0) {\\n            return \\\"retrieval\\\";\\n        } else if (_stageIndex == 1) {\\n            return \\\"aggregation\\\";\\n        } else if (_stageIndex == 2) {\\n            return \\\"tally\\\";\\n        } else {\\n            return \\\"unknown\\\";\\n        }\\n    }\\n\\n    /// @notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\\n    /// @param _discriminant The numeric identifier of an error.\\n    /// @return A member of `Witnet.ErrorCodes`.\\n    function _supportedErrorOrElseUnknown(uint64 _discriminant)\\n        private pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return Witnet.ErrorCodes(_discriminant);\\n    }\\n\\n    /// @notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\\n    /// three less significant decimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its decimal value.\\n    function _utoa(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        if (_u < 10) {\\n            bytes memory b1 = new bytes(1);\\n            b1[0] = bytes1(uint8(_u) + 48);\\n            return string(b1);\\n        } else if (_u < 100) {\\n            bytes memory b2 = new bytes(2);\\n            b2[0] = bytes1(uint8(_u / 10) + 48);\\n            b2[1] = bytes1(uint8(_u % 10) + 48);\\n            return string(b2);\\n        } else {\\n            bytes memory b3 = new bytes(3);\\n            b3[0] = bytes1(uint8(_u / 100) + 48);\\n            b3[1] = bytes1(uint8(_u % 100 / 10) + 48);\\n            b3[2] = bytes1(uint8(_u % 10) + 48);\\n            return string(b3);\\n        }\\n    }\\n\\n    /// @notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its hexadecimal value.\\n    function _utohex(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        bytes memory b2 = new bytes(2);\\n        uint8 d0 = uint8(_u / 16) + 48;\\n        uint8 d1 = uint8(_u % 16) + 48;\\n        if (d0 > 57)\\n            d0 += 7;\\n        if (d1 > 57)\\n            d1 += 7;\\n        b2[0] = bytes1(d0);\\n        b2[1] = bytes1(d1);\\n        return string(b2);\\n    }\\n}\\n\",\"keccak256\":\"0x250634a50e7ad8aaa9f3dde002ca3718de06a65b93be86896011331b996403f0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Payable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"../interfaces/IERC20.sol\\\";\\n\\nabstract contract Payable {\\n    IERC20 public immutable currency;\\n\\n    event Received(address from, uint256 amount);\\n    event Transfer(address to, uint256 amount);\\n\\n    constructor(address _currency) {\\n        currency = IERC20(_currency);\\n    }\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice() internal view virtual returns (uint256);\\n\\n    /// Gets current payment value.\\n    function _getMsgValue() internal view virtual returns (uint256);\\n\\n    /// Perform safe transfer or whatever token is used for paying rewards.\\n    function _safeTransferTo(address payable, uint256) internal virtual;\\n}\\n\",\"keccak256\":\"0xc7f50e489030643b7f061512ad0d8430abc87351941a77589f6b06376c5831b9\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"DeletedQuery(uint256,address)":{"notice":"Emitted when all data related to given query is deleted from the WRB."},"PostedRequest(uint256,address)":{"notice":"Emitted when a Witnet Data Request is posted to the WRB."},"PostedResult(uint256,address)":{"notice":"Emitted when a Witnet-solved result is reported to the WRB."},"Upgraded(address,address,bytes32,bytes32)":{"notice":"Emitted every time the contract gets upgraded."}},"kind":"user","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a boolean value from a Witnet.Result as an `bool` value."},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes` value."},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes32` value."},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`."},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments."},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value."},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value."},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a integer numeric value from a Witnet.Result as an `int128` value."},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value."},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a raw error from a `Witnet.Result` as a `uint64[]`."},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a string value from a Witnet.Result as a `string` value."},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of string values from a Witnet.Result as a `string[]` value."},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a natural numeric value from a Witnet.Result as a `uint64` value."},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value."},"deleteQuery(uint256)":{"notice":"Retrieves copy of all response data related to a previously posted request, removing the whole query from storage."},"estimateReward(uint256)":{"notice":"Estimates the amount of reward we need to insert for a given gas price."},"getNextQueryId()":{"notice":"Returns next request id to be generated by the Witnet Request Board."},"getQueryData(uint256)":{"notice":"Gets the whole Query data contents, if any, no matter its current status."},"getQueryStatus(uint256)":{"notice":"Gets current status of given query."},"initialize(bytes)":{"notice":"Initialize storage-context when invoked as delegatecall. "},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is errored."},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is successful."},"isReporter(address)":{"notice":"Tells whether given address is included in the active reporters control list."},"isUpgradableFrom(address)":{"notice":"Tells whether provided address could eventually upgrade the contract."},"owner()":{"notice":"Gets admin/owner address."},"postRequest(address)":{"notice":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request."},"readRequest(uint256)":{"notice":"Retrieves the whole Request record posted to the Witnet Request Board."},"readRequestBytecode(uint256)":{"notice":"Retrieves the serialized bytecode of a previously posted Witnet Data Request."},"readRequestGasPrice(uint256)":{"notice":"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request."},"readRequestReward(uint256)":{"notice":"Retrieves the reward currently set for a previously posted request."},"readResponse(uint256)":{"notice":"Retrieves the Witnet-provided result, and metadata, to a previously posted request.    "},"readResponseDrTxHash(uint256)":{"notice":"Retrieves the hash of the Witnet transaction that actually solved the referred query."},"readResponseReporter(uint256)":{"notice":"Retrieves the address that reported the result to a previously-posted request."},"readResponseResult(uint256)":{"notice":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request."},"readResponseTimestamp(uint256)":{"notice":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON."},"reportResult(uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request. "},"reportResult(uint256,uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request."},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"notice":"Reports Witnet-provided results to multiple requests within a single EVM tx."},"resultFromCborBytes(bytes)":{"notice":"Decode raw CBOR bytes into a Witnet.Result instance."},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"notice":"Decode a CBOR value into a Witnet.Result instance."},"setReporters(address[])":{"notice":"Adds given addresses to the active reporters control list."},"transferOwnership(address)":{"notice":"Transfers ownership."},"unsetReporters(address[])":{"notice":"Removes given addresses from the active reporters control list."},"upgradeReward(uint256)":{"notice":"Increments the reward of a previously posted request by adding the transaction value to it."},"version()":{"notice":"Retrieves human-readable version tag of current implementation."}},"notice":"Contract to bridge requests to Witnet Decentralized Oracle Network.","version":1}}},"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol":{"WitnetRequestBoardTrustableDefault":{"abi":[{"inputs":[{"internalType":"bool","name":"_upgradable","type":"bool"},{"internalType":"bytes32","name":"_versionTag","type":"bytes32"},{"internalType":"uint256","name":"_reportResultGasLimit","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"string","name":"reason","type":"string"}],"name":"BatchReportError","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"DeletedQuery","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedRequest","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedResult","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"ReportersSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"ReportersUnset","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"baseAddr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"baseCodehash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"versionTag","type":"bytes32"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorCode","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorMessage","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asRawError","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"base","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"codehash","outputs":[{"internalType":"bytes32","name":"_codehash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currency","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"deleteQuery","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"_response","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"destruct","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextQueryId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryData","outputs":[{"components":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"request","type":"tuple"},{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"response","type":"tuple"},{"internalType":"address","name":"from","type":"address"}],"internalType":"struct Witnet.Query","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryStatus","outputs":[{"internalType":"enum Witnet.QueryStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_initData","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isError","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isOk","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_reporter","type":"address"}],"name":"isReporter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isUpgradable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"}],"name":"isUpgradableFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IWitnetRequest","name":"_addr","type":"address"}],"name":"postRequest","outputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequest","outputs":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"_request","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestBytecode","outputs":[{"internalType":"bytes","name":"_bytecode","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestGasPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponse","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"_response","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseDrTxHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseReporter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseResult","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"uint256","name":"_timestamp","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"queryId","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct IWitnetRequestBoardReporter.BatchResult[]","name":"_batchResults","type":"tuple[]"},{"internalType":"bool","name":"_verbose","type":"bool"}],"name":"reportResultBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"resultFromCborBytes","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"resultFromCborValue","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"_reporters","type":"address[]"}],"name":"setReporters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_exReporters","type":"address[]"}],"name":"unsetReporters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"upgradeReward","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}],"devdoc":{"author":"The Witnet Foundation","details":"This contract enables posting requests that Witnet bridges will insert into the Witnet network. The result of the requests will be posted back to this contract by the bridge nodes too.","kind":"dev","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bool` decoded from the Witnet.Result."}},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes` decoded from the Witnet.Result."}},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes32` decoded from the Witnet.Result."}},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `CBORValue.Error memory` decoded from the Witnet.Result."}},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function","params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."}},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `uint64[]` raw error as decoded from the `Witnet.Result`."}},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string` decoded from the Witnet.Result."}},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string[]` decoded from the Witnet.Result."}},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64` decoded from the Witnet.Result."}},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64[]` decoded from the Witnet.Result."}},"base()":{"details":"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern."},"codehash()":{"details":"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.","returns":{"_codehash":"This contracts immutable codehash."}},"deleteQuery(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.","params":{"_queryId":"The unique query identifier."}},"estimateReward(uint256)":{"params":{"_gasPrice":"The gas price for which we need to calculate the rewards."}},"initialize(bytes)":{"details":"Must fail when trying to initialize same instance more than once."},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if errored, `false` if successful."}},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if successful, `false` if errored."}},"isReporter(address)":{"params":{"_reporter":"The address to be checked."}},"isUpgradable()":{"details":"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling."},"postRequest(address)":{"details":"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.","params":{"_addr":"The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode."},"returns":{"_queryId":"An unique query identifier."}},"proxiableUUID()":{"details":"Gets immutable \"heritage blood line\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.      If implemented as an Upgradable touch, upgrading this contract to another one with a different       `proxiableUUID()` value should fail."},"readRequest(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.","params":{"_queryId":"The unique identifier of a previously posted query."}},"readRequestBytecode(uint256)":{"details":"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.","params":{"_queryId":"The unique query identifier."}},"readRequestGasPrice(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier"}},"readRequestReward(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier"}},"readResponse(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier"}},"readResponseDrTxHash(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseReporter(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier"}},"readResponseResult(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier"}},"readResponseTimestamp(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"reportResult(uint256,bytes32,bytes)":{"details":"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_cborBytes":"The result itself as bytes.","_drTxHash":"The hash of the solving tally transaction in Witnet.","_queryId":"The unique identifier of the data request."}},"reportResult(uint256,uint256,bytes32,bytes)":{"details":"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_cborBytes":"The result itself as bytes.","_drTxHash":"The hash of the solving tally transaction in Witnet.","_queryId":"The unique query identifier","_timestamp":"The timestamp of the solving tally transaction in Witnet."}},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"details":"Fails if called from unauthorized address.Emits a PostedResult event for every succesfully reported result, if any.","params":{"_batchResults":"Array of BatchedResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.","_verbose":"If true, emits a BatchReportError event for every failing report, if any. "}},"resultFromCborBytes(bytes)":{"params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.Result` instance."}},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"A `Witnet.Result` instance."}},"setReporters(address[])":{"details":"Can only be called from the owner address.Emits the `ReportersSet` event. ","params":{"_reporters":"List of addresses to be added to the active reporters control list."}},"unsetReporters(address[])":{"details":"Can only be called from the owner address.Emits the `ReportersUnset` event. ","params":{"_exReporters":"List of addresses to be added to the active reporters control list."}},"upgradeReward(uint256)":{"details":"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. ","params":{"_queryId":"The unique query identifier."}}},"title":"Witnet Request Board \"trustable\" implementation contract.","version":1},"evm":{"bytecode":{"functionDebugData":{"@_1301":{"entryPoint":null,"id":1301,"parameterSlots":0,"returnSlots":0},"@_1581":{"entryPoint":null,"id":1581,"parameterSlots":0,"returnSlots":0},"@_1847":{"entryPoint":null,"id":1847,"parameterSlots":2,"returnSlots":0},"@_1922":{"entryPoint":null,"id":1922,"parameterSlots":3,"returnSlots":0},"@_3450":{"entryPoint":null,"id":3450,"parameterSlots":3,"returnSlots":0},"@_8130":{"entryPoint":null,"id":8130,"parameterSlots":1,"returnSlots":0},"@_8214":{"entryPoint":null,"id":8214,"parameterSlots":1,"returnSlots":0},"@_acls_1603":{"entryPoint":471,"id":1603,"parameterSlots":0,"returnSlots":1},"@_state_1553":{"entryPoint":431,"id":1553,"parameterSlots":0,"returnSlots":1},"abi_decode_t_bool_fromMemory":{"entryPoint":511,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":534,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256_fromMemory":{"entryPoint":557,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_boolt_bytes32t_uint256_fromMemory":{"entryPoint":580,"id":null,"parameterSlots":2,"returnSlots":3},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"cleanup_t_bool":{"entryPoint":672,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":684,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":694,"id":null,"parameterSlots":1,"returnSlots":1},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":704,"id":null,"parameterSlots":0,"returnSlots":0},"validator_revert_t_bool":{"entryPoint":709,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":735,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":761,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:2075:46","statements":[{"body":{"nodeType":"YulBlock","src":"67:77:46","statements":[{"nodeType":"YulAssignment","src":"77:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"92:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86:5:46"},"nodeType":"YulFunctionCall","src":"86:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"77:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"132:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"108:23:46"},"nodeType":"YulFunctionCall","src":"108:30:46"},"nodeType":"YulExpressionStatement","src":"108:30:46"}]},"name":"abi_decode_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"45:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"53:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"61:5:46","type":""}],"src":"7:137:46"},{"body":{"nodeType":"YulBlock","src":"213:80:46","statements":[{"nodeType":"YulAssignment","src":"223:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"238:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"232:5:46"},"nodeType":"YulFunctionCall","src":"232:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"223:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"281:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"254:26:46"},"nodeType":"YulFunctionCall","src":"254:33:46"},"nodeType":"YulExpressionStatement","src":"254:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"191:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"199:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"207:5:46","type":""}],"src":"150:143:46"},{"body":{"nodeType":"YulBlock","src":"362:80:46","statements":[{"nodeType":"YulAssignment","src":"372:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"387:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"381:5:46"},"nodeType":"YulFunctionCall","src":"381:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"372:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"430:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"403:26:46"},"nodeType":"YulFunctionCall","src":"403:33:46"},"nodeType":"YulExpressionStatement","src":"403:33:46"}]},"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"340:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"348:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"356:5:46","type":""}],"src":"299:143:46"},{"body":{"nodeType":"YulBlock","src":"556:549:46","statements":[{"body":{"nodeType":"YulBlock","src":"602:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"604:77:46"},"nodeType":"YulFunctionCall","src":"604:79:46"},"nodeType":"YulExpressionStatement","src":"604:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"577:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"586:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"573:3:46"},"nodeType":"YulFunctionCall","src":"573:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"598:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"569:3:46"},"nodeType":"YulFunctionCall","src":"569:32:46"},"nodeType":"YulIf","src":"566:119:46"},{"nodeType":"YulBlock","src":"695:125:46","statements":[{"nodeType":"YulVariableDeclaration","src":"710:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"724:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"714:6:46","type":""}]},{"nodeType":"YulAssignment","src":"739:71:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"782:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"793:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"778:3:46"},"nodeType":"YulFunctionCall","src":"778:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"802:7:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"749:28:46"},"nodeType":"YulFunctionCall","src":"749:61:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"739:6:46"}]}]},{"nodeType":"YulBlock","src":"830:129:46","statements":[{"nodeType":"YulVariableDeclaration","src":"845:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"859:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"849:6:46","type":""}]},{"nodeType":"YulAssignment","src":"875:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"921:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"932:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"917:3:46"},"nodeType":"YulFunctionCall","src":"917:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"941:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"885:31:46"},"nodeType":"YulFunctionCall","src":"885:64:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"875:6:46"}]}]},{"nodeType":"YulBlock","src":"969:129:46","statements":[{"nodeType":"YulVariableDeclaration","src":"984:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"998:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"988:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1014:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1060:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1071:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1056:3:46"},"nodeType":"YulFunctionCall","src":"1056:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1080:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"1024:31:46"},"nodeType":"YulFunctionCall","src":"1024:64:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"1014:6:46"}]}]}]},"name":"abi_decode_tuple_t_boolt_bytes32t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"510:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"521:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"533:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"541:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"549:6:46","type":""}],"src":"448:657:46"},{"body":{"nodeType":"YulBlock","src":"1151:35:46","statements":[{"nodeType":"YulAssignment","src":"1161:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1177:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1171:5:46"},"nodeType":"YulFunctionCall","src":"1171:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"1161:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"1144:6:46","type":""}],"src":"1111:75:46"},{"body":{"nodeType":"YulBlock","src":"1234:48:46","statements":[{"nodeType":"YulAssignment","src":"1244:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1269:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1262:6:46"},"nodeType":"YulFunctionCall","src":"1262:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1255:6:46"},"nodeType":"YulFunctionCall","src":"1255:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"1244:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1216:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"1226:7:46","type":""}],"src":"1192:90:46"},{"body":{"nodeType":"YulBlock","src":"1333:32:46","statements":[{"nodeType":"YulAssignment","src":"1343:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"1354:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"1343:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1315:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"1325:7:46","type":""}],"src":"1288:77:46"},{"body":{"nodeType":"YulBlock","src":"1416:32:46","statements":[{"nodeType":"YulAssignment","src":"1426:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"1437:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"1426:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1398:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"1408:7:46","type":""}],"src":"1371:77:46"},{"body":{"nodeType":"YulBlock","src":"1543:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1560:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1563:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1553:6:46"},"nodeType":"YulFunctionCall","src":"1553:12:46"},"nodeType":"YulExpressionStatement","src":"1553:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"1454:117:46"},{"body":{"nodeType":"YulBlock","src":"1666:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1683:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1686:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1676:6:46"},"nodeType":"YulFunctionCall","src":"1676:12:46"},"nodeType":"YulExpressionStatement","src":"1676:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"1577:117:46"},{"body":{"nodeType":"YulBlock","src":"1740:76:46","statements":[{"body":{"nodeType":"YulBlock","src":"1794:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1803:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1806:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1796:6:46"},"nodeType":"YulFunctionCall","src":"1796:12:46"},"nodeType":"YulExpressionStatement","src":"1796:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1763:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1785:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"1770:14:46"},"nodeType":"YulFunctionCall","src":"1770:21:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1760:2:46"},"nodeType":"YulFunctionCall","src":"1760:32:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1753:6:46"},"nodeType":"YulFunctionCall","src":"1753:40:46"},"nodeType":"YulIf","src":"1750:60:46"}]},"name":"validator_revert_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1733:5:46","type":""}],"src":"1700:116:46"},{"body":{"nodeType":"YulBlock","src":"1865:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"1922:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1931:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"1934:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"1924:6:46"},"nodeType":"YulFunctionCall","src":"1924:12:46"},"nodeType":"YulExpressionStatement","src":"1924:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1888:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1913:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"1895:17:46"},"nodeType":"YulFunctionCall","src":"1895:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"1885:2:46"},"nodeType":"YulFunctionCall","src":"1885:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"1878:6:46"},"nodeType":"YulFunctionCall","src":"1878:43:46"},"nodeType":"YulIf","src":"1875:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1858:5:46","type":""}],"src":"1822:122:46"},{"body":{"nodeType":"YulBlock","src":"1993:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"2050:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2059:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2062:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"2052:6:46"},"nodeType":"YulFunctionCall","src":"2052:12:46"},"nodeType":"YulExpressionStatement","src":"2052:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2016:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2041:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"2023:17:46"},"nodeType":"YulFunctionCall","src":"2023:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"2013:2:46"},"nodeType":"YulFunctionCall","src":"2013:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"2006:6:46"},"nodeType":"YulFunctionCall","src":"2006:43:46"},"nodeType":"YulIf","src":"2003:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1986:5:46","type":""}],"src":"1950:122:46"}]},"contents":"{\n\n    function abi_decode_t_bool_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bool(value)\n    }\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(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_boolt_bytes32t_uint256_fromMemory(headStart, dataEnd) -> value0, value1, value2 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 64\n\n            value2 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\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_uint256(value) -> cleaned {\n        cleaned := value\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function validator_revert_t_bool(value) {\n        if iszero(eq(value, cleanup_t_bool(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":46,"language":"Yul","name":"#utility.yul"}],"linkReferences":{"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol":{"WitnetParserLib":[{"length":20,"start":4587},{"length":20,"start":4738},{"length":20,"start":4889},{"length":20,"start":5360},{"length":20,"start":5511},{"length":20,"start":6211},{"length":20,"start":8156},{"length":20,"start":9887},{"length":20,"start":12506},{"length":20,"start":12692},{"length":20,"start":13571},{"length":20,"start":14351},{"length":20,"start":14533},{"length":20,"start":15320},{"length":20,"start":15519},{"length":20,"start":15808},{"length":20,"start":15966},{"length":20,"start":16263},{"length":20,"start":16599}]}},"object":"6101406040523480156200001257600080fd5b5060405162007eae38038062007eae833981810160405281019062000038919062000244565b82826000828281838073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b81525050503362000089620001af60201b60201c565b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001620000dc620001d760201b60201c565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060003090506000813f90508173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff1660601b815250508060c0818152505082151560e081151560f81b81525050505050806101008181525050505050505080610120818152505050505062000313565b60007ff595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183905090565b60007fa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd905090565b6000815190506200021081620002c5565b92915050565b6000815190506200022781620002df565b92915050565b6000815190506200023e81620002f9565b92915050565b60008060006060848603121562000260576200025f620002c0565b5b60006200027086828701620001ff565b9350506020620002838682870162000216565b925050604062000296868287016200022d565b9150509250925092565b60008115159050919050565b6000819050919050565b6000819050919050565b600080fd5b620002d081620002a0565b8114620002dc57600080fd5b50565b620002ea81620002ac565b8114620002f657600080fd5b50565b6200030481620002b6565b81146200031057600080fd5b50565b60805160601c60a05160601c60c05160e05160f81c6101005161012051617b426200036c60003960006138fd01526000611d8101526000611d5901526000612dff01526000611d0601526000613d3f0152617b426000f3fe6080604052600436106102e85760003560e01c80637780cde111610190578063c805dd0f116100dc578063d4da69ac11610095578063dc3c71cd1161006f578063dc3c71cd14610d4d578063e5a6b10f14610d8a578063e99e47f314610db5578063f2fde38b14610df257610328565b8063d4da69ac14610c95578063d74803be14610cd2578063db04f16d14610d1057610328565b8063c805dd0f14610b4d578063c87d969e14610b78578063c8f5cdd514610bb5578063cf62d11514610bde578063d2e8756114610c1b578063d4ced13214610c5857610328565b8063a8604c1a11610149578063b281a7bd11610123578063b281a7bd14610a66578063bc7e25ff14610a96578063c2485ebd14610ad3578063c683b46514610b1057610328565b8063a8604c1a146109c1578063a9e954b9146109fe578063b076832814610a2957610328565b80637780cde1146108795780637c1fbda3146108b657806381a398b5146108f35780638da5cb5b1461091c57806399f65804146109475780639d96fced1461098457610328565b80633b885f2a1161024f5780635479d9401161020857806366bfdc75116101e257806366bfdc75146107a65780636b58960a146107c25780636f07abcc146107ff578063754e5bea1461083c57610328565b80635479d9401461072757806354fd4d50146107525780636280bce81461077d57610328565b80633b885f2a14610605578063439fab91146106425780634c9f72e31461066b5780634dcffaf3146106945780635001f3b5146106d157806352d1902d146106fc57610328565b80632241f2db116102a15780632241f2db146104d15780632565082b1461050e57806328a78d9b1461054b5780632b68b9c6146105745780632b905fbb1461058b5780633ae97295146105c857610328565b8063044ad7be1461036357806307e66852146103a05780630f572d2c146103dd578063109a0e3c1461041a5780631dd27daf1461045757806320f9241e1461049457610328565b36610328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161031f906167c2565b60405180910390fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161035a90616962565b60405180910390fd5b34801561036f57600080fd5b5061038a600480360381019061038591906151be565b610e1b565b604051610397919061662d565b60405180910390f35b3480156103ac57600080fd5b506103c760048036038101906103c2919061568b565b610e7a565b6040516103d491906165a5565b60405180910390f35b3480156103e957600080fd5b5061040460048036038101906103ff919061568b565b610f11565b60405161041191906165c7565b60405180910390f35b34801561042657600080fd5b50610441600480360381019061043c919061568b565b610fa8565b60405161044e9190616780565b60405180910390f35b34801561046357600080fd5b5061047e6004803603810190610479919061571d565b61103f565b60405161048b9190616a47565b60405180910390f35b3480156104a057600080fd5b506104bb60048036038101906104b6919061571d565b6110ea565b6040516104c89190616a47565b60405180910390f35b3480156104dd57600080fd5b506104f860048036038101906104f3919061568b565b61117f565b6040516105059190616765565b60405180910390f35b34801561051a57600080fd5b5061053560048036038101906105309190615642565b611211565b6040516105429190616a25565b60405180910390f35b34801561055757600080fd5b50610572600480360381019061056d91906151eb565b6112ac565b005b34801561058057600080fd5b50610589611420565b005b34801561059757600080fd5b506105b260048036038101906105ad919061568b565b6114d2565b6040516105bf919061674a565b60405180910390f35b3480156105d457600080fd5b506105ef60048036038101906105ea919061571d565b611564565b6040516105fc9190616a47565b60405180910390f35b34801561061157600080fd5b5061062c6004803603810190610627919061571d565b61160f565b6040516106399190616685565b60405180910390f35b34801561064e57600080fd5b5061066960048036038101906106649190615457565b6117e4565b005b34801561067757600080fd5b50610692600480360381019061068d91906151eb565b611af7565b005b3480156106a057600080fd5b506106bb60048036038101906106b6919061568b565b611c6b565b6040516106c8919061660b565b60405180910390f35b3480156106dd57600080fd5b506106e6611d02565b6040516106f39190616568565b60405180910390f35b34801561070857600080fd5b50610711611d2a565b60405161071e9190616648565b60405180910390f35b34801561073357600080fd5b5061073c611d55565b604051610749919061662d565b60405180910390f35b34801561075e57600080fd5b50610767611d7d565b6040516107749190616648565b60405180910390f35b34801561078957600080fd5b506107a4600480360381019061079f919061574a565b611da5565b005b6107c060048036038101906107bb919061571d565b611fdd565b005b3480156107ce57600080fd5b506107e960048036038101906107e491906151be565b612106565b6040516107f6919061662d565b60405180910390f35b34801561080b57600080fd5b506108266004803603810190610821919061571d565b61217e565b604051610833919061672f565b60405180910390f35b34801561084857600080fd5b50610863600480360381019061085e919061571d565b612190565b60405161087091906169e1565b60405180910390f35b34801561088557600080fd5b506108a0600480360381019061089b919061568b565b61232e565b6040516108ad919061662d565b60405180910390f35b3480156108c257600080fd5b506108dd60048036038101906108d8919061571d565b6123c0565b6040516108ea91906169e1565b60405180910390f35b3480156108ff57600080fd5b5061091a60048036038101906109159190615358565b612746565b005b34801561092857600080fd5b50610931612a44565b60405161093e9190616568565b60405180910390f35b34801561095357600080fd5b5061096e6004803603810190610969919061571d565b612a77565b60405161097b91906169c6565b60405180910390f35b34801561099057600080fd5b506109ab60048036038101906109a6919061571d565b612cb4565b6040516109b89190616568565b60405180910390f35b3480156109cd57600080fd5b506109e860048036038101906109e3919061568b565b612d69565b6040516109f5919061662d565b60405180910390f35b348015610a0a57600080fd5b50610a13612dfb565b604051610a209190616648565b60405180910390f35b348015610a3557600080fd5b50610a506004803603810190610a4b919061568b565b612e23565b604051610a5d919061660b565b60405180910390f35b610a806004803603810190610a7b91906154e9565b612eba565b604051610a8d9190616a47565b60405180910390f35b348015610aa257600080fd5b50610abd6004803603810190610ab8919061568b565b613192565b604051610aca9190616b43565b60405180910390f35b348015610adf57600080fd5b50610afa6004803603810190610af5919061571d565b613224565b604051610b0791906169a4565b60405180910390f35b348015610b1c57600080fd5b50610b376004803603810190610b32919061568b565b61349e565b604051610b449190616685565b60405180910390f35b348015610b5957600080fd5b50610b62613535565b604051610b6f9190616a47565b60405180910390f35b348015610b8457600080fd5b50610b9f6004803603810190610b9a919061568b565b613554565b604051610bac91906165e9565b60405180910390f35b348015610bc157600080fd5b50610bdc6004803603810190610bd791906157be565b6135eb565b005b348015610bea57600080fd5b50610c056004803603810190610c00919061568b565b613867565b604051610c129190616648565b60405180910390f35b348015610c2757600080fd5b50610c426004803603810190610c3d919061571d565b6138f9565b604051610c4f9190616a47565b60405180910390f35b348015610c6457600080fd5b50610c7f6004803603810190610c7a919061568b565b61392e565b604051610c8c919061662d565b60405180910390f35b348015610ca157600080fd5b50610cbc6004803603810190610cb7919061571d565b6139c0565b604051610cc99190616a25565b60405180910390f35b348015610cde57600080fd5b50610cf96004803603810190610cf4919061568b565b613aeb565b604051610d079291906166ff565b60405180910390f35b348015610d1c57600080fd5b50610d376004803603810190610d32919061568b565b613c16565b604051610d4491906166e4565b60405180910390f35b348015610d5957600080fd5b50610d746004803603810190610d6f919061571d565b613ca8565b604051610d819190616648565b60405180910390f35b348015610d9657600080fd5b50610d9f613d3d565b604051610dac91906166c9565b60405180910390f35b348015610dc157600080fd5b50610ddc6004803603810190610dd79190615457565b613d61565b604051610de99190616a25565b60405180910390f35b348015610dfe57600080fd5b50610e196004803603810190610e1491906151be565b613dfc565b005b6000610e25613fa1565b60000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__63fc853c3790916040518263ffffffff1660e01b8152600401610eb59190616a03565b60006040518083038186803b158015610ecd57600080fd5b505af4158015610ee1573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610f0a919061527d565b9050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__6308efc09790916040518263ffffffff1660e01b8152600401610f4c9190616a03565b60006040518083038186803b158015610f6457600080fd5b505af4158015610f78573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610fa191906152c6565b9050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__63f417daf590916040518263ffffffff1660e01b8152600401610fe39190616a03565b60006040518083038186803b158015610ffb57600080fd5b505af415801561100f573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061103891906155f9565b9050919050565b6000816001806003811115611057576110566171b4565b5b61106083613fc9565b6003811115611072576110716171b4565b5b1461107c82614099565b906110bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b49190616780565b60405180910390fd5b506110c66141bf565b60030160008581526020019081526020016000206000016004015492505050919050565b6000816002806003811115611102576111016171b4565b5b61110b83613fc9565b600381111561111d5761111c6171b4565b5b1461112782614099565b90611168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115f9190616780565b60405180910390fd5b50611172846141e7565b6001015492505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63d8868db690916040518263ffffffff1660e01b81526004016111ba9190616a03565b60206040518083038186803b1580156111d257600080fd5b505af41580156111e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120a91906155cc565b9050919050565b611219614409565b73__$2872872f739c245a20da3eaa995328fa91$__63130283ee836040518263ffffffff1660e01b81526004016112509190616982565b60006040518083038186803b15801561126857600080fd5b505af415801561127c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906112a591906156d4565b9050919050565b6112b46141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611345576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133c906167e2565b60405180910390fd5b60005b81518110156113e557600082828151811061136657611365617212565b5b60200260200101519050600061137a613fa1565b60000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505080806113dd9061713c565b915050611348565b507f646436560d9757cb3c0f01da0f62642c6040b00c9a80685f94ef1a7725cad5f1816040516114159190616583565b60405180910390a150565b6114286141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b0906167e2565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b60008173__$2872872f739c245a20da3eaa995328fa91$__63c71db52190916040518263ffffffff1660e01b815260040161150d9190616a03565b60206040518083038186803b15801561152557600080fd5b505af4158015611539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155d919061559f565b9050919050565b600081600180600381111561157c5761157b6171b4565b5b61158583613fc9565b6003811115611597576115966171b4565b5b146115a182614099565b906115e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d99190616780565b60405180910390fd5b506115eb6141bf565b60030160008581526020019081526020016000206000016003015492505050919050565b606060006003811115611625576116246171b4565b5b61162e83613fc9565b60038111156116405761163f6171b4565b5b1415611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167890616942565b60405180910390fd5b600061168c8361420f565b9050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117de578060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f09400026040518163ffffffff1660e01b815260040160006040518083038186803b15801561175057600080fd5b505afa158015611764573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061178d91906154a0565b9150806002015461179d83614237565b146117dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d490616882565b60405180910390fd5b5b50919050565b60006117ee6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561189b57339050806118556141bf565b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061190a565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611909576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190090616922565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff1661192a6141bf565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a0b57611971611d02565b73ffffffffffffffffffffffffffffffffffffffff1661198f6141bf565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611a0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0190616902565b60405180910390fd5b5b611a13611d02565b611a1b6141bf565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611a64612dfb565b611a6c611d02565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f72d4b00d8e35b3717e384aef5f900256a106d6a423d88935a11579981333ba20611ac2611d7d565b604051611acf9190616648565b60405180910390a4611af382806020019051810190611aee9190615234565b611af7565b5050565b611aff6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b87906167e2565b60405180910390fd5b60005b8151811015611c30576000828281518110611bb157611bb0617212565b5b602002602001015190506001611bc5613fa1565b60000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550508080611c289061713c565b915050611b93565b507f4d570ee36dec878006609360d34ac8d6a0b68d521871ae15a407b6340877ca0181604051611c609190616583565b60405180910390a150565b60608173__$2872872f739c245a20da3eaa995328fa91$__63147e5c8f90916040518263ffffffff1660e01b8152600401611ca69190616a03565b60006040518083038186803b158015611cbe57600080fd5b505af4158015611cd2573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611cfb91906153b4565b9050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a101860001b905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b611dad613fa1565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611e3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e31906168c2565b60405180910390fd5b836001806003811115611e5057611e4f6171b4565b5b611e5983613fc9565b6003811115611e6b57611e6a6171b4565b5b14611e7582614099565b90611eb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ead9190616780565b60405180910390fd5b506000801b851415611efd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef4906168a2565b60405180910390fd5b6000848490501415611f44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3b906168e2565b60405180910390fd5b611f9d33611f9888428989898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050614290565b6143ae565b7ee9413c6321ec446a267b7ebf5bb108663f2ef58b35c4f6e18905ac8f205cb28633604051611fcd929190616a62565b60405180910390a1505050505050565b806001806003811115611ff357611ff26171b4565b5b611ffc83613fc9565b600381111561200e5761200d6171b4565b5b1461201882614099565b90612059576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120509190616780565b60405180910390fd5b5060006120658461420f565b905060006120716143f9565b82600401546120809190616ea6565b9050600061208c614401565b905082600301548111156120f55760006120a5826138f9565b9050808310156120ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e190616862565b60405180910390fd5b818460030181905550505b818360040181905550505050505050565b6000806121116141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905061213f611d55565b801561217657508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b915050919050565b600061218982613fc9565b9050919050565b61219861442b565b8160028060038111156121ae576121ad6171b4565b5b6121b783613fc9565b60038111156121c9576121c86171b4565b5b146121d382614099565b90612214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220b9190616780565b60405180910390fd5b5061221e846141e7565b6040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201548152602001600282015481526020016003820180546122a3906170d9565b80601f01602080910402602001604051908101604052809291908181526020018280546122cf906170d9565b801561231c5780601f106122f15761010080835404028352916020019161231c565b820191906000526020600020905b8154815290600101906020018083116122ff57829003601f168201915b50505050508152505092505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63a1d45d5690916040518263ffffffff1660e01b81526004016123699190616a03565b60206040518083038186803b15801561238157600080fd5b505af4158015612395573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123b991906153fd565b9050919050565b6123c861442b565b8160028060038111156123de576123dd6171b4565b5b6123e783613fc9565b60038111156123f9576123f86171b4565b5b1461240382614099565b90612444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243b9190616780565b60405180910390fd5b50600061244f6141bf565b600301600086815260200190815260200160002090508060090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124ee90616842565b60405180910390fd5b806005016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152602001600382018054612580906170d9565b80601f01602080910402602001604051908101604052809291908181526020018280546125ac906170d9565b80156125f95780601f106125ce576101008083540402835291602001916125f9565b820191906000526020600020905b8154815290600101906020018083116125dc57829003601f168201915b505050505081525050935061260c6141bf565b60030160008681526020019081526020016000206000808201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600282016000905560038201600090556004820160009055505060058201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905560028201600090556003820160006126da919061446c565b50506009820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507fdec847db058c9c012e0f3dbe2b99e05cfa4c693f61a7d8bc64652a68913cbfff8533604051612736929190616a62565b60405180910390a1505050919050565b61274e613fa1565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166127db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127d2906168c2565b60405180910390fd5b6000808351905060005b81811015612a2957600085828151811061280257612801617212565b5b60200260200101519050600160038111156128205761281f6171b4565b5b61282d8260000151613fc9565b600381111561283f5761283e6171b4565b5b1461288b578415612886577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f816000015160405161287d9190616ab9565b60405180910390a15b612a15565b6000801b816040015114156128e15784156128dc577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f81600001516040516128d39190616ae7565b60405180910390a15b612a14565b60008160600151511415612936578415612931577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f81600001516040516129289190616b15565b60405180910390a15b612a13565b6000816020015111801561294d5750428160200151115b15612999578415612994577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f816000015160405161298b9190616a8b565b60405180910390a15b612a12565b6129c8816000015160008360200151146129b75782602001516129b9565b425b83604001518460600151614290565b846129d39190616ea6565b93507ee9413c6321ec446a267b7ebf5bb108663f2ef58b35c4f6e18905ac8f205cb2816000015133604051612a09929190616a62565b60405180910390a15b5b5b5b508080612a219061713c565b9150506127e5565b506000821115612a3e57612a3d33836143ae565b5b50505050565b6000612a4e6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b612a7f6144ac565b816001806003811115612a9557612a946171b4565b5b612a9e83613fc9565b6003811115612ab057612aaf6171b4565b5b14612aba82614099565b90612afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612af29190616780565b60405180910390fd5b506000612b066141bf565b60030160008681526020019081526020016000209050806000016040518060a00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160028201548152602001600382015481526020016004820154815250509350600073ffffffffffffffffffffffffffffffffffffffff168160090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612cac578060090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b505050919050565b6000816002806003811115612ccc57612ccb6171b4565b5b612cd583613fc9565b6003811115612ce757612ce66171b4565b5b14612cf182614099565b90612d32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d299190616780565b60405180910390fd5b50612d3c846141e7565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__636646c11990916040518263ffffffff1660e01b8152600401612da49190616a03565b60206040518083038186803b158015612dbc57600080fd5b505af4158015612dd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612df491906153fd565b9050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60608173__$2872872f739c245a20da3eaa995328fa91$__630879730d90916040518263ffffffff1660e01b8152600401612e5e9190616a03565b60006040518083038186803b158015612e7657600080fd5b505af4158015612e8a573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612eb391906153b4565b9050919050565b600080612ec56143f9565b90506000612ed1614401565b90506000612ede826138f9565b905080831015612f23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f1a90616862565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612f93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f8a906167a2565b60405180910390fd5b60008573ffffffffffffffffffffffffffffffffffffffff1663f09400026040518163ffffffff1660e01b815260040160006040518083038186803b158015612fdb57600080fd5b505afa158015612fef573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061301891906154a0565b9050600081511161305e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161305590616822565b60405180910390fd5b6130666141bf565b600201600081546130769061713c565b9190508190559450336130876141bf565b600301600087815260200190815260200160002060090160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006130e78661420f565b9050868160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061313582614237565b81600201819055508381600301819055508481600401819055507fcabaf9c102f83746b27ae932f638eebfaf5ea7d014edd20ab14dec3768a8f55c8633604051613180929190616a62565b60405180910390a15050505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__638233f9b390916040518263ffffffff1660e01b81526004016131cd9190616a03565b60206040518083038186803b1580156131e557600080fd5b505af41580156131f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061321d9190615846565b9050919050565b61322c61450a565b6132346141bf565b6003016000838152602001908152602001600020604051806060016040529081600082016040518060a00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160028201548152602001600382015481526020016004820154815250508152602001600582016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201548152602001600282015481526020016003820180546133bb906170d9565b80601f01602080910402602001604051908101604052809291908181526020018280546133e7906170d9565b80156134345780601f1061340957610100808354040283529160200191613434565b820191906000526020600020905b81548152906001019060200180831161341757829003601f168201915b50505050508152505081526020016009820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__63a1b9089190916040518263ffffffff1660e01b81526004016134d99190616a03565b60006040518083038186803b1580156134f157600080fd5b505af4158015613505573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061352e91906154a0565b9050919050565b600060016135416141bf565b6002015461354f9190616ea6565b905090565b60608173__$2872872f739c245a20da3eaa995328fa91$__632d26b9e290916040518263ffffffff1660e01b815260040161358f9190616a03565b60006040518083038186803b1580156135a757600080fd5b505af41580156135bb573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906135e4919061530f565b9050919050565b6135f3613fa1565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16613680576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613677906168c2565b60405180910390fd5b846001806003811115613696576136956171b4565b5b61369f83613fc9565b60038111156136b1576136b06171b4565b5b146136bb82614099565b906136fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136f39190616780565b60405180910390fd5b5042861115613740576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161373790616802565b60405180910390fd5b6000801b851415613786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161377d906168a2565b60405180910390fd5b60008484905014156137cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137c4906168e2565b60405180910390fd5b6138263361382189898989898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050614290565b6143ae565b7ee9413c6321ec446a267b7ebf5bb108663f2ef58b35c4f6e18905ac8f205cb28733604051613856929190616a62565b60405180910390a150505050505050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63a2e8765590916040518263ffffffff1660e01b81526004016138a29190616a03565b60206040518083038186803b1580156138ba57600080fd5b505af41580156138ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138f2919061542a565b9050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000826139279190616efc565b9050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63abf82f4c90916040518263ffffffff1660e01b81526004016139699190616a03565b60206040518083038186803b15801561398157600080fd5b505af4158015613995573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139b991906153fd565b9050919050565b6139c8614409565b8160028060038111156139de576139dd6171b4565b5b6139e783613fc9565b60038111156139f9576139f86171b4565b5b14613a0382614099565b90613a44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a3b9190616780565b60405180910390fd5b506000613a50856141e7565b905073__$2872872f739c245a20da3eaa995328fa91$__63e99e47f3826003016040518263ffffffff1660e01b8152600401613a8c91906166a7565b60006040518083038186803b158015613aa457600080fd5b505af4158015613ab8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190613ae191906156d4565b9350505050919050565b600060608273__$2872872f739c245a20da3eaa995328fa91$__638cc5eb5490916040518263ffffffff1660e01b8152600401613b289190616a03565b60006040518083038186803b158015613b4057600080fd5b505af4925050508015613b7657506040513d6000823e3d601f19601f82011682018060405250810190613b739190615543565b60015b613c0857613b82617270565b806308c379a01415613baf5750613b976178b5565b80613ba25750613bb1565b6000819250925050613c11565b505b3d8060008114613bdd576040519150601f19603f3d011682016040523d82523d6000602084013e613be2565b606091505b5060ff6040518060600160405280602f8152602001617ade602f91399250925050613c11565b81819350935050505b915091565b60008173__$2872872f739c245a20da3eaa995328fa91$__63d45d097d90916040518263ffffffff1660e01b8152600401613c519190616a03565b60206040518083038186803b158015613c6957600080fd5b505af4158015613c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ca19190615516565b9050919050565b6000816002806003811115613cc057613cbf6171b4565b5b613cc983613fc9565b6003811115613cdb57613cda6171b4565b5b14613ce582614099565b90613d26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613d1d9190616780565b60405180910390fd5b50613d30846141e7565b6002015492505050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b613d69614409565b73__$2872872f739c245a20da3eaa995328fa91$__63e99e47f3836040518263ffffffff1660e01b8152600401613da09190616663565b60006040518083038186803b158015613db857600080fd5b505af4158015613dcc573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190613df591906156d4565b9050919050565b613e046141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613e95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613e8c906167e2565b60405180910390fd5b6000613e9f6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614613f9d5781613f016141bf565b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35b5050565b60007fa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd905090565b600080821480613fe35750613fdc6141bf565b6002015482115b15613ff15760009050614094565b6000613ffb6141bf565b600301600084815260200190815260200160002090506000801b81600501600201541461402c576002915050614094565b600073ffffffffffffffffffffffffffffffffffffffff168160090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461408e576001915050614094565b60039150505b919050565b6060600160038111156140af576140ae6171b4565b5b8260038111156140c2576140c16171b4565b5b14156140e857604051806060016040528060258152602001617a926025913990506141ba565b600260038111156140fc576140fb6171b4565b5b82600381111561410f5761410e6171b4565b5b141561413557604051806060016040528060278152602001617ab76027913990506141ba565b600380811115614148576141476171b4565b5b82600381111561415b5761415a6171b4565b5b141561418157604051806060016040528060268152602001617a6c6026913990506141ba565b6040518060400160405280601981526020017f5769746e6574426f617264446174613a20626164206d6f6f640000000000000081525090505b919050565b60007ff595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183905090565b60006141f16141bf565b60030160008381526020019081526020016000206005019050919050565b60006142196141bf565b60030160008381526020019081526020016000206000019050919050565b60006002826040516142499190616551565b602060405180830381855afa158015614266573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190614289919061542a565b9050919050565b60008061429b6141bf565b6003016000878152602001908152602001600020905060008160000190506000826005019050868160010181905550858160020181905550338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508481600301908051906020019061432e92919061454d565b508160040154935082600001600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905560048201600090555050505050949350505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156143f4573d6000803e3d6000fd5b505050565b600034905090565b60003a905090565b60405180604001604052806000151581526020016144256145d3565b81525090565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008019168152602001606081525090565b508054614478906170d9565b6000825580601f1061448a57506144a9565b601f0160209004906000526020600020908101906144a8919061462c565b5b50565b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000801916815260200160008152602001600081525090565b604051806060016040528061451d6144ac565b815260200161452a61442b565b8152602001600073ffffffffffffffffffffffffffffffffffffffff1681525090565b828054614559906170d9565b90600052602060002090601f01602090048101928261457b57600085556145c2565b82601f1061459457805160ff19168380011785556145c2565b828001600101855582156145c2579182015b828111156145c15782518255916020019190600101906145a6565b5b5090506145cf919061462c565b5090565b6040518060c001604052806145e6614649565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b5b8082111561464557600081600090555060010161462d565b5090565b604051806040016040528060608152602001600063ffffffff1681525090565b600061467c61467784616b83565b616b5e565b9050808382526020820190508285602086028201111561469f5761469e6172a6565b5b60005b858110156146cf57816146b58882614a7b565b8452602084019350602083019250506001810190506146a2565b5050509392505050565b60006146ec6146e784616b83565b616b5e565b9050808382526020820190508285602086028201111561470f5761470e6172a6565b5b60005b8581101561473f57816147258882614a90565b845260208401935060208301925050600181019050614712565b5050509392505050565b600061475c61475784616baf565b616b5e565b9050808382526020820190508285602086028201111561477f5761477e6172a6565b5b60005b858110156147af57816147958882614d17565b845260208401935060208301925050600181019050614782565b5050509392505050565b60006147cc6147c784616bdb565b616b5e565b905080838252602082019050828560208602820111156147ef576147ee6172a6565b5b60005b8581101561481f57816148058882614d2c565b8452602084019350602083019250506001810190506147f2565b5050509392505050565b600061483c61483784616c07565b616b5e565b9050808382526020820190508285602086028201111561485f5761485e6172a6565b5b60005b858110156148ad57815167ffffffffffffffff81111561488557614884617297565b5b8086016148928982614d41565b85526020850194506020840193505050600181019050614862565b5050509392505050565b60006148ca6148c584616c33565b616b5e565b905080838252602082019050828560208602820111156148ed576148ec6172a6565b5b60005b8581101561493b57813567ffffffffffffffff81111561491357614912617297565b5b8086016149208982614d6f565b855260208501945060208401935050506001810190506148f0565b5050509392505050565b600061495861495384616c5f565b616b5e565b9050808382526020820190508285602086028201111561497b5761497a6172a6565b5b60005b858110156149ab5781614991888261517f565b84526020840193506020830192505060018101905061497e565b5050509392505050565b60006149c86149c384616c8b565b616b5e565b9050828152602081018484840111156149e4576149e36172ab565b5b6149ef848285617097565b509392505050565b6000614a0a614a0584616c8b565b616b5e565b905082815260208101848484011115614a2657614a256172ab565b5b614a318482856170a6565b509392505050565b6000614a4c614a4784616cbc565b616b5e565b905082815260208101848484011115614a6857614a676172ab565b5b614a738482856170a6565b509392505050565b600081359050614a8a81617974565b92915050565b600081519050614a9f81617974565b92915050565b600082601f830112614aba57614ab9617297565b5b8135614aca848260208601614669565b91505092915050565b600082601f830112614ae857614ae7617297565b5b8151614af88482602086016146d9565b91505092915050565b600082601f830112614b1657614b15617297565b5b8151614b26848260208601614749565b91505092915050565b600082601f830112614b4457614b43617297565b5b8151614b548482602086016147b9565b91505092915050565b600082601f830112614b7257614b71617297565b5b8151614b82848260208601614829565b91505092915050565b600082601f830112614ba057614b9f617297565b5b8135614bb08482602086016148b7565b91505092915050565b600082601f830112614bce57614bcd617297565b5b8151614bde848260208601614945565b91505092915050565b600081359050614bf68161798b565b92915050565b600081519050614c0b8161798b565b92915050565b600081359050614c20816179a2565b92915050565b600081519050614c35816179a2565b92915050565b60008083601f840112614c5157614c50617297565b5b8235905067ffffffffffffffff811115614c6e57614c6d617292565b5b602083019150836001820283011115614c8a57614c896172a6565b5b9250929050565b600082601f830112614ca657614ca5617297565b5b8135614cb68482602086016149b5565b91505092915050565b600082601f830112614cd457614cd3617297565b5b8151614ce48482602086016149f7565b91505092915050565b600081359050614cfc816179b9565b92915050565b600081519050614d11816179d0565b92915050565b600081519050614d26816179e1565b92915050565b600081519050614d3b816179f8565b92915050565b600082601f830112614d5657614d55617297565b5b8151614d66848260208601614a39565b91505092915050565b600060808284031215614d8557614d8461729c565b5b614d8f6080616b5e565b90506000614d9f8482850161512b565b6000830152506020614db38482850161512b565b6020830152506040614dc784828501614c11565b604083015250606082013567ffffffffffffffff811115614deb57614dea6172a1565b5b614df784828501614c91565b60608301525092915050565b600060408284031215614e1957614e1861729c565b5b614e236040616b5e565b9050600082013567ffffffffffffffff811115614e4357614e426172a1565b5b614e4f84828501614c91565b6000830152506020614e6384828501615140565b60208301525092915050565b600060408284031215614e8557614e8461729c565b5b614e8f6040616b5e565b9050600082015167ffffffffffffffff811115614eaf57614eae6172a1565b5b614ebb84828501614cbf565b6000830152506020614ecf84828501615155565b60208301525092915050565b600060c08284031215614ef157614ef061729c565b5b614efb60c0616b5e565b9050600082013567ffffffffffffffff811115614f1b57614f1a6172a1565b5b614f2784828501614e03565b6000830152506020614f3b84828501615194565b6020830152506040614f4f84828501615194565b6040830152506060614f6384828501615194565b6060830152506080614f778482850161516a565b60808301525060a0614f8b8482850161516a565b60a08301525092915050565b600060c08284031215614fad57614fac61729c565b5b614fb760c0616b5e565b9050600082015167ffffffffffffffff811115614fd757614fd66172a1565b5b614fe384828501614e6f565b6000830152506020614ff7848285016151a9565b602083015250604061500b848285016151a9565b604083015250606061501f848285016151a9565b60608301525060806150338482850161517f565b60808301525060a06150478482850161517f565b60a08301525092915050565b6000604082840312156150695761506861729c565b5b6150736040616b5e565b9050600061508384828501614be7565b600083015250602082013567ffffffffffffffff8111156150a7576150a66172a1565b5b6150b384828501614edb565b60208301525092915050565b6000604082840312156150d5576150d461729c565b5b6150df6040616b5e565b905060006150ef84828501614bfc565b600083015250602082015167ffffffffffffffff811115615113576151126172a1565b5b61511f84828501614f97565b60208301525092915050565b60008135905061513a81617a0f565b92915050565b60008135905061514f81617a26565b92915050565b60008151905061516481617a26565b92915050565b60008135905061517981617a3d565b92915050565b60008151905061518e81617a3d565b92915050565b6000813590506151a381617a54565b92915050565b6000815190506151b881617a54565b92915050565b6000602082840312156151d4576151d36172b5565b5b60006151e284828501614a7b565b91505092915050565b600060208284031215615201576152006172b5565b5b600082013567ffffffffffffffff81111561521f5761521e6172b0565b5b61522b84828501614aa5565b91505092915050565b60006020828403121561524a576152496172b5565b5b600082015167ffffffffffffffff811115615268576152676172b0565b5b61527484828501614ad3565b91505092915050565b600060208284031215615293576152926172b5565b5b600082015167ffffffffffffffff8111156152b1576152b06172b0565b5b6152bd84828501614b01565b91505092915050565b6000602082840312156152dc576152db6172b5565b5b600082015167ffffffffffffffff8111156152fa576152f96172b0565b5b61530684828501614b2f565b91505092915050565b600060208284031215615325576153246172b5565b5b600082015167ffffffffffffffff811115615343576153426172b0565b5b61534f84828501614b5d565b91505092915050565b6000806040838503121561536f5761536e6172b5565b5b600083013567ffffffffffffffff81111561538d5761538c6172b0565b5b61539985828601614b8b565b92505060206153aa85828601614be7565b9150509250929050565b6000602082840312156153ca576153c96172b5565b5b600082015167ffffffffffffffff8111156153e8576153e76172b0565b5b6153f484828501614bb9565b91505092915050565b600060208284031215615413576154126172b5565b5b600061542184828501614bfc565b91505092915050565b6000602082840312156154405761543f6172b5565b5b600061544e84828501614c26565b91505092915050565b60006020828403121561546d5761546c6172b5565b5b600082013567ffffffffffffffff81111561548b5761548a6172b0565b5b61549784828501614c91565b91505092915050565b6000602082840312156154b6576154b56172b5565b5b600082015167ffffffffffffffff8111156154d4576154d36172b0565b5b6154e084828501614cbf565b91505092915050565b6000602082840312156154ff576154fe6172b5565b5b600061550d84828501614ced565b91505092915050565b60006020828403121561552c5761552b6172b5565b5b600061553a84828501614d02565b91505092915050565b6000806040838503121561555a576155596172b5565b5b600061556885828601614d02565b925050602083015167ffffffffffffffff811115615589576155886172b0565b5b61559585828601614d41565b9150509250929050565b6000602082840312156155b5576155b46172b5565b5b60006155c384828501614d17565b91505092915050565b6000602082840312156155e2576155e16172b5565b5b60006155f084828501614d2c565b91505092915050565b60006020828403121561560f5761560e6172b5565b5b600082015167ffffffffffffffff81111561562d5761562c6172b0565b5b61563984828501614d41565b91505092915050565b600060208284031215615658576156576172b5565b5b600082013567ffffffffffffffff811115615676576156756172b0565b5b61568284828501614edb565b91505092915050565b6000602082840312156156a1576156a06172b5565b5b600082013567ffffffffffffffff8111156156bf576156be6172b0565b5b6156cb84828501615053565b91505092915050565b6000602082840312156156ea576156e96172b5565b5b600082015167ffffffffffffffff811115615708576157076172b0565b5b615714848285016150bf565b91505092915050565b600060208284031215615733576157326172b5565b5b60006157418482850161512b565b91505092915050565b60008060008060608587031215615764576157636172b5565b5b60006157728782880161512b565b945050602061578387828801614c11565b935050604085013567ffffffffffffffff8111156157a4576157a36172b0565b5b6157b087828801614c3b565b925092505092959194509250565b6000806000806000608086880312156157da576157d96172b5565b5b60006157e88882890161512b565b95505060206157f98882890161512b565b945050604061580a88828901614c11565b935050606086013567ffffffffffffffff81111561582b5761582a6172b0565b5b61583788828901614c3b565b92509250509295509295909350565b60006020828403121561585c5761585b6172b5565b5b600061586a8482850161517f565b91505092915050565b600061587f83836158e7565b60208301905092915050565b60006158978383615d0e565b60208301905092915050565b60006158af8383615d2c565b60208301905092915050565b60006158c78383615d4a565b905092915050565b60006158db8383616506565b60208301905092915050565b6158f081616f56565b82525050565b6158ff81616f56565b82525050565b600061591082616d52565b61591a8185616de0565b935061592583616ced565b8060005b8381101561595657815161593d8882615873565b975061594883616d9f565b925050600181019050615929565b5085935050505092915050565b600061596e82616d5d565b6159788185616df1565b935061598383616cfd565b8060005b838110156159b457815161599b888261588b565b97506159a683616dac565b925050600181019050615987565b5085935050505092915050565b60006159cc82616d68565b6159d68185616e02565b93506159e183616d0d565b8060005b83811015615a125781516159f988826158a3565b9750615a0483616db9565b9250506001810190506159e5565b5085935050505092915050565b6000615a2a82616d73565b615a348185616e13565b935083602082028501615a4685616d1d565b8060005b85811015615a825784840389528151615a6385826158bb565b9450615a6e83616dc6565b925060208a01995050600181019050615a4a565b50829750879550505050505092915050565b6000615a9f82616d7e565b615aa98185616e24565b9350615ab483616d2d565b8060005b83811015615ae5578151615acc88826158cf565b9750615ad783616dd3565b925050600181019050615ab8565b5085935050505092915050565b615afb81616f68565b82525050565b615b0a81616f68565b82525050565b615b1981616f68565b82525050565b615b2881616f74565b82525050565b615b3781616f74565b82525050565b6000615b4882616d89565b615b528185616e35565b9350615b628185602086016170a6565b615b6b816172ba565b840191505092915050565b6000615b8182616d89565b615b8b8185616e46565b9350615b9b8185602086016170a6565b615ba4816172ba565b840191505092915050565b6000615bba82616d89565b615bc48185616e57565b9350615bd48185602086016170a6565b615bdd816172ba565b840191505092915050565b6000615bf382616d89565b615bfd8185616e68565b9350615c0d8185602086016170a6565b615c16816172ba565b840191505092915050565b6000615c2c82616d89565b615c368185616e79565b9350615c468185602086016170a6565b80840191505092915050565b60008154615c5f816170d9565b615c698186616e57565b94506001821660008114615c845760018114615c9657615cc9565b60ff1983168652602086019350615cc9565b615c9f85616d3d565b60005b83811015615cc157815481890152600182019150602081019050615ca2565b808801955050505b50505092915050565b615cdb8161702b565b82525050565b615cea8161703d565b82525050565b615cf98161704f565b82525050565b615d0881617061565b82525050565b615d1781616fb6565b82525050565b615d2681616fb6565b82525050565b615d3581616fc3565b82525050565b615d4481616fc3565b82525050565b6000615d5582616d94565b615d5f8185616e84565b9350615d6f8185602086016170a6565b615d78816172ba565b840191505092915050565b6000615d8e82616d94565b615d988185616e95565b9350615da88185602086016170a6565b615db1816172ba565b840191505092915050565b6000615dc9602c83616e95565b9150615dd4826172d8565b604082019050919050565b6000615dec602983616e95565b9150615df782617327565b604082019050919050565b6000615e0f602e83616e95565b9150615e1a82617376565b604082019050919050565b6000615e32601b83616e95565b9150615e3d826173c5565b602082019050919050565b6000615e55603183616e95565b9150615e60826173ee565b604082019050919050565b6000615e78602c83616e95565b9150615e838261743d565b604082019050919050565b6000615e9b602d83616e95565b9150615ea68261748c565b604082019050919050565b6000615ebe602f83616e95565b9150615ec9826174db565b604082019050919050565b6000615ee1602f83616e95565b9150615eec8261752a565b604082019050919050565b6000615f04603f83616e95565b9150615f0f82617579565b604082019050919050565b6000615f27604283616e95565b9150615f32826175c8565b606082019050919050565b6000615f4a602a83616e95565b9150615f558261763d565b604082019050919050565b6000615f6d602d83616e95565b9150615f788261768c565b604082019050919050565b6000615f90603a83616e95565b9150615f9b826176db565b604082019050919050565b6000615fb3603483616e95565b9150615fbe8261772a565b604082019050919050565b6000615fd6602b83616e95565b9150615fe182617779565b604082019050919050565b6000615ff9602e83616e95565b9150616004826177c8565b604082019050919050565b600061601c602f83616e95565b915061602782617817565b604082019050919050565b600061603f603183616e95565b915061604a82617866565b604082019050919050565b600060408301600083015184820360008601526160728282615b3d565b915050602083015161608760208601826164e8565b508091505092915050565b600060408301600083015184820360008601526160af8282615be8565b91505060208301516160c460208601826164f7565b508091505092915050565b600060c08301600083015184820360008601526160ec8282616055565b91505060208301516161016020860182616533565b5060408301516161146040860182616533565b5060608301516161276060860182616533565b50608083015161613a6080860182616506565b5060a083015161614d60a0860182616506565b508091505092915050565b600060c08301600083015184820360008601526161758282616092565b915050602083015161618a6020860182616542565b50604083015161619d6040860182616542565b5060608301516161b06060860182616542565b5060808301516161c36080860182616524565b5060a08301516161d660a0860182616524565b508091505092915050565b600060c08301600083015184820360008601526161fe8282616092565b91505060208301516162136020860182616542565b5060408301516162266040860182616542565b5060608301516162396060860182616542565b50608083015161624c6080860182616524565b5060a083015161625f60a0860182616524565b508091505092915050565b600060e08301600083015161628260008601826162ba565b50602083015184820360a086015261629a828261638a565b91505060408301516162af60c08601826158e7565b508091505092915050565b60a0820160008201516162d06000850182615ce1565b5060208201516162e360208501826158e7565b5060408201516162f66040850182615b1f565b50606082015161630960608501826164ca565b50608082015161631c60808501826164ca565b50505050565b60a0820160008201516163386000850182615ce1565b50602082015161634b60208501826158e7565b50604082015161635e6040850182615b1f565b50606082015161637160608501826164ca565b50608082015161638460808501826164ca565b50505050565b60006080830160008301516163a260008601826158e7565b5060208301516163b560208601826164ca565b5060408301516163c86040860182615b1f565b50606083015184820360608601526163e08282615b3d565b9150508091505092915050565b600060808301600083015161640560008601826158e7565b50602083015161641860208601826164ca565b50604083015161642b6040860182615b1f565b50606083015184820360608601526164438282615b3d565b9150508091505092915050565b60006040830160008301516164686000860182615af2565b506020830151848203602086015261648082826160cf565b9150508091505092915050565b60006040830160008301516164a56000860182615b10565b50602083015184820360208601526164bd82826161e1565b9150508091505092915050565b6164d381616ff0565b82525050565b6164e281616ff0565b82525050565b6164f181616ffa565b82525050565b61650081616ffa565b82525050565b61650f8161700a565b82525050565b61651e8161700a565b82525050565b61652d8161700a565b82525050565b61653c8161701e565b82525050565b61654b8161701e565b82525050565b600061655d8284615c21565b915081905092915050565b600060208201905061657d60008301846158f6565b92915050565b6000602082019050818103600083015261659d8184615905565b905092915050565b600060208201905081810360008301526165bf8184615963565b905092915050565b600060208201905081810360008301526165e181846159c1565b905092915050565b600060208201905081810360008301526166038184615a1f565b905092915050565b600060208201905081810360008301526166258184615a94565b905092915050565b60006020820190506166426000830184615b01565b92915050565b600060208201905061665d6000830184615b2e565b92915050565b6000602082019050818103600083015261667d8184615baf565b905092915050565b6000602082019050818103600083015261669f8184615b76565b905092915050565b600060208201905081810360008301526166c18184615c52565b905092915050565b60006020820190506166de6000830184615cd2565b92915050565b60006020820190506166f96000830184615cf0565b92915050565b60006040820190506167146000830185615cf0565b81810360208301526167268184615d83565b90509392505050565b60006020820190506167446000830184615cff565b92915050565b600060208201905061675f6000830184615d1d565b92915050565b600060208201905061677a6000830184615d3b565b92915050565b6000602082019050818103600083015261679a8184615d83565b905092915050565b600060208201905081810360008301526167bb81615dbc565b9050919050565b600060208201905081810360008301526167db81615ddf565b9050919050565b600060208201905081810360008301526167fb81615e25565b9050919050565b6000602082019050818103600083015261681b81615e48565b9050919050565b6000602082019050818103600083015261683b81615e8e565b9050919050565b6000602082019050818103600083015261685b81615eb1565b9050919050565b6000602082019050818103600083015261687b81615ed4565b9050919050565b6000602082019050818103600083015261689b81615ef7565b9050919050565b600060208201905081810360008301526168bb81615f1a565b9050919050565b600060208201905081810360008301526168db81615f3d565b9050919050565b600060208201905081810360008301526168fb81615f83565b9050919050565b6000602082019050818103600083015261691b81615fa6565b9050919050565b6000602082019050818103600083015261693b81615fc9565b9050919050565b6000602082019050818103600083015261695b8161600f565b9050919050565b6000602082019050818103600083015261697b81616032565b9050919050565b6000602082019050818103600083015261699c8184616158565b905092915050565b600060208201905081810360008301526169be818461626a565b905092915050565b600060a0820190506169db6000830184616322565b92915050565b600060208201905081810360008301526169fb81846163ed565b905092915050565b60006020820190508181036000830152616a1d818461648d565b905092915050565b60006020820190508181036000830152616a3f8184616450565b905092915050565b6000602082019050616a5c60008301846164d9565b92915050565b6000604082019050616a7760008301856164d9565b616a8460208301846158f6565b9392505050565b6000604082019050616aa060008301846164d9565b8181036020830152616ab181615e02565b905092915050565b6000604082019050616ace60008301846164d9565b8181036020830152616adf81615e6b565b905092915050565b6000604082019050616afc60008301846164d9565b8181036020830152616b0d81615f60565b905092915050565b6000604082019050616b2a60008301846164d9565b8181036020830152616b3b81615fec565b905092915050565b6000602082019050616b586000830184616515565b92915050565b6000616b68616b79565b9050616b74828261710b565b919050565b6000604051905090565b600067ffffffffffffffff821115616b9e57616b9d617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616bca57616bc9617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616bf657616bf5617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616c2257616c21617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616c4e57616c4d617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616c7a57616c79617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616ca657616ca5617241565b5b616caf826172ba565b9050602081019050919050565b600067ffffffffffffffff821115616cd757616cd6617241565b5b616ce0826172ba565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000616eb182616ff0565b9150616ebc83616ff0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115616ef157616ef0617185565b5b828201905092915050565b6000616f0782616ff0565b9150616f1283616ff0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615616f4b57616f4a617185565b5b828202905092915050565b6000616f6182616fd0565b9050919050565b60008115159050919050565b6000819050919050565b6000616f8982616f56565b9050919050565b6000819050616f9e8261794b565b919050565b6000819050616fb182617960565b919050565b600081600f0b9050919050565b60008160030b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b600061703682617073565b9050919050565b600061704882617073565b9050919050565b600061705a82616f90565b9050919050565b600061706c82616fa3565b9050919050565b600061707e82617085565b9050919050565b600061709082616fd0565b9050919050565b82818337600083830152505050565b60005b838110156170c45780820151818401526020810190506170a9565b838111156170d3576000848401525b50505050565b600060028204905060018216806170f157607f821691505b60208210811415617105576171046171e3565b5b50919050565b617114826172ba565b810181811067ffffffffffffffff8211171561713357617132617241565b5b80604052505050565b600061714782616ff0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561717a57617179617185565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060033d111561728f5760046000803e61728c6000516172cb565b90505b90565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160e01c9050919050565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206e756c6c207363726970740000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f6172643a206e6f207472616e736665727360008201527f2061636365707465640000000000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206261642074696d657374616d70000000000000000000000000000000000000602082015250565b7f5769746e6574426f617264446174613a206f6e6c79206f776e65720000000000600082015250565b7f5769746e657452657175657374426f617264547275737461626c65446566617560008201527f6c743a206261642074696d657374616d70000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2062616420717565727949640000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f20656d7074792073637269707400000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206f6e6c79207265717565737465720000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2072657761726420746f6f206c6f770000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2062797465636f6465206368616e67656420616674657220706f7374696e6700602082015250565b7f5769746e657452657175657374426f617264547275737461626c65446566617560008201527f6c743a205769746e65742064725478486173682063616e6e6f74206265207a6560208201527f726f000000000000000000000000000000000000000000000000000000000000604082015250565b7f5769746e6574426f6172644461746141434c733a20756e617574686f72697a6560008201527f64207265706f7274657200000000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2062616420647254784861736800000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65446566617560008201527f6c743a20726573756c742063616e6e6f7420626520656d707479000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f20616c726561647920696e697469616c697a6564000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206f6e6c79206f776e6572000000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206261642063626f724279746573000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206e6f742079657420706f737465640000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f61726455706772616461626c654261736560008201527f3a206e6f7420696d706c656d656e746564000000000000000000000000000000602082015250565b600060443d10156178c557617948565b6178cd616b79565b60043d036004823e80513d602482011167ffffffffffffffff821117156178f5575050617948565b808201805167ffffffffffffffff8111156179135750505050617948565b80602083010160043d038501811115617930575050505050617948565b61793f8260200185018661710b565b82955050505050505b90565b610100811061795d5761795c6171b4565b5b50565b60048110617971576179706171b4565b5b50565b61797d81616f56565b811461798857600080fd5b50565b61799481616f68565b811461799f57600080fd5b50565b6179ab81616f74565b81146179b657600080fd5b50565b6179c281616f7e565b81146179cd57600080fd5b50565b61010081106179de57600080fd5b50565b6179ea81616fb6565b81146179f557600080fd5b50565b617a0181616fc3565b8114617a0c57600080fd5b50565b617a1881616ff0565b8114617a2357600080fd5b50565b617a2f81616ffa565b8114617a3a57600080fd5b50565b617a468161700a565b8114617a5157600080fd5b50565b617a5d8161701e565b8114617a6857600080fd5b5056fe5769746e6574426f617264446174613a206e6f7420696e2044656c65746564207374617475735769746e6574426f617264446174613a206e6f7420696e20506f73746564207374617475735769746e6574426f617264446174613a206e6f7420696e205265706f72746564207374617475735769746e657452657175657374426f617264547275737461626c65426173653a206661696c696e6720617373657274a26469706673582212202626e20c29ec4ce25474ec6cb7a1ceb7b8c91cb224f916654f83066eda96301464736f6c63430008070033","opcodes":"PUSH2 0x140 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x12 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x7EAE CODESIZE SUB DUP1 PUSH3 0x7EAE DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x38 SWAP2 SWAP1 PUSH3 0x244 JUMP JUMPDEST DUP3 DUP3 PUSH1 0x0 DUP3 DUP3 DUP2 DUP4 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP CALLER PUSH3 0x89 PUSH3 0x1AF PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH3 0xDC PUSH3 0x1D7 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND 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 0x0 ADDRESS SWAP1 POP PUSH1 0x0 DUP2 EXTCODEHASH SWAP1 POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP DUP1 PUSH1 0xC0 DUP2 DUP2 MSTORE POP POP DUP3 ISZERO ISZERO PUSH1 0xE0 DUP2 ISZERO ISZERO PUSH1 0xF8 SHL DUP2 MSTORE POP POP POP POP POP DUP1 PUSH2 0x100 DUP2 DUP2 MSTORE POP POP POP POP POP POP POP DUP1 PUSH2 0x120 DUP2 DUP2 MSTORE POP POP POP POP POP PUSH3 0x313 JUMP JUMPDEST PUSH1 0x0 PUSH32 0xF595240B351BC8F951C2F53B26F4E78C32CB62122CF76C19B7FDDA7D4968E183 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0xA6DB7263983F337BAE2C9FB315730227961D1C1153AE1E10A56B5791465DD6FD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x210 DUP2 PUSH3 0x2C5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x227 DUP2 PUSH3 0x2DF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x23E DUP2 PUSH3 0x2F9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH3 0x260 JUMPI PUSH3 0x25F PUSH3 0x2C0 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0x270 DUP7 DUP3 DUP8 ADD PUSH3 0x1FF JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH3 0x283 DUP7 DUP3 DUP8 ADD PUSH3 0x216 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH3 0x296 DUP7 DUP3 DUP8 ADD PUSH3 0x22D JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 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 DUP1 REVERT JUMPDEST PUSH3 0x2D0 DUP2 PUSH3 0x2A0 JUMP JUMPDEST DUP2 EQ PUSH3 0x2DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH3 0x2EA DUP2 PUSH3 0x2AC JUMP JUMPDEST DUP2 EQ PUSH3 0x2F6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH3 0x304 DUP2 PUSH3 0x2B6 JUMP JUMPDEST DUP2 EQ PUSH3 0x310 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH1 0xC0 MLOAD PUSH1 0xE0 MLOAD PUSH1 0xF8 SHR PUSH2 0x100 MLOAD PUSH2 0x120 MLOAD PUSH2 0x7B42 PUSH3 0x36C PUSH1 0x0 CODECOPY PUSH1 0x0 PUSH2 0x38FD ADD MSTORE PUSH1 0x0 PUSH2 0x1D81 ADD MSTORE PUSH1 0x0 PUSH2 0x1D59 ADD MSTORE PUSH1 0x0 PUSH2 0x2DFF ADD MSTORE PUSH1 0x0 PUSH2 0x1D06 ADD MSTORE PUSH1 0x0 PUSH2 0x3D3F ADD MSTORE PUSH2 0x7B42 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2E8 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x7780CDE1 GT PUSH2 0x190 JUMPI DUP1 PUSH4 0xC805DD0F GT PUSH2 0xDC JUMPI DUP1 PUSH4 0xD4DA69AC GT PUSH2 0x95 JUMPI DUP1 PUSH4 0xDC3C71CD GT PUSH2 0x6F JUMPI DUP1 PUSH4 0xDC3C71CD EQ PUSH2 0xD4D JUMPI DUP1 PUSH4 0xE5A6B10F EQ PUSH2 0xD8A JUMPI DUP1 PUSH4 0xE99E47F3 EQ PUSH2 0xDB5 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xDF2 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xD4DA69AC EQ PUSH2 0xC95 JUMPI DUP1 PUSH4 0xD74803BE EQ PUSH2 0xCD2 JUMPI DUP1 PUSH4 0xDB04F16D EQ PUSH2 0xD10 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xC805DD0F EQ PUSH2 0xB4D JUMPI DUP1 PUSH4 0xC87D969E EQ PUSH2 0xB78 JUMPI DUP1 PUSH4 0xC8F5CDD5 EQ PUSH2 0xBB5 JUMPI DUP1 PUSH4 0xCF62D115 EQ PUSH2 0xBDE JUMPI DUP1 PUSH4 0xD2E87561 EQ PUSH2 0xC1B JUMPI DUP1 PUSH4 0xD4CED132 EQ PUSH2 0xC58 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xA8604C1A GT PUSH2 0x149 JUMPI DUP1 PUSH4 0xB281A7BD GT PUSH2 0x123 JUMPI DUP1 PUSH4 0xB281A7BD EQ PUSH2 0xA66 JUMPI DUP1 PUSH4 0xBC7E25FF EQ PUSH2 0xA96 JUMPI DUP1 PUSH4 0xC2485EBD EQ PUSH2 0xAD3 JUMPI DUP1 PUSH4 0xC683B465 EQ PUSH2 0xB10 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xA8604C1A EQ PUSH2 0x9C1 JUMPI DUP1 PUSH4 0xA9E954B9 EQ PUSH2 0x9FE JUMPI DUP1 PUSH4 0xB0768328 EQ PUSH2 0xA29 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x7780CDE1 EQ PUSH2 0x879 JUMPI DUP1 PUSH4 0x7C1FBDA3 EQ PUSH2 0x8B6 JUMPI DUP1 PUSH4 0x81A398B5 EQ PUSH2 0x8F3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x91C JUMPI DUP1 PUSH4 0x99F65804 EQ PUSH2 0x947 JUMPI DUP1 PUSH4 0x9D96FCED EQ PUSH2 0x984 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x3B885F2A GT PUSH2 0x24F JUMPI DUP1 PUSH4 0x5479D940 GT PUSH2 0x208 JUMPI DUP1 PUSH4 0x66BFDC75 GT PUSH2 0x1E2 JUMPI DUP1 PUSH4 0x66BFDC75 EQ PUSH2 0x7A6 JUMPI DUP1 PUSH4 0x6B58960A EQ PUSH2 0x7C2 JUMPI DUP1 PUSH4 0x6F07ABCC EQ PUSH2 0x7FF JUMPI DUP1 PUSH4 0x754E5BEA EQ PUSH2 0x83C JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x5479D940 EQ PUSH2 0x727 JUMPI DUP1 PUSH4 0x54FD4D50 EQ PUSH2 0x752 JUMPI DUP1 PUSH4 0x6280BCE8 EQ PUSH2 0x77D JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x3B885F2A EQ PUSH2 0x605 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x642 JUMPI DUP1 PUSH4 0x4C9F72E3 EQ PUSH2 0x66B JUMPI DUP1 PUSH4 0x4DCFFAF3 EQ PUSH2 0x694 JUMPI DUP1 PUSH4 0x5001F3B5 EQ PUSH2 0x6D1 JUMPI DUP1 PUSH4 0x52D1902D EQ PUSH2 0x6FC JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x2241F2DB GT PUSH2 0x2A1 JUMPI DUP1 PUSH4 0x2241F2DB EQ PUSH2 0x4D1 JUMPI DUP1 PUSH4 0x2565082B EQ PUSH2 0x50E JUMPI DUP1 PUSH4 0x28A78D9B EQ PUSH2 0x54B JUMPI DUP1 PUSH4 0x2B68B9C6 EQ PUSH2 0x574 JUMPI DUP1 PUSH4 0x2B905FBB EQ PUSH2 0x58B JUMPI DUP1 PUSH4 0x3AE97295 EQ PUSH2 0x5C8 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x44AD7BE EQ PUSH2 0x363 JUMPI DUP1 PUSH4 0x7E66852 EQ PUSH2 0x3A0 JUMPI DUP1 PUSH4 0xF572D2C EQ PUSH2 0x3DD JUMPI DUP1 PUSH4 0x109A0E3C EQ PUSH2 0x41A JUMPI DUP1 PUSH4 0x1DD27DAF EQ PUSH2 0x457 JUMPI DUP1 PUSH4 0x20F9241E EQ PUSH2 0x494 JUMPI PUSH2 0x328 JUMP JUMPDEST CALLDATASIZE PUSH2 0x328 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x31F SWAP1 PUSH2 0x67C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x35A SWAP1 PUSH2 0x6962 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x36F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x38A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x385 SWAP2 SWAP1 PUSH2 0x51BE JUMP JUMPDEST PUSH2 0xE1B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x397 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3C7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3C2 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0xE7A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3D4 SWAP2 SWAP1 PUSH2 0x65A5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x404 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3FF SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0xF11 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x411 SWAP2 SWAP1 PUSH2 0x65C7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x426 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x441 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x43C SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0xFA8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x44E SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x463 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x47E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x479 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x103F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x48B SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4B6 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x10EA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4C8 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4F8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F3 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x117F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x505 SWAP2 SWAP1 PUSH2 0x6765 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x51A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x535 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x530 SWAP2 SWAP1 PUSH2 0x5642 JUMP JUMPDEST PUSH2 0x1211 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x542 SWAP2 SWAP1 PUSH2 0x6A25 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x557 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x572 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x56D SWAP2 SWAP1 PUSH2 0x51EB JUMP JUMPDEST PUSH2 0x12AC JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x580 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x589 PUSH2 0x1420 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x597 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x5B2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5AD SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x14D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5BF SWAP2 SWAP1 PUSH2 0x674A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x5EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5EA SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x1564 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5FC SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x611 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x62C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x627 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x160F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x639 SWAP2 SWAP1 PUSH2 0x6685 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x64E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x669 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x664 SWAP2 SWAP1 PUSH2 0x5457 JUMP JUMPDEST PUSH2 0x17E4 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x677 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x692 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x68D SWAP2 SWAP1 PUSH2 0x51EB JUMP JUMPDEST PUSH2 0x1AF7 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x6A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x6BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6B6 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x1C6B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6C8 SWAP2 SWAP1 PUSH2 0x660B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x6DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x6E6 PUSH2 0x1D02 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6F3 SWAP2 SWAP1 PUSH2 0x6568 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x708 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x711 PUSH2 0x1D2A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x71E SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x733 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x73C PUSH2 0x1D55 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x749 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x75E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x767 PUSH2 0x1D7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x774 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x789 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x7A4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x79F SWAP2 SWAP1 PUSH2 0x574A JUMP JUMPDEST PUSH2 0x1DA5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7BB SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x1FDD JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x7CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x7E9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7E4 SWAP2 SWAP1 PUSH2 0x51BE JUMP JUMPDEST PUSH2 0x2106 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7F6 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x80B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x826 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x821 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x217E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x833 SWAP2 SWAP1 PUSH2 0x672F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x848 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x863 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x85E SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x2190 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x870 SWAP2 SWAP1 PUSH2 0x69E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x885 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x8A0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x89B SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x232E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8AD SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x8C2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x8DD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8D8 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x23C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8EA SWAP2 SWAP1 PUSH2 0x69E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x8FF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x91A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x915 SWAP2 SWAP1 PUSH2 0x5358 JUMP JUMPDEST PUSH2 0x2746 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x928 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x931 PUSH2 0x2A44 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x93E SWAP2 SWAP1 PUSH2 0x6568 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x953 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x96E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x969 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x2A77 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x97B SWAP2 SWAP1 PUSH2 0x69C6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x990 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x9AB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9A6 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x2CB4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9B8 SWAP2 SWAP1 PUSH2 0x6568 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x9CD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x9E8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9E3 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x2D69 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9F5 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA13 PUSH2 0x2DFB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA20 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA35 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA50 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA4B SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x2E23 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA5D SWAP2 SWAP1 PUSH2 0x660B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA80 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA7B SWAP2 SWAP1 PUSH2 0x54E9 JUMP JUMPDEST PUSH2 0x2EBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA8D SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xAA2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xABD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xAB8 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3192 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xACA SWAP2 SWAP1 PUSH2 0x6B43 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xADF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAFA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xAF5 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x3224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB07 SWAP2 SWAP1 PUSH2 0x69A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB37 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB32 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x349E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB44 SWAP2 SWAP1 PUSH2 0x6685 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB62 PUSH2 0x3535 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB6F SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB84 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB9F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB9A SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3554 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xBAC SWAP2 SWAP1 PUSH2 0x65E9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBC1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBDC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xBD7 SWAP2 SWAP1 PUSH2 0x57BE JUMP JUMPDEST PUSH2 0x35EB JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC05 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC00 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3867 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC12 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xC27 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC42 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC3D SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x38F9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC4F SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xC64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC7F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC7A SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x392E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC8C SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xCBC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCB7 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x39C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCC9 SWAP2 SWAP1 PUSH2 0x6A25 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCDE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xCF9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCF4 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3AEB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD07 SWAP3 SWAP2 SWAP1 PUSH2 0x66FF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD37 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD32 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3C16 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD44 SWAP2 SWAP1 PUSH2 0x66E4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD74 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD6F SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x3CA8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD81 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD96 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD9F PUSH2 0x3D3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xDAC SWAP2 SWAP1 PUSH2 0x66C9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDC1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xDDC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xDD7 SWAP2 SWAP1 PUSH2 0x5457 JUMP JUMPDEST PUSH2 0x3D61 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xDE9 SWAP2 SWAP1 PUSH2 0x6A25 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDFE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xE19 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE14 SWAP2 SWAP1 PUSH2 0x51BE JUMP JUMPDEST PUSH2 0x3DFC JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0xE25 PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0xFC853C37 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEB5 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xECD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xEE1 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 0xF0A SWAP2 SWAP1 PUSH2 0x527D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x8EFC097 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF4C SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xF78 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 0xFA1 SWAP2 SWAP1 PUSH2 0x52C6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0xF417DAF5 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFE3 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xFFB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x100F 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 0x1038 SWAP2 SWAP1 PUSH2 0x55F9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1057 JUMPI PUSH2 0x1056 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1060 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1072 JUMPI PUSH2 0x1071 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x107C DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x10BD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10B4 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x10C6 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x4 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1102 JUMPI PUSH2 0x1101 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x110B DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x111D JUMPI PUSH2 0x111C PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x1127 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x1168 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x115F SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x1172 DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x1 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xD8868DB6 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11BA SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x11D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x11E6 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 0x120A SWAP2 SWAP1 PUSH2 0x55CC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1219 PUSH2 0x4409 JUMP JUMPDEST PUSH20 0x0 PUSH4 0x130283EE DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1250 SWAP2 SWAP1 PUSH2 0x6982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1268 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x127C 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 0x12A5 SWAP2 SWAP1 PUSH2 0x56D4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x12B4 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1345 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x133C SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x13E5 JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1366 JUMPI PUSH2 0x1365 PUSH2 0x7212 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 PUSH2 0x137A PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND 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 POP DUP1 DUP1 PUSH2 0x13DD SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1348 JUMP JUMPDEST POP PUSH32 0x646436560D9757CB3C0F01DA0F62642C6040B00C9A80685F94EF1A7725CAD5F1 DUP2 PUSH1 0x40 MLOAD PUSH2 0x1415 SWAP2 SWAP1 PUSH2 0x6583 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH2 0x1428 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x14B9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14B0 SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SELFDESTRUCT JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xC71DB521 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x150D SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1525 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1539 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 0x155D SWAP2 SWAP1 PUSH2 0x559F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x157C JUMPI PUSH2 0x157B PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1585 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1597 JUMPI PUSH2 0x1596 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x15A1 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x15E2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15D9 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x15EB PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x3 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1625 JUMPI PUSH2 0x1624 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x162E DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1640 JUMPI PUSH2 0x163F PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x1681 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1678 SWAP1 PUSH2 0x6942 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x168C DUP4 PUSH2 0x420F JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x17DE JUMPI DUP1 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF0940002 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1750 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1764 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 0x178D SWAP2 SWAP1 PUSH2 0x54A0 JUMP JUMPDEST SWAP2 POP DUP1 PUSH1 0x2 ADD SLOAD PUSH2 0x179D DUP4 PUSH2 0x4237 JUMP JUMPDEST EQ PUSH2 0x17DD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17D4 SWAP1 PUSH2 0x6882 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17EE PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x189B JUMPI CALLER SWAP1 POP DUP1 PUSH2 0x1855 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x190A JUMP JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1909 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1900 SWAP1 PUSH2 0x6922 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x192A PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1A0B JUMPI PUSH2 0x1971 PUSH2 0x1D02 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x198F PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1A0A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A01 SWAP1 PUSH2 0x6902 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH2 0x1A13 PUSH2 0x1D02 JUMP JUMPDEST PUSH2 0x1A1B PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1A64 PUSH2 0x2DFB JUMP JUMPDEST PUSH2 0x1A6C PUSH2 0x1D02 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x72D4B00D8E35B3717E384AEF5F900256A106D6A423D88935A11579981333BA20 PUSH2 0x1AC2 PUSH2 0x1D7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1ACF SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x1AF3 DUP3 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x1AEE SWAP2 SWAP1 PUSH2 0x5234 JUMP JUMPDEST PUSH2 0x1AF7 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x1AFF PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1B90 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B87 SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x1C30 JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1BB1 JUMPI PUSH2 0x1BB0 PUSH2 0x7212 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x1 PUSH2 0x1BC5 PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND 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 POP DUP1 DUP1 PUSH2 0x1C28 SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1B93 JUMP JUMPDEST POP PUSH32 0x4D570EE36DEC878006609360D34AC8D6A0B68D521871AE15A407B6340877CA01 DUP2 PUSH1 0x40 MLOAD PUSH2 0x1C60 SWAP2 SWAP1 PUSH2 0x6583 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x147E5C8F SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1CA6 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1CBE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1CD2 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 0x1CFB SWAP2 SWAP1 PUSH2 0x53B4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x9969C6AFF411C5E5F0807500693E8F819CE88529615CFA6CAB569B24788A1018 PUSH1 0x0 SHL SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x1DAD PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x1E3A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E31 SWAP1 PUSH2 0x68C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1E50 JUMPI PUSH2 0x1E4F PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1E59 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1E6B JUMPI PUSH2 0x1E6A PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x1E75 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x1EB6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EAD SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SHL DUP6 EQ ISZERO PUSH2 0x1EFD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EF4 SWAP1 PUSH2 0x68A2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 DUP5 SWAP1 POP EQ ISZERO PUSH2 0x1F44 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1F3B SWAP1 PUSH2 0x68E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1F9D CALLER PUSH2 0x1F98 DUP9 TIMESTAMP DUP10 DUP10 DUP10 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x4290 JUMP JUMPDEST PUSH2 0x43AE JUMP JUMPDEST PUSH31 0xE9413C6321EC446A267B7EBF5BB108663F2EF58B35C4F6E18905AC8F205CB2 DUP7 CALLER PUSH1 0x40 MLOAD PUSH2 0x1FCD SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1FF3 JUMPI PUSH2 0x1FF2 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1FFC DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x200E JUMPI PUSH2 0x200D PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2018 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2059 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2050 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x2065 DUP5 PUSH2 0x420F JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2071 PUSH2 0x43F9 JUMP JUMPDEST DUP3 PUSH1 0x4 ADD SLOAD PUSH2 0x2080 SWAP2 SWAP1 PUSH2 0x6EA6 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x208C PUSH2 0x4401 JUMP JUMPDEST SWAP1 POP DUP3 PUSH1 0x3 ADD SLOAD DUP2 GT ISZERO PUSH2 0x20F5 JUMPI PUSH1 0x0 PUSH2 0x20A5 DUP3 PUSH2 0x38F9 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 LT ISZERO PUSH2 0x20EA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x20E1 SWAP1 PUSH2 0x6862 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP5 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP POP JUMPDEST DUP2 DUP4 PUSH1 0x4 ADD DUP2 SWAP1 SSTORE POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2111 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH2 0x213F PUSH2 0x1D55 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2176 JUMPI POP DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2189 DUP3 PUSH2 0x3FC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2198 PUSH2 0x442B JUMP JUMPDEST DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21AE JUMPI PUSH2 0x21AD PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x21B7 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21C9 JUMPI PUSH2 0x21C8 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x21D3 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2214 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x220B SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x221E DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD PUSH2 0x22A3 SWAP1 PUSH2 0x70D9 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 0x22CF SWAP1 PUSH2 0x70D9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x231C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x22F1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x231C 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 0x22FF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE POP POP SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xA1D45D56 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2369 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2381 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2395 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 0x23B9 SWAP2 SWAP1 PUSH2 0x53FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x23C8 PUSH2 0x442B JUMP JUMPDEST DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23DE JUMPI PUSH2 0x23DD PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x23E7 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23F9 JUMPI PUSH2 0x23F8 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2403 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2444 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x243B SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x244F PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x24F7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x24EE SWAP1 PUSH2 0x6842 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD PUSH2 0x2580 SWAP1 PUSH2 0x70D9 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 0x25AC SWAP1 PUSH2 0x70D9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x25F9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x25CE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x25F9 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 0x25DC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE POP POP SWAP4 POP PUSH2 0x260C PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE POP POP PUSH1 0x5 DUP3 ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 PUSH2 0x26DA SWAP2 SWAP1 PUSH2 0x446C JUMP JUMPDEST POP POP PUSH1 0x9 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE POP POP PUSH32 0xDEC847DB058C9C012E0F3DBE2B99E05CFA4C693F61A7D8BC64652A68913CBFFF DUP6 CALLER PUSH1 0x40 MLOAD PUSH2 0x2736 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x274E PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x27DB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x27D2 SWAP1 PUSH2 0x68C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 MLOAD SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2A29 JUMPI PUSH1 0x0 DUP6 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2802 JUMPI PUSH2 0x2801 PUSH2 0x7212 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2820 JUMPI PUSH2 0x281F PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x282D DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x283F JUMPI PUSH2 0x283E PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x288B JUMPI DUP5 ISZERO PUSH2 0x2886 JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x287D SWAP2 SWAP1 PUSH2 0x6AB9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A15 JUMP JUMPDEST PUSH1 0x0 DUP1 SHL DUP2 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x28E1 JUMPI DUP5 ISZERO PUSH2 0x28DC JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x28D3 SWAP2 SWAP1 PUSH2 0x6AE7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A14 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x60 ADD MLOAD MLOAD EQ ISZERO PUSH2 0x2936 JUMPI DUP5 ISZERO PUSH2 0x2931 JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x2928 SWAP2 SWAP1 PUSH2 0x6B15 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A13 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x20 ADD MLOAD GT DUP1 ISZERO PUSH2 0x294D JUMPI POP TIMESTAMP DUP2 PUSH1 0x20 ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2999 JUMPI DUP5 ISZERO PUSH2 0x2994 JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x298B SWAP2 SWAP1 PUSH2 0x6A8B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A12 JUMP JUMPDEST PUSH2 0x29C8 DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x0 DUP4 PUSH1 0x20 ADD MLOAD EQ PUSH2 0x29B7 JUMPI DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x29B9 JUMP JUMPDEST TIMESTAMP JUMPDEST DUP4 PUSH1 0x40 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x4290 JUMP JUMPDEST DUP5 PUSH2 0x29D3 SWAP2 SWAP1 PUSH2 0x6EA6 JUMP JUMPDEST SWAP4 POP PUSH31 0xE9413C6321EC446A267B7EBF5BB108663F2EF58B35C4F6E18905AC8F205CB2 DUP2 PUSH1 0x0 ADD MLOAD CALLER PUSH1 0x40 MLOAD PUSH2 0x2A09 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST JUMPDEST JUMPDEST JUMPDEST POP DUP1 DUP1 PUSH2 0x2A21 SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x27E5 JUMP JUMPDEST POP PUSH1 0x0 DUP3 GT ISZERO PUSH2 0x2A3E JUMPI PUSH2 0x2A3D CALLER DUP4 PUSH2 0x43AE JUMP JUMPDEST JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A4E PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x2A7F PUSH2 0x44AC JUMP JUMPDEST DUP2 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A95 JUMPI PUSH2 0x2A94 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x2A9E DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2AB0 JUMPI PUSH2 0x2AAF PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2ABA DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2AFB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AF2 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x2B06 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE POP POP SWAP4 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2CAC JUMPI DUP1 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x20 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP JUMPDEST POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2CCC JUMPI PUSH2 0x2CCB PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x2CD5 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2CE7 JUMPI PUSH2 0x2CE6 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2CF1 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2D32 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2D29 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x2D3C DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0x6646C119 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2DA4 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2DBC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2DD0 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 0x2DF4 SWAP2 SWAP1 PUSH2 0x53FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x879730D SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2E5E SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E76 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2E8A 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 0x2EB3 SWAP2 SWAP1 PUSH2 0x53B4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2EC5 PUSH2 0x43F9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2ED1 PUSH2 0x4401 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2EDE DUP3 PUSH2 0x38F9 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 LT ISZERO PUSH2 0x2F23 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F1A SWAP1 PUSH2 0x6862 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x2F93 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F8A SWAP1 PUSH2 0x67A2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF0940002 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2FDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2FEF 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 0x3018 SWAP2 SWAP1 PUSH2 0x54A0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x305E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3055 SWAP1 PUSH2 0x6822 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3066 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x2 ADD PUSH1 0x0 DUP2 SLOAD PUSH2 0x3076 SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 SWAP1 POP DUP2 SWAP1 SSTORE SWAP5 POP CALLER PUSH2 0x3087 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH2 0x30E7 DUP7 PUSH2 0x420F JUMP JUMPDEST SWAP1 POP DUP7 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x3135 DUP3 PUSH2 0x4237 JUMP JUMPDEST DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP DUP4 DUP2 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP DUP5 DUP2 PUSH1 0x4 ADD DUP2 SWAP1 SSTORE POP PUSH32 0xCABAF9C102F83746B27AE932F638EEBFAF5EA7D014EDD20AB14DEC3768A8F55C DUP7 CALLER PUSH1 0x40 MLOAD PUSH2 0x3180 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0x8233F9B3 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x31CD SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x31E5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x31F9 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 0x321D SWAP2 SWAP1 PUSH2 0x5846 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x322C PUSH2 0x450A JUMP JUMPDEST PUSH2 0x3234 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD PUSH2 0x33BB SWAP1 PUSH2 0x70D9 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 0x33E7 SWAP1 PUSH2 0x70D9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x3434 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x3409 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x3434 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 0x3417 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0xA1B90891 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x34D9 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x34F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3505 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 0x352E SWAP2 SWAP1 PUSH2 0x54A0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH2 0x3541 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x2 ADD SLOAD PUSH2 0x354F SWAP2 SWAP1 PUSH2 0x6EA6 JUMP JUMPDEST SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x2D26B9E2 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x358F SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x35A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x35BB 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 0x35E4 SWAP2 SWAP1 PUSH2 0x530F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x35F3 PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x3680 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3677 SWAP1 PUSH2 0x68C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3696 JUMPI PUSH2 0x3695 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x369F DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x36B1 JUMPI PUSH2 0x36B0 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x36BB DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x36FC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x36F3 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP TIMESTAMP DUP7 GT ISZERO PUSH2 0x3740 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3737 SWAP1 PUSH2 0x6802 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SHL DUP6 EQ ISZERO PUSH2 0x3786 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x377D SWAP1 PUSH2 0x68A2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 DUP5 SWAP1 POP EQ ISZERO PUSH2 0x37CD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x37C4 SWAP1 PUSH2 0x68E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3826 CALLER PUSH2 0x3821 DUP10 DUP10 DUP10 DUP10 DUP10 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x4290 JUMP JUMPDEST PUSH2 0x43AE JUMP JUMPDEST PUSH31 0xE9413C6321EC446A267B7EBF5BB108663F2EF58B35C4F6E18905AC8F205CB2 DUP8 CALLER PUSH1 0x40 MLOAD PUSH2 0x3856 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xA2E87655 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38A2 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x38BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x38CE 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 0x38F2 SWAP2 SWAP1 PUSH2 0x542A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 DUP3 PUSH2 0x3927 SWAP2 SWAP1 PUSH2 0x6EFC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xABF82F4C SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3969 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3981 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3995 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 0x39B9 SWAP2 SWAP1 PUSH2 0x53FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x39C8 PUSH2 0x4409 JUMP JUMPDEST DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x39DE JUMPI PUSH2 0x39DD PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x39E7 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x39F9 JUMPI PUSH2 0x39F8 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x3A03 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x3A44 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3A3B SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x3A50 DUP6 PUSH2 0x41E7 JUMP JUMPDEST SWAP1 POP PUSH20 0x0 PUSH4 0xE99E47F3 DUP3 PUSH1 0x3 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3A8C SWAP2 SWAP1 PUSH2 0x66A7 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3AA4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3AB8 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 0x3AE1 SWAP2 SWAP1 PUSH2 0x56D4 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 PUSH20 0x0 PUSH4 0x8CC5EB54 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3B28 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3B40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x3B76 JUMPI 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 0x3B73 SWAP2 SWAP1 PUSH2 0x5543 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x3C08 JUMPI PUSH2 0x3B82 PUSH2 0x7270 JUMP JUMPDEST DUP1 PUSH4 0x8C379A0 EQ ISZERO PUSH2 0x3BAF JUMPI POP PUSH2 0x3B97 PUSH2 0x78B5 JUMP JUMPDEST DUP1 PUSH2 0x3BA2 JUMPI POP PUSH2 0x3BB1 JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP3 POP SWAP3 POP POP PUSH2 0x3C11 JUMP JUMPDEST POP JUMPDEST RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x3BDD JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x3BE2 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0xFF PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x2F DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7ADE PUSH1 0x2F SWAP2 CODECOPY SWAP3 POP SWAP3 POP POP PUSH2 0x3C11 JUMP JUMPDEST DUP2 DUP2 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xD45D097D SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3C51 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3C69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3C7D 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 0x3CA1 SWAP2 SWAP1 PUSH2 0x5516 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3CC0 JUMPI PUSH2 0x3CBF PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x3CC9 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3CDB JUMPI PUSH2 0x3CDA PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x3CE5 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x3D26 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D1D SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x3D30 DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x2 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x3D69 PUSH2 0x4409 JUMP JUMPDEST PUSH20 0x0 PUSH4 0xE99E47F3 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3DA0 SWAP2 SWAP1 PUSH2 0x6663 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3DB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3DCC 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 0x3DF5 SWAP2 SWAP1 PUSH2 0x56D4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3E04 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x3E95 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E8C SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x3E9F PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x3F9D JUMPI DUP2 PUSH2 0x3F01 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xA6DB7263983F337BAE2C9FB315730227961D1C1153AE1E10A56B5791465DD6FD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 EQ DUP1 PUSH2 0x3FE3 JUMPI POP PUSH2 0x3FDC PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x2 ADD SLOAD DUP3 GT JUMPDEST ISZERO PUSH2 0x3FF1 JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x4094 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFB PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP1 SHL DUP2 PUSH1 0x5 ADD PUSH1 0x2 ADD SLOAD EQ PUSH2 0x402C JUMPI PUSH1 0x2 SWAP2 POP POP PUSH2 0x4094 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x408E JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0x4094 JUMP JUMPDEST PUSH1 0x3 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x40AF JUMPI PUSH2 0x40AE PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x40C2 JUMPI PUSH2 0x40C1 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x40E8 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x25 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7A92 PUSH1 0x25 SWAP2 CODECOPY SWAP1 POP PUSH2 0x41BA JUMP JUMPDEST PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x40FC JUMPI PUSH2 0x40FB PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x410F JUMPI PUSH2 0x410E PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x4135 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x27 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7AB7 PUSH1 0x27 SWAP2 CODECOPY SWAP1 POP PUSH2 0x41BA JUMP JUMPDEST PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x4148 JUMPI PUSH2 0x4147 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x415B JUMPI PUSH2 0x415A PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x4181 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x26 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7A6C PUSH1 0x26 SWAP2 CODECOPY SWAP1 POP PUSH2 0x41BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x19 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5769746E6574426F617264446174613A20626164206D6F6F6400000000000000 DUP2 MSTORE POP SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xF595240B351BC8F951C2F53B26F4E78C32CB62122CF76C19B7FDDA7D4968E183 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x41F1 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4219 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x4249 SWAP2 SWAP1 PUSH2 0x6551 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4266 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0x4289 SWAP2 SWAP1 PUSH2 0x542A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x429B PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x0 ADD SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x5 ADD SWAP1 POP DUP7 DUP2 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP DUP6 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP CALLER DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP5 DUP2 PUSH1 0x3 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x432E SWAP3 SWAP2 SWAP1 PUSH2 0x454D JUMP JUMPDEST POP DUP2 PUSH1 0x4 ADD SLOAD SWAP4 POP DUP3 PUSH1 0x0 ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE POP POP POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x43F4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 CALLVALUE SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 GASPRICE SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4425 PUSH2 0x45D3 JUMP JUMPDEST DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x4478 SWAP1 PUSH2 0x70D9 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x448A JUMPI POP PUSH2 0x44A9 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x44A8 SWAP2 SWAP1 PUSH2 0x462C JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x451D PUSH2 0x44AC JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x452A PUSH2 0x442B JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x4559 SWAP1 PUSH2 0x70D9 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x457B JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x45C2 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x4594 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x45C2 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x45C2 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x45C1 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x45A6 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x45CF SWAP2 SWAP1 PUSH2 0x462C JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x45E6 PUSH2 0x4649 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x4645 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x462D JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x467C PUSH2 0x4677 DUP5 PUSH2 0x6B83 JUMP JUMPDEST PUSH2 0x6B5E 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 0x469F JUMPI PUSH2 0x469E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x46CF JUMPI DUP2 PUSH2 0x46B5 DUP9 DUP3 PUSH2 0x4A7B JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x46A2 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x46EC PUSH2 0x46E7 DUP5 PUSH2 0x6B83 JUMP JUMPDEST PUSH2 0x6B5E 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 0x470F JUMPI PUSH2 0x470E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x473F JUMPI DUP2 PUSH2 0x4725 DUP9 DUP3 PUSH2 0x4A90 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4712 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x475C PUSH2 0x4757 DUP5 PUSH2 0x6BAF JUMP JUMPDEST PUSH2 0x6B5E 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 0x477F JUMPI PUSH2 0x477E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x47AF JUMPI DUP2 PUSH2 0x4795 DUP9 DUP3 PUSH2 0x4D17 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4782 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x47CC PUSH2 0x47C7 DUP5 PUSH2 0x6BDB JUMP JUMPDEST PUSH2 0x6B5E 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 0x47EF JUMPI PUSH2 0x47EE PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x481F JUMPI DUP2 PUSH2 0x4805 DUP9 DUP3 PUSH2 0x4D2C JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x47F2 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483C PUSH2 0x4837 DUP5 PUSH2 0x6C07 JUMP JUMPDEST PUSH2 0x6B5E 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 0x485F JUMPI PUSH2 0x485E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x48AD JUMPI DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4885 JUMPI PUSH2 0x4884 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x4892 DUP10 DUP3 PUSH2 0x4D41 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP5 ADD SWAP4 POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4862 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x48CA PUSH2 0x48C5 DUP5 PUSH2 0x6C33 JUMP JUMPDEST PUSH2 0x6B5E 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 0x48ED JUMPI PUSH2 0x48EC PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x493B JUMPI DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4913 JUMPI PUSH2 0x4912 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x4920 DUP10 DUP3 PUSH2 0x4D6F JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP5 ADD SWAP4 POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x48F0 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4958 PUSH2 0x4953 DUP5 PUSH2 0x6C5F JUMP JUMPDEST PUSH2 0x6B5E 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 0x497B JUMPI PUSH2 0x497A PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x49AB JUMPI DUP2 PUSH2 0x4991 DUP9 DUP3 PUSH2 0x517F JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x497E JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x49C8 PUSH2 0x49C3 DUP5 PUSH2 0x6C8B JUMP JUMPDEST PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x49E4 JUMPI PUSH2 0x49E3 PUSH2 0x72AB JUMP JUMPDEST JUMPDEST PUSH2 0x49EF DUP5 DUP3 DUP6 PUSH2 0x7097 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4A0A PUSH2 0x4A05 DUP5 PUSH2 0x6C8B JUMP JUMPDEST PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x4A26 JUMPI PUSH2 0x4A25 PUSH2 0x72AB JUMP JUMPDEST JUMPDEST PUSH2 0x4A31 DUP5 DUP3 DUP6 PUSH2 0x70A6 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4A4C PUSH2 0x4A47 DUP5 PUSH2 0x6CBC JUMP JUMPDEST PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x4A68 JUMPI PUSH2 0x4A67 PUSH2 0x72AB JUMP JUMPDEST JUMPDEST PUSH2 0x4A73 DUP5 DUP3 DUP6 PUSH2 0x70A6 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4A8A DUP2 PUSH2 0x7974 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4A9F DUP2 PUSH2 0x7974 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4ABA JUMPI PUSH2 0x4AB9 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x4ACA DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4669 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4AE8 JUMPI PUSH2 0x4AE7 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4AF8 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x46D9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4B16 JUMPI PUSH2 0x4B15 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4B26 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4749 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4B44 JUMPI PUSH2 0x4B43 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4B54 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x47B9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4B72 JUMPI PUSH2 0x4B71 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4B82 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4829 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4BA0 JUMPI PUSH2 0x4B9F PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x4BB0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x48B7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4BCE JUMPI PUSH2 0x4BCD PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4BDE DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4945 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4BF6 DUP2 PUSH2 0x798B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4C0B DUP2 PUSH2 0x798B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4C20 DUP2 PUSH2 0x79A2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4C35 DUP2 PUSH2 0x79A2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x4C51 JUMPI PUSH2 0x4C50 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4C6E JUMPI PUSH2 0x4C6D PUSH2 0x7292 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x4C8A JUMPI PUSH2 0x4C89 PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4CA6 JUMPI PUSH2 0x4CA5 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x4CB6 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x49B5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4CD4 JUMPI PUSH2 0x4CD3 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4CE4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x49F7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4CFC DUP2 PUSH2 0x79B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4D11 DUP2 PUSH2 0x79D0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4D26 DUP2 PUSH2 0x79E1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4D3B DUP2 PUSH2 0x79F8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4D56 JUMPI PUSH2 0x4D55 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4D66 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4A39 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4D85 JUMPI PUSH2 0x4D84 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4D8F PUSH1 0x80 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x4D9F DUP5 DUP3 DUP6 ADD PUSH2 0x512B JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4DB3 DUP5 DUP3 DUP6 ADD PUSH2 0x512B JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x4DC7 DUP5 DUP3 DUP6 ADD PUSH2 0x4C11 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4DEB JUMPI PUSH2 0x4DEA PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4DF7 DUP5 DUP3 DUP6 ADD PUSH2 0x4C91 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4E19 JUMPI PUSH2 0x4E18 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4E23 PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4E43 JUMPI PUSH2 0x4E42 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4E4F DUP5 DUP3 DUP6 ADD PUSH2 0x4C91 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4E63 DUP5 DUP3 DUP6 ADD PUSH2 0x5140 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4E85 JUMPI PUSH2 0x4E84 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4E8F PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4EAF JUMPI PUSH2 0x4EAE PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4EBB DUP5 DUP3 DUP6 ADD PUSH2 0x4CBF JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4ECF DUP5 DUP3 DUP6 ADD PUSH2 0x5155 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4EF1 JUMPI PUSH2 0x4EF0 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4EFB PUSH1 0xC0 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4F1B JUMPI PUSH2 0x4F1A PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4F27 DUP5 DUP3 DUP6 ADD PUSH2 0x4E03 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4F3B DUP5 DUP3 DUP6 ADD PUSH2 0x5194 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x4F4F DUP5 DUP3 DUP6 ADD PUSH2 0x5194 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x4F63 DUP5 DUP3 DUP6 ADD PUSH2 0x5194 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x4F77 DUP5 DUP3 DUP6 ADD PUSH2 0x516A JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x4F8B DUP5 DUP3 DUP6 ADD PUSH2 0x516A JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4FAD JUMPI PUSH2 0x4FAC PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4FB7 PUSH1 0xC0 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4FD7 JUMPI PUSH2 0x4FD6 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4FE3 DUP5 DUP3 DUP6 ADD PUSH2 0x4E6F JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4FF7 DUP5 DUP3 DUP6 ADD PUSH2 0x51A9 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x500B DUP5 DUP3 DUP6 ADD PUSH2 0x51A9 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x501F DUP5 DUP3 DUP6 ADD PUSH2 0x51A9 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x5033 DUP5 DUP3 DUP6 ADD PUSH2 0x517F JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x5047 DUP5 DUP3 DUP6 ADD PUSH2 0x517F JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5069 JUMPI PUSH2 0x5068 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x5073 PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x5083 DUP5 DUP3 DUP6 ADD PUSH2 0x4BE7 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x50A7 JUMPI PUSH2 0x50A6 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x50B3 DUP5 DUP3 DUP6 ADD PUSH2 0x4EDB JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x50D5 JUMPI PUSH2 0x50D4 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x50DF PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x50EF DUP5 DUP3 DUP6 ADD PUSH2 0x4BFC JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5113 JUMPI PUSH2 0x5112 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x511F DUP5 DUP3 DUP6 ADD PUSH2 0x4F97 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x513A DUP2 PUSH2 0x7A0F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x514F DUP2 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x5164 DUP2 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x5179 DUP2 PUSH2 0x7A3D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x518E DUP2 PUSH2 0x7A3D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x51A3 DUP2 PUSH2 0x7A54 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x51B8 DUP2 PUSH2 0x7A54 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x51D4 JUMPI PUSH2 0x51D3 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x51E2 DUP5 DUP3 DUP6 ADD PUSH2 0x4A7B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5201 JUMPI PUSH2 0x5200 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x521F JUMPI PUSH2 0x521E PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x522B DUP5 DUP3 DUP6 ADD PUSH2 0x4AA5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x524A JUMPI PUSH2 0x5249 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5268 JUMPI PUSH2 0x5267 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5274 DUP5 DUP3 DUP6 ADD PUSH2 0x4AD3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5293 JUMPI PUSH2 0x5292 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x52B1 JUMPI PUSH2 0x52B0 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x52BD DUP5 DUP3 DUP6 ADD PUSH2 0x4B01 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x52DC JUMPI PUSH2 0x52DB PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x52FA JUMPI PUSH2 0x52F9 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5306 DUP5 DUP3 DUP6 ADD PUSH2 0x4B2F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5325 JUMPI PUSH2 0x5324 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5343 JUMPI PUSH2 0x5342 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x534F DUP5 DUP3 DUP6 ADD PUSH2 0x4B5D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x536F JUMPI PUSH2 0x536E PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x538D JUMPI PUSH2 0x538C PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5399 DUP6 DUP3 DUP7 ADD PUSH2 0x4B8B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x53AA DUP6 DUP3 DUP7 ADD PUSH2 0x4BE7 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x53CA JUMPI PUSH2 0x53C9 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x53E8 JUMPI PUSH2 0x53E7 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x53F4 DUP5 DUP3 DUP6 ADD PUSH2 0x4BB9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5413 JUMPI PUSH2 0x5412 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5421 DUP5 DUP3 DUP6 ADD PUSH2 0x4BFC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5440 JUMPI PUSH2 0x543F PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x544E DUP5 DUP3 DUP6 ADD PUSH2 0x4C26 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x546D JUMPI PUSH2 0x546C PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x548B JUMPI PUSH2 0x548A PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5497 DUP5 DUP3 DUP6 ADD PUSH2 0x4C91 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x54B6 JUMPI PUSH2 0x54B5 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x54D4 JUMPI PUSH2 0x54D3 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x54E0 DUP5 DUP3 DUP6 ADD PUSH2 0x4CBF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x54FF JUMPI PUSH2 0x54FE PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x550D DUP5 DUP3 DUP6 ADD PUSH2 0x4CED JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x552C JUMPI PUSH2 0x552B PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x553A DUP5 DUP3 DUP6 ADD PUSH2 0x4D02 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x555A JUMPI PUSH2 0x5559 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5568 DUP6 DUP3 DUP7 ADD PUSH2 0x4D02 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5589 JUMPI PUSH2 0x5588 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5595 DUP6 DUP3 DUP7 ADD PUSH2 0x4D41 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x55B5 JUMPI PUSH2 0x55B4 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x55C3 DUP5 DUP3 DUP6 ADD PUSH2 0x4D17 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x55E2 JUMPI PUSH2 0x55E1 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x55F0 DUP5 DUP3 DUP6 ADD PUSH2 0x4D2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x560F JUMPI PUSH2 0x560E PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x562D JUMPI PUSH2 0x562C PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5639 DUP5 DUP3 DUP6 ADD PUSH2 0x4D41 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5658 JUMPI PUSH2 0x5657 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5676 JUMPI PUSH2 0x5675 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5682 DUP5 DUP3 DUP6 ADD PUSH2 0x4EDB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x56A1 JUMPI PUSH2 0x56A0 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x56BF JUMPI PUSH2 0x56BE PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x56CB DUP5 DUP3 DUP6 ADD PUSH2 0x5053 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x56EA JUMPI PUSH2 0x56E9 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5708 JUMPI PUSH2 0x5707 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5714 DUP5 DUP3 DUP6 ADD PUSH2 0x50BF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5733 JUMPI PUSH2 0x5732 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5741 DUP5 DUP3 DUP6 ADD PUSH2 0x512B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x5764 JUMPI PUSH2 0x5763 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5772 DUP8 DUP3 DUP9 ADD PUSH2 0x512B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x5783 DUP8 DUP3 DUP9 ADD PUSH2 0x4C11 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x57A4 JUMPI PUSH2 0x57A3 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x57B0 DUP8 DUP3 DUP9 ADD PUSH2 0x4C3B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x57DA JUMPI PUSH2 0x57D9 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x57E8 DUP9 DUP3 DUP10 ADD PUSH2 0x512B JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x57F9 DUP9 DUP3 DUP10 ADD PUSH2 0x512B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x580A DUP9 DUP3 DUP10 ADD PUSH2 0x4C11 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x582B JUMPI PUSH2 0x582A PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5837 DUP9 DUP3 DUP10 ADD PUSH2 0x4C3B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x585C JUMPI PUSH2 0x585B PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x586A DUP5 DUP3 DUP6 ADD PUSH2 0x517F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x587F DUP4 DUP4 PUSH2 0x58E7 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5897 DUP4 DUP4 PUSH2 0x5D0E JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x58AF DUP4 DUP4 PUSH2 0x5D2C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x58C7 DUP4 DUP4 PUSH2 0x5D4A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x58DB DUP4 DUP4 PUSH2 0x6506 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x58F0 DUP2 PUSH2 0x6F56 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x58FF DUP2 PUSH2 0x6F56 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5910 DUP3 PUSH2 0x6D52 JUMP JUMPDEST PUSH2 0x591A DUP2 DUP6 PUSH2 0x6DE0 JUMP JUMPDEST SWAP4 POP PUSH2 0x5925 DUP4 PUSH2 0x6CED JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5956 JUMPI DUP2 MLOAD PUSH2 0x593D DUP9 DUP3 PUSH2 0x5873 JUMP JUMPDEST SWAP8 POP PUSH2 0x5948 DUP4 PUSH2 0x6D9F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5929 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x596E DUP3 PUSH2 0x6D5D JUMP JUMPDEST PUSH2 0x5978 DUP2 DUP6 PUSH2 0x6DF1 JUMP JUMPDEST SWAP4 POP PUSH2 0x5983 DUP4 PUSH2 0x6CFD JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x59B4 JUMPI DUP2 MLOAD PUSH2 0x599B DUP9 DUP3 PUSH2 0x588B JUMP JUMPDEST SWAP8 POP PUSH2 0x59A6 DUP4 PUSH2 0x6DAC JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5987 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x59CC DUP3 PUSH2 0x6D68 JUMP JUMPDEST PUSH2 0x59D6 DUP2 DUP6 PUSH2 0x6E02 JUMP JUMPDEST SWAP4 POP PUSH2 0x59E1 DUP4 PUSH2 0x6D0D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5A12 JUMPI DUP2 MLOAD PUSH2 0x59F9 DUP9 DUP3 PUSH2 0x58A3 JUMP JUMPDEST SWAP8 POP PUSH2 0x5A04 DUP4 PUSH2 0x6DB9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x59E5 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5A2A DUP3 PUSH2 0x6D73 JUMP JUMPDEST PUSH2 0x5A34 DUP2 DUP6 PUSH2 0x6E13 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x5A46 DUP6 PUSH2 0x6D1D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x5A82 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x5A63 DUP6 DUP3 PUSH2 0x58BB JUMP JUMPDEST SWAP5 POP PUSH2 0x5A6E DUP4 PUSH2 0x6DC6 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5A4A JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5A9F DUP3 PUSH2 0x6D7E JUMP JUMPDEST PUSH2 0x5AA9 DUP2 DUP6 PUSH2 0x6E24 JUMP JUMPDEST SWAP4 POP PUSH2 0x5AB4 DUP4 PUSH2 0x6D2D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5AE5 JUMPI DUP2 MLOAD PUSH2 0x5ACC DUP9 DUP3 PUSH2 0x58CF JUMP JUMPDEST SWAP8 POP PUSH2 0x5AD7 DUP4 PUSH2 0x6DD3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5AB8 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x5AFB DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B0A DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B19 DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B28 DUP2 PUSH2 0x6F74 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B37 DUP2 PUSH2 0x6F74 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5B48 DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5B52 DUP2 DUP6 PUSH2 0x6E35 JUMP JUMPDEST SWAP4 POP PUSH2 0x5B62 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5B6B DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5B81 DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5B8B DUP2 DUP6 PUSH2 0x6E46 JUMP JUMPDEST SWAP4 POP PUSH2 0x5B9B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5BA4 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5BBA DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5BC4 DUP2 DUP6 PUSH2 0x6E57 JUMP JUMPDEST SWAP4 POP PUSH2 0x5BD4 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5BDD DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5BF3 DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5BFD DUP2 DUP6 PUSH2 0x6E68 JUMP JUMPDEST SWAP4 POP PUSH2 0x5C0D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5C16 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5C2C DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5C36 DUP2 DUP6 PUSH2 0x6E79 JUMP JUMPDEST SWAP4 POP PUSH2 0x5C46 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x5C5F DUP2 PUSH2 0x70D9 JUMP JUMPDEST PUSH2 0x5C69 DUP2 DUP7 PUSH2 0x6E57 JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x5C84 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x5C96 JUMPI PUSH2 0x5CC9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE PUSH1 0x20 DUP7 ADD SWAP4 POP PUSH2 0x5CC9 JUMP JUMPDEST PUSH2 0x5C9F DUP6 PUSH2 0x6D3D JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5CC1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x5CA2 JUMP JUMPDEST DUP1 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x5CDB DUP2 PUSH2 0x702B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5CEA DUP2 PUSH2 0x703D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5CF9 DUP2 PUSH2 0x704F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D08 DUP2 PUSH2 0x7061 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D17 DUP2 PUSH2 0x6FB6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D26 DUP2 PUSH2 0x6FB6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D35 DUP2 PUSH2 0x6FC3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D44 DUP2 PUSH2 0x6FC3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5D55 DUP3 PUSH2 0x6D94 JUMP JUMPDEST PUSH2 0x5D5F DUP2 DUP6 PUSH2 0x6E84 JUMP JUMPDEST SWAP4 POP PUSH2 0x5D6F DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5D78 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5D8E DUP3 PUSH2 0x6D94 JUMP JUMPDEST PUSH2 0x5D98 DUP2 DUP6 PUSH2 0x6E95 JUMP JUMPDEST SWAP4 POP PUSH2 0x5DA8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5DB1 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5DC9 PUSH1 0x2C DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5DD4 DUP3 PUSH2 0x72D8 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5DEC PUSH1 0x29 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5DF7 DUP3 PUSH2 0x7327 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E0F PUSH1 0x2E DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E1A DUP3 PUSH2 0x7376 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E32 PUSH1 0x1B DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E3D DUP3 PUSH2 0x73C5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E55 PUSH1 0x31 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E60 DUP3 PUSH2 0x73EE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E78 PUSH1 0x2C DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E83 DUP3 PUSH2 0x743D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E9B PUSH1 0x2D DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5EA6 DUP3 PUSH2 0x748C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5EBE PUSH1 0x2F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5EC9 DUP3 PUSH2 0x74DB JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5EE1 PUSH1 0x2F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5EEC DUP3 PUSH2 0x752A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F04 PUSH1 0x3F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F0F DUP3 PUSH2 0x7579 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F27 PUSH1 0x42 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F32 DUP3 PUSH2 0x75C8 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F4A PUSH1 0x2A DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F55 DUP3 PUSH2 0x763D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F6D PUSH1 0x2D DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F78 DUP3 PUSH2 0x768C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F90 PUSH1 0x3A DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F9B DUP3 PUSH2 0x76DB JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FB3 PUSH1 0x34 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5FBE DUP3 PUSH2 0x772A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FD6 PUSH1 0x2B DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5FE1 DUP3 PUSH2 0x7779 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FF9 PUSH1 0x2E DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x6004 DUP3 PUSH2 0x77C8 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x601C PUSH1 0x2F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x6027 DUP3 PUSH2 0x7817 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x603F PUSH1 0x31 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x604A DUP3 PUSH2 0x7866 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x6072 DUP3 DUP3 PUSH2 0x5B3D JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6087 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64E8 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x60AF DUP3 DUP3 PUSH2 0x5BE8 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x60C4 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64F7 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x60EC DUP3 DUP3 PUSH2 0x6055 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6101 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x6533 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x6114 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x6533 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x6127 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x6533 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x613A PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x6506 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x614D PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x6506 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x6175 DUP3 DUP3 PUSH2 0x6092 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x618A PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x619D PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x61B0 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x61C3 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x61D6 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x61FE DUP3 DUP3 PUSH2 0x6092 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6213 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x6226 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x6239 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x624C PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x625F PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x6282 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x62BA JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xA0 DUP7 ADD MSTORE PUSH2 0x629A DUP3 DUP3 PUSH2 0x638A JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x62AF PUSH1 0xC0 DUP7 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x62D0 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x5CE1 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x62E3 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x62F6 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x6309 PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x631C PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x6338 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x5CE1 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x634B PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x635E PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x6371 PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x6384 PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x63A2 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x63B5 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x63C8 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x60 DUP7 ADD MSTORE PUSH2 0x63E0 DUP3 DUP3 PUSH2 0x5B3D JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x6405 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6418 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x642B PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x60 DUP7 ADD MSTORE PUSH2 0x6443 DUP3 DUP3 PUSH2 0x5B3D JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x6468 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x5AF2 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x6480 DUP3 DUP3 PUSH2 0x60CF JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x64A5 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x5B10 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x64BD DUP3 DUP3 PUSH2 0x61E1 JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x64D3 DUP2 PUSH2 0x6FF0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x64E2 DUP2 PUSH2 0x6FF0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x64F1 DUP2 PUSH2 0x6FFA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x6500 DUP2 PUSH2 0x6FFA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x650F DUP2 PUSH2 0x700A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x651E DUP2 PUSH2 0x700A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x652D DUP2 PUSH2 0x700A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x653C DUP2 PUSH2 0x701E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x654B DUP2 PUSH2 0x701E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x655D DUP3 DUP5 PUSH2 0x5C21 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x657D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x58F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x659D DUP2 DUP5 PUSH2 0x5905 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 0x65BF DUP2 DUP5 PUSH2 0x5963 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 0x65E1 DUP2 DUP5 PUSH2 0x59C1 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 0x6603 DUP2 DUP5 PUSH2 0x5A1F 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 0x6625 DUP2 DUP5 PUSH2 0x5A94 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6642 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5B01 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x665D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5B2E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x667D DUP2 DUP5 PUSH2 0x5BAF 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 0x669F DUP2 DUP5 PUSH2 0x5B76 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 0x66C1 DUP2 DUP5 PUSH2 0x5C52 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x66DE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5CD2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x66F9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5CF0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6714 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x5CF0 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6726 DUP2 DUP5 PUSH2 0x5D83 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6744 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5CFF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x675F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5D1D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x677A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5D3B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x679A DUP2 DUP5 PUSH2 0x5D83 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 0x67BB DUP2 PUSH2 0x5DBC 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 0x67DB DUP2 PUSH2 0x5DDF 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 0x67FB DUP2 PUSH2 0x5E25 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 0x681B DUP2 PUSH2 0x5E48 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 0x683B DUP2 PUSH2 0x5E8E 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 0x685B DUP2 PUSH2 0x5EB1 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 0x687B DUP2 PUSH2 0x5ED4 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 0x689B DUP2 PUSH2 0x5EF7 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 0x68BB DUP2 PUSH2 0x5F1A 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 0x68DB DUP2 PUSH2 0x5F3D 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 0x68FB DUP2 PUSH2 0x5F83 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 0x691B DUP2 PUSH2 0x5FA6 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 0x693B DUP2 PUSH2 0x5FC9 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 0x695B DUP2 PUSH2 0x600F 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 0x697B DUP2 PUSH2 0x6032 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 0x699C DUP2 DUP5 PUSH2 0x6158 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 0x69BE DUP2 DUP5 PUSH2 0x626A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x69DB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6322 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x69FB DUP2 DUP5 PUSH2 0x63ED 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 0x6A1D DUP2 DUP5 PUSH2 0x648D 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 0x6A3F DUP2 DUP5 PUSH2 0x6450 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6A5C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6A77 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x64D9 JUMP JUMPDEST PUSH2 0x6A84 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x58F6 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6AA0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6AB1 DUP2 PUSH2 0x5E02 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6ACE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6ADF DUP2 PUSH2 0x5E6B JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6AFC PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6B0D DUP2 PUSH2 0x5F60 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6B2A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6B3B DUP2 PUSH2 0x5FEC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6B58 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6515 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6B68 PUSH2 0x6B79 JUMP JUMPDEST SWAP1 POP PUSH2 0x6B74 DUP3 DUP3 PUSH2 0x710B 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 0x6B9E JUMPI PUSH2 0x6B9D PUSH2 0x7241 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 0x6BCA JUMPI PUSH2 0x6BC9 PUSH2 0x7241 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 0x6BF6 JUMPI PUSH2 0x6BF5 PUSH2 0x7241 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 0x6C22 JUMPI PUSH2 0x6C21 PUSH2 0x7241 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 0x6C4E JUMPI PUSH2 0x6C4D PUSH2 0x7241 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 0x6C7A JUMPI PUSH2 0x6C79 PUSH2 0x7241 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 0x6CA6 JUMPI PUSH2 0x6CA5 PUSH2 0x7241 JUMP JUMPDEST JUMPDEST PUSH2 0x6CAF DUP3 PUSH2 0x72BA JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6CD7 JUMPI PUSH2 0x6CD6 PUSH2 0x7241 JUMP JUMPDEST JUMPDEST PUSH2 0x6CE0 DUP3 PUSH2 0x72BA 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 SWAP1 POP PUSH1 0x20 DUP3 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 SWAP1 POP PUSH1 0x20 DUP3 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 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 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 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 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD 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 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 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 DUP2 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 0x6EB1 DUP3 PUSH2 0x6FF0 JUMP JUMPDEST SWAP2 POP PUSH2 0x6EBC DUP4 PUSH2 0x6FF0 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x6EF1 JUMPI PUSH2 0x6EF0 PUSH2 0x7185 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F07 DUP3 PUSH2 0x6FF0 JUMP JUMPDEST SWAP2 POP PUSH2 0x6F12 DUP4 PUSH2 0x6FF0 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x6F4B JUMPI PUSH2 0x6F4A PUSH2 0x7185 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F61 DUP3 PUSH2 0x6FD0 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 PUSH2 0x6F89 DUP3 PUSH2 0x6F56 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH2 0x6F9E DUP3 PUSH2 0x794B JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH2 0x6FB1 DUP3 PUSH2 0x7960 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x3 SIGNEXTEND 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7036 DUP3 PUSH2 0x7073 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7048 DUP3 PUSH2 0x7073 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x705A DUP3 PUSH2 0x6F90 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x706C DUP3 PUSH2 0x6FA3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x707E DUP3 PUSH2 0x7085 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7090 DUP3 PUSH2 0x6FD0 JUMP JUMPDEST 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 0x70C4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x70A9 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x70D3 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 0x70F1 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x7105 JUMPI PUSH2 0x7104 PUSH2 0x71E3 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7114 DUP3 PUSH2 0x72BA JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x7133 JUMPI PUSH2 0x7132 PUSH2 0x7241 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7147 DUP3 PUSH2 0x6FF0 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x717A JUMPI PUSH2 0x7179 PUSH2 0x7185 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD 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 0x21 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 0x32 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 0x3 RETURNDATASIZE GT ISZERO PUSH2 0x728F JUMPI PUSH1 0x4 PUSH1 0x0 DUP1 RETURNDATACOPY PUSH2 0x728C PUSH1 0x0 MLOAD PUSH2 0x72CB JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xE0 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206E756C6C207363726970740000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F6172643A206E6F207472616E7366657273 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2061636365707465640000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206261642074696D657374616D70000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574426F617264446174613A206F6E6C79206F776E65720000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C654465666175 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C743A206261642074696D657374616D70000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2062616420717565727949640000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20656D7074792073637269707400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206F6E6C79207265717565737465720000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2072657761726420746F6F206C6F770000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2062797465636F6465206368616E67656420616674657220706F7374696E6700 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C654465666175 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C743A205769746E65742064725478486173682063616E6E6F74206265207A65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x726F000000000000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574426F6172644461746141434C733A20756E617574686F72697A65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x64207265706F7274657200000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2062616420647254784861736800000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C654465666175 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C743A20726573756C742063616E6E6F7420626520656D707479000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20616C726561647920696E697469616C697A6564000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206F6E6C79206F776E6572000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206261642063626F724279746573000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206E6F742079657420706F737465640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F61726455706772616461626C6542617365 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x3A206E6F7420696D706C656D656E746564000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x44 RETURNDATASIZE LT ISZERO PUSH2 0x78C5 JUMPI PUSH2 0x7948 JUMP JUMPDEST PUSH2 0x78CD PUSH2 0x6B79 JUMP JUMPDEST PUSH1 0x4 RETURNDATASIZE SUB PUSH1 0x4 DUP3 RETURNDATACOPY DUP1 MLOAD RETURNDATASIZE PUSH1 0x24 DUP3 ADD GT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x78F5 JUMPI POP POP PUSH2 0x7948 JUMP JUMPDEST DUP1 DUP3 ADD DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7913 JUMPI POP POP POP POP PUSH2 0x7948 JUMP JUMPDEST DUP1 PUSH1 0x20 DUP4 ADD ADD PUSH1 0x4 RETURNDATASIZE SUB DUP6 ADD DUP2 GT ISZERO PUSH2 0x7930 JUMPI POP POP POP POP POP PUSH2 0x7948 JUMP JUMPDEST PUSH2 0x793F DUP3 PUSH1 0x20 ADD DUP6 ADD DUP7 PUSH2 0x710B JUMP JUMPDEST DUP3 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH2 0x100 DUP2 LT PUSH2 0x795D JUMPI PUSH2 0x795C PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x4 DUP2 LT PUSH2 0x7971 JUMPI PUSH2 0x7970 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH2 0x797D DUP2 PUSH2 0x6F56 JUMP JUMPDEST DUP2 EQ PUSH2 0x7988 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7994 DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP2 EQ PUSH2 0x799F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x79AB DUP2 PUSH2 0x6F74 JUMP JUMPDEST DUP2 EQ PUSH2 0x79B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x79C2 DUP2 PUSH2 0x6F7E JUMP JUMPDEST DUP2 EQ PUSH2 0x79CD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x100 DUP2 LT PUSH2 0x79DE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x79EA DUP2 PUSH2 0x6FB6 JUMP JUMPDEST DUP2 EQ PUSH2 0x79F5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A01 DUP2 PUSH2 0x6FC3 JUMP JUMPDEST DUP2 EQ PUSH2 0x7A0C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A18 DUP2 PUSH2 0x6FF0 JUMP JUMPDEST DUP2 EQ PUSH2 0x7A23 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A2F DUP2 PUSH2 0x6FFA JUMP JUMPDEST DUP2 EQ PUSH2 0x7A3A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A46 DUP2 PUSH2 0x700A JUMP JUMPDEST DUP2 EQ PUSH2 0x7A51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A5D DUP2 PUSH2 0x701E JUMP JUMPDEST DUP2 EQ PUSH2 0x7A68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID JUMPI PUSH10 0x746E6574426F61726444 PUSH2 0x7461 GASPRICE KECCAK256 PUSH15 0x6F7420696E2044656C657465642073 PUSH21 0x617475735769746E6574426F617264446174613A20 PUSH15 0x6F7420696E20506F73746564207374 PUSH2 0x7475 PUSH20 0x5769746E6574426F617264446174613A206E6F74 KECCAK256 PUSH10 0x6E205265706F72746564 KECCAK256 PUSH20 0x74617475735769746E657452657175657374426F PUSH2 0x7264 SLOAD PUSH19 0x75737461626C65426173653A206661696C696E PUSH8 0x20617373657274A2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x26 0x26 0xE2 0xC 0x29 0xEC 0x4C 0xE2 SLOAD PUSH21 0xEC6CB7A1CEB7B8C91CB224F916654F83066EDA9630 EQ PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"614:2322:16:-:0;;;798:263;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;950:11;963;984:1;1231:11:15;1244;739::14;1179:9:15;331::39;313:28;;;;;;;;;;;;272:76;613:10:11;596:8;:6;;;:8;;:::i;:::-;:14;;;:27;;;;;;;;;;;;;;;;;;631:4:12;597:7;:5;;;:7;;:::i;:::-;:19;;:31;617:10;597:31;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;989:13:41;1013:4;989:29;;1028:17;1111:5;1099:18;1086:31;;1144:5;1136:13;;;;;;;;;;;;1171:9;1159:21;;;;;;1212:13;1198:27;;;;;;;;;;;;979:253;;946:286;777:11:14::1;766:22;;;;::::0;::::1;635:160:::0;;1093:170:15;;;1033:21:16::1;1002:52;;;;::::0;::::1;798:263:::0;;;614:2322;;4280:177:11;4333:29;4414:27;4401:40;;4280:177;:::o;1067:165:12:-;1107:31;1189:27;1173:43;;1067:165;:::o;7:137:46:-;61:5;92:6;86:13;77:22;;108:30;132:5;108:30;:::i;:::-;7:137;;;;:::o;150:143::-;207:5;238:6;232:13;223:22;;254:33;281:5;254:33;:::i;:::-;150:143;;;;:::o;299:::-;356:5;387:6;381:13;372:22;;403:33;430:5;403:33;:::i;:::-;299:143;;;;:::o;448:657::-;533:6;541;549;598:2;586:9;577:7;573:23;569:32;566:119;;;604:79;;:::i;:::-;566:119;724:1;749:61;802:7;793:6;782:9;778:22;749:61;:::i;:::-;739:71;;695:125;859:2;885:64;941:7;932:6;921:9;917:22;885:64;:::i;:::-;875:74;;830:129;998:2;1024:64;1080:7;1071:6;1060:9;1056:22;1024:64;:::i;:::-;1014:74;;969:129;448:657;;;;;:::o;1192:90::-;1226:7;1269:5;1262:13;1255:21;1244:32;;1192:90;;;:::o;1288:77::-;1325:7;1354:5;1343:16;;1288:77;;;:::o;1371:::-;1408:7;1437:5;1426:16;;1371:77;;;:::o;1577:117::-;1686:1;1683;1676:12;1700:116;1770:21;1785:5;1770:21;:::i;:::-;1763:5;1760:32;1750:60;;1806:1;1803;1796:12;1750:60;1700:116;:::o;1822:122::-;1895:24;1913:5;1895:24;:::i;:::-;1888:5;1885:35;1875:63;;1934:1;1931;1924:12;1875:63;1822:122;:::o;1950:::-;2023:24;2041:5;2023:24;:::i;:::-;2016:5;2013:35;2003:63;;2062:1;2059;2052:12;2003:63;1950:122;:::o;614:2322:16:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_1856":{"entryPoint":null,"id":1856,"parameterSlots":0,"returnSlots":0},"@_480":{"entryPoint":null,"id":480,"parameterSlots":0,"returnSlots":0},"@__reportResult_3415":{"entryPoint":17040,"id":3415,"parameterSlots":4,"returnSlots":1},"@_acls_1603":{"entryPoint":16289,"id":1603,"parameterSlots":0,"returnSlots":1},"@_getGasPrice_3491":{"entryPoint":17409,"id":3491,"parameterSlots":0,"returnSlots":1},"@_getMsgValue_3502":{"entryPoint":17401,"id":3502,"parameterSlots":0,"returnSlots":1},"@_getQueryStatusRevertMessage_1494":{"entryPoint":16537,"id":1494,"parameterSlots":1,"returnSlots":1},"@_getQueryStatus_1455":{"entryPoint":16329,"id":1455,"parameterSlots":1,"returnSlots":1},"@_getRequestData_1527":{"entryPoint":16911,"id":1527,"parameterSlots":1,"returnSlots":1},"@_getResponseData_1544":{"entryPoint":16871,"id":1544,"parameterSlots":1,"returnSlots":1},"@_safeTransferTo_3520":{"entryPoint":17326,"id":3520,"parameterSlots":2,"returnSlots":0},"@_state_1553":{"entryPoint":16831,"id":1553,"parameterSlots":0,"returnSlots":1},"@asBool_3216":{"entryPoint":14638,"id":3216,"parameterSlots":1,"returnSlots":1},"@asBytes32_3117":{"entryPoint":14439,"id":3117,"parameterSlots":1,"returnSlots":1},"@asBytes_3102":{"entryPoint":13470,"id":3102,"parameterSlots":1,"returnSlots":1},"@asErrorCode_3133":{"entryPoint":15382,"id":3133,"parameterSlots":1,"returnSlots":1},"@asErrorMessage_3185":{"entryPoint":15083,"id":3185,"parameterSlots":1,"returnSlots":2},"@asFixed16Array_3247":{"entryPoint":3857,"id":3247,"parameterSlots":1,"returnSlots":1},"@asFixed16_3231":{"entryPoint":4479,"id":3231,"parameterSlots":1,"returnSlots":1},"@asInt128Array_3278":{"entryPoint":3706,"id":3278,"parameterSlots":1,"returnSlots":1},"@asInt128_3262":{"entryPoint":5330,"id":3262,"parameterSlots":1,"returnSlots":1},"@asRawError_3201":{"entryPoint":11811,"id":3201,"parameterSlots":1,"returnSlots":1},"@asStringArray_3309":{"entryPoint":13652,"id":3309,"parameterSlots":1,"returnSlots":1},"@asString_3293":{"entryPoint":4008,"id":3293,"parameterSlots":1,"returnSlots":1},"@asUint64Array_3340":{"entryPoint":7275,"id":3340,"parameterSlots":1,"returnSlots":1},"@asUint64_3324":{"entryPoint":12690,"id":3324,"parameterSlots":1,"returnSlots":1},"@base_8231":{"entryPoint":7426,"id":8231,"parameterSlots":0,"returnSlots":1},"@codehash_8240":{"entryPoint":11771,"id":8240,"parameterSlots":0,"returnSlots":1},"@currency_8106":{"entryPoint":15677,"id":8106,"parameterSlots":0,"returnSlots":0},"@deleteQuery_2511":{"entryPoint":9152,"id":2511,"parameterSlots":1,"returnSlots":1},"@destruct_3480":{"entryPoint":5152,"id":3480,"parameterSlots":0,"returnSlots":0},"@estimateReward_3464":{"entryPoint":14585,"id":3464,"parameterSlots":1,"returnSlots":1},"@getNextQueryId_2720":{"entryPoint":13621,"id":2720,"parameterSlots":0,"returnSlots":1},"@getQueryData_2737":{"entryPoint":12836,"id":2737,"parameterSlots":1,"returnSlots":1},"@getQueryStatus_2752":{"entryPoint":8574,"id":2752,"parameterSlots":1,"returnSlots":1},"@hash_4301":{"entryPoint":16951,"id":4301,"parameterSlots":1,"returnSlots":1},"@initialize_2013":{"entryPoint":6116,"id":2013,"parameterSlots":1,"returnSlots":0},"@isError_3087":{"entryPoint":9006,"id":3087,"parameterSlots":1,"returnSlots":1},"@isOk_3072":{"entryPoint":11625,"id":3072,"parameterSlots":1,"returnSlots":1},"@isReporter_2097":{"entryPoint":3611,"id":2097,"parameterSlots":1,"returnSlots":1},"@isUpgradableFrom_2037":{"entryPoint":8454,"id":2037,"parameterSlots":1,"returnSlots":1},"@isUpgradable_8249":{"entryPoint":7509,"id":8249,"parameterSlots":0,"returnSlots":1},"@owner_2049":{"entryPoint":10820,"id":2049,"parameterSlots":0,"returnSlots":1},"@postRequest_2630":{"entryPoint":11962,"id":2630,"parameterSlots":1,"returnSlots":1},"@proxiableUUID_1867":{"entryPoint":7466,"id":1867,"parameterSlots":0,"returnSlots":1},"@readRequestBytecode_2860":{"entryPoint":5647,"id":2860,"parameterSlots":1,"returnSlots":1},"@readRequestGasPrice_2884":{"entryPoint":5476,"id":2884,"parameterSlots":1,"returnSlots":1},"@readRequestReward_2908":{"entryPoint":4159,"id":2908,"parameterSlots":1,"returnSlots":1},"@readRequest_2801":{"entryPoint":10871,"id":2801,"parameterSlots":1,"returnSlots":1},"@readResponseDrTxHash_2950":{"entryPoint":15528,"id":2950,"parameterSlots":1,"returnSlots":1},"@readResponseReporter_2971":{"entryPoint":11444,"id":2971,"parameterSlots":1,"returnSlots":1},"@readResponseResult_3003":{"entryPoint":14784,"id":3003,"parameterSlots":1,"returnSlots":1},"@readResponseTimestamp_3024":{"entryPoint":4330,"id":3024,"parameterSlots":1,"returnSlots":1},"@readResponse_2929":{"entryPoint":8592,"id":2929,"parameterSlots":1,"returnSlots":1},"@reportResultBatch_2456":{"entryPoint":10054,"id":2456,"parameterSlots":2,"returnSlots":0},"@reportResult_2237":{"entryPoint":7589,"id":2237,"parameterSlots":4,"returnSlots":0},"@reportResult_2302":{"entryPoint":13803,"id":2302,"parameterSlots":5,"returnSlots":0},"@resultFromCborBytes_3040":{"entryPoint":15713,"id":3040,"parameterSlots":1,"returnSlots":1},"@resultFromCborValue_3057":{"entryPoint":4625,"id":3057,"parameterSlots":1,"returnSlots":1},"@setReporters_2139":{"entryPoint":6903,"id":2139,"parameterSlots":1,"returnSlots":0},"@transferOwnership_2081":{"entryPoint":15868,"id":2081,"parameterSlots":1,"returnSlots":0},"@unsetReporters_2181":{"entryPoint":4780,"id":2181,"parameterSlots":1,"returnSlots":0},"@upgradeReward_2697":{"entryPoint":8157,"id":2697,"parameterSlots":1,"returnSlots":0},"@version_1877":{"entryPoint":7549,"id":1877,"parameterSlots":0,"returnSlots":1},"abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":18025,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory":{"entryPoint":18137,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory":{"entryPoint":18249,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory":{"entryPoint":18361,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory":{"entryPoint":18473,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr":{"entryPoint":18615,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory":{"entryPoint":18757,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":18869,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr_fromMemory":{"entryPoint":18935,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_string_memory_ptr_fromMemory":{"entryPoint":19001,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_address":{"entryPoint":19067,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_address_fromMemory":{"entryPoint":19088,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":19109,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory":{"entryPoint":19155,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory":{"entryPoint":19201,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory":{"entryPoint":19247,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory":{"entryPoint":19293,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr":{"entryPoint":19339,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory":{"entryPoint":19385,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bool":{"entryPoint":19431,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bool_fromMemory":{"entryPoint":19452,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32":{"entryPoint":19473,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":19494,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_calldata_ptr":{"entryPoint":19515,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_t_bytes_memory_ptr":{"entryPoint":19601,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr_fromMemory":{"entryPoint":19647,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_contract$_IWitnetRequest_$3829":{"entryPoint":19693,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_enum$_ErrorCodes_$4618_fromMemory":{"entryPoint":19714,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_int128_fromMemory":{"entryPoint":19735,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_int32_fromMemory":{"entryPoint":19756,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_string_memory_ptr_fromMemory":{"entryPoint":19777,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_BatchResult_$3956_memory_ptr":{"entryPoint":19823,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Buffer_$4361_memory_ptr":{"entryPoint":19971,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory":{"entryPoint":20079,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":20187,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory":{"entryPoint":20375,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Result_$4342_memory_ptr":{"entryPoint":20563,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory":{"entryPoint":20671,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256":{"entryPoint":20779,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32":{"entryPoint":20800,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32_fromMemory":{"entryPoint":20821,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64":{"entryPoint":20842,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64_fromMemory":{"entryPoint":20863,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8":{"entryPoint":20884,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8_fromMemory":{"entryPoint":20905,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_address":{"entryPoint":20926,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":20971,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_address_$dyn_memory_ptr_fromMemory":{"entryPoint":21044,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_int128_$dyn_memory_ptr_fromMemory":{"entryPoint":21117,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_int32_$dyn_memory_ptr_fromMemory":{"entryPoint":21190,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory":{"entryPoint":21263,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptrt_bool":{"entryPoint":21336,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_tuple_t_array$_t_uint64_$dyn_memory_ptr_fromMemory":{"entryPoint":21428,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bool_fromMemory":{"entryPoint":21501,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":21546,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":21591,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr_fromMemory":{"entryPoint":21664,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_contract$_IWitnetRequest_$3829":{"entryPoint":21737,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_enum$_ErrorCodes_$4618_fromMemory":{"entryPoint":21782,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_enum$_ErrorCodes_$4618t_string_memory_ptr_fromMemory":{"entryPoint":21827,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_tuple_t_int128_fromMemory":{"entryPoint":21919,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_int32_fromMemory":{"entryPoint":21964,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_string_memory_ptr_fromMemory":{"entryPoint":22009,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":22082,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr":{"entryPoint":22155,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr_fromMemory":{"entryPoint":22228,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256":{"entryPoint":22301,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256t_bytes32t_bytes_calldata_ptr":{"entryPoint":22346,"id":null,"parameterSlots":2,"returnSlots":4},"abi_decode_tuple_t_uint256t_uint256t_bytes32t_bytes_calldata_ptr":{"entryPoint":22462,"id":null,"parameterSlots":2,"returnSlots":5},"abi_decode_tuple_t_uint64_fromMemory":{"entryPoint":22598,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_address_to_t_address":{"entryPoint":22643,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_int128_to_t_int128":{"entryPoint":22667,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_int32_to_t_int32":{"entryPoint":22691,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr":{"entryPoint":22715,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_uint64_to_t_uint64":{"entryPoint":22735,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_address_to_t_address":{"entryPoint":22759,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":22774,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack":{"entryPoint":22789,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack":{"entryPoint":22883,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack":{"entryPoint":22977,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack":{"entryPoint":23071,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack":{"entryPoint":23188,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bool_to_t_bool":{"entryPoint":23282,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_fromStack":{"entryPoint":23297,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_library":{"entryPoint":23312,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32":{"entryPoint":23327,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32_fromStack":{"entryPoint":23342,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr":{"entryPoint":23357,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":23414,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library":{"entryPoint":23471,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library":{"entryPoint":23528,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":23585,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack_library":{"entryPoint":23634,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_contract$_IERC20_$3611_to_t_address_fromStack":{"entryPoint":23762,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address":{"entryPoint":23777,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack":{"entryPoint":23792,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_enum$_QueryStatus_$4315_to_t_uint8_fromStack":{"entryPoint":23807,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int128_to_t_int128":{"entryPoint":23822,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int128_to_t_int128_fromStack":{"entryPoint":23837,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int32_to_t_int32":{"entryPoint":23852,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int32_to_t_int32_fromStack":{"entryPoint":23867,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr":{"entryPoint":23882,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack":{"entryPoint":23939,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4_to_t_string_memory_ptr_fromStack":{"entryPoint":23996,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150_to_t_string_memory_ptr_fromStack":{"entryPoint":24031,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b_to_t_string_memory_ptr_fromStack":{"entryPoint":24066,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d_to_t_string_memory_ptr_fromStack":{"entryPoint":24101,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f_to_t_string_memory_ptr_fromStack":{"entryPoint":24136,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e_to_t_string_memory_ptr_fromStack":{"entryPoint":24171,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c_to_t_string_memory_ptr_fromStack":{"entryPoint":24206,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee_to_t_string_memory_ptr_fromStack":{"entryPoint":24241,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a_to_t_string_memory_ptr_fromStack":{"entryPoint":24276,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce_to_t_string_memory_ptr_fromStack":{"entryPoint":24311,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb_to_t_string_memory_ptr_fromStack":{"entryPoint":24346,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1_to_t_string_memory_ptr_fromStack":{"entryPoint":24381,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801_to_t_string_memory_ptr_fromStack":{"entryPoint":24416,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84_to_t_string_memory_ptr_fromStack":{"entryPoint":24451,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b_to_t_string_memory_ptr_fromStack":{"entryPoint":24486,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d_to_t_string_memory_ptr_fromStack":{"entryPoint":24521,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847_to_t_string_memory_ptr_fromStack":{"entryPoint":24556,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6_to_t_string_memory_ptr_fromStack":{"entryPoint":24591,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094_to_t_string_memory_ptr_fromStack":{"entryPoint":24626,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr":{"entryPoint":24661,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library":{"entryPoint":24722,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":24783,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library":{"entryPoint":24920,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library":{"entryPoint":25057,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Query_$4310_memory_ptr_to_t_struct$_Query_$4310_memory_ptr_fromStack":{"entryPoint":25194,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr":{"entryPoint":25274,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr_fromStack":{"entryPoint":25378,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr":{"entryPoint":25482,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr_fromStack":{"entryPoint":25581,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack":{"entryPoint":25680,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library":{"entryPoint":25741,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_uint256_to_t_uint256":{"entryPoint":25802,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":25817,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint32_to_t_uint32":{"entryPoint":25832,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint32_to_t_uint32_library":{"entryPoint":25847,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64":{"entryPoint":25862,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_fromStack":{"entryPoint":25877,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_library":{"entryPoint":25892,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8":{"entryPoint":25907,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8_library":{"entryPoint":25922,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":25937,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":25960,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed":{"entryPoint":25987,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_reversed":{"entryPoint":26021,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_reversed":{"entryPoint":26055,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_reversed":{"entryPoint":26089,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_reversed":{"entryPoint":26123,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed":{"entryPoint":26157,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed":{"entryPoint":26184,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed":{"entryPoint":26211,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":26245,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_storage__to_t_bytes_memory_ptr__fromStack_library_reversed":{"entryPoint":26279,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_IERC20_$3611__to_t_address__fromStack_reversed":{"entryPoint":26313,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_enum$_ErrorCodes_$4618__to_t_uint8__fromStack_reversed":{"entryPoint":26340,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_enum$_ErrorCodes_$4618_t_string_memory_ptr__to_t_uint8_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26367,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_enum$_QueryStatus_$4315__to_t_uint8__fromStack_reversed":{"entryPoint":26415,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int128__to_t_int128__fromStack_reversed":{"entryPoint":26442,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int32__to_t_int32__fromStack_reversed":{"entryPoint":26469,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26496,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26530,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26562,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26594,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26626,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26658,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26690,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26722,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26754,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26786,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26818,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26850,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26882,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26914,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26946,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":26978,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed":{"entryPoint":27010,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_Query_$4310_memory_ptr__to_t_struct$_Query_$4310_memory_ptr__fromStack_reversed":{"entryPoint":27044,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_Request_$4327_memory_ptr__to_t_struct$_Request_$4327_memory_ptr__fromStack_reversed":{"entryPoint":27078,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_Response_$4336_memory_ptr__to_t_struct$_Response_$4336_memory_ptr__fromStack_reversed":{"entryPoint":27105,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_library_reversed":{"entryPoint":27139,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_reversed":{"entryPoint":27173,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed":{"entryPoint":27207,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed":{"entryPoint":27234,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_uint256_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b__to_t_uint256_t_string_memory_ptr__fromStack_reversed":{"entryPoint":27275,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e__to_t_uint256_t_string_memory_ptr__fromStack_reversed":{"entryPoint":27321,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801__to_t_uint256_t_string_memory_ptr__fromStack_reversed":{"entryPoint":27367,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847__to_t_uint256_t_string_memory_ptr__fromStack_reversed":{"entryPoint":27413,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed":{"entryPoint":27459,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_memory":{"entryPoint":27486,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":27513,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":27523,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":27567,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":27611,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":27655,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr":{"entryPoint":27699,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":27743,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":27787,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_string_memory_ptr":{"entryPoint":27836,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":27885,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":27901,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":27917,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":27933,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":27949,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_bytes_storage":{"entryPoint":27965,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":27986,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":27997,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":28008,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":28019,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":28030,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":28041,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_string_memory_ptr":{"entryPoint":28052,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_address_$dyn_memory_ptr":{"entryPoint":28063,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":28076,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":28089,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":28102,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":28115,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack":{"entryPoint":28128,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack":{"entryPoint":28145,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack":{"entryPoint":28162,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack":{"entryPoint":28179,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack":{"entryPoint":28196,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr":{"entryPoint":28213,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":28230,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library":{"entryPoint":28247,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_library":{"entryPoint":28264,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":28281,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr":{"entryPoint":28292,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":28309,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint256":{"entryPoint":28326,"id":null,"parameterSlots":2,"returnSlots":1},"checked_mul_t_uint256":{"entryPoint":28412,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":28502,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bool":{"entryPoint":28520,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":28532,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_contract$_IWitnetRequest_$3829":{"entryPoint":28542,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_enum$_ErrorCodes_$4618":{"entryPoint":28560,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_enum$_QueryStatus_$4315":{"entryPoint":28579,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int128":{"entryPoint":28598,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int32":{"entryPoint":28611,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":28624,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":28656,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint32":{"entryPoint":28666,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint64":{"entryPoint":28682,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":28702,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_IERC20_$3611_to_t_address":{"entryPoint":28715,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_IWitnetRequest_$3829_to_t_address":{"entryPoint":28733,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_enum$_ErrorCodes_$4618_to_t_uint8":{"entryPoint":28751,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_enum$_QueryStatus_$4315_to_t_uint8":{"entryPoint":28769,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address":{"entryPoint":28787,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_uint160":{"entryPoint":28805,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":28823,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":28838,"id":null,"parameterSlots":3,"returnSlots":0},"extract_byte_array_length":{"entryPoint":28889,"id":null,"parameterSlots":1,"returnSlots":1},"finalize_allocation":{"entryPoint":28939,"id":null,"parameterSlots":2,"returnSlots":0},"increment_t_uint256":{"entryPoint":28988,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x11":{"entryPoint":29061,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x21":{"entryPoint":29108,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x22":{"entryPoint":29155,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":29202,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":29249,"id":null,"parameterSlots":0,"returnSlots":0},"return_data_selector":{"entryPoint":29296,"id":null,"parameterSlots":0,"returnSlots":1},"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490":{"entryPoint":29330,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":29335,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f":{"entryPoint":29340,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421":{"entryPoint":29345,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef":{"entryPoint":29350,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":29355,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":29360,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":29365,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":29370,"id":null,"parameterSlots":1,"returnSlots":1},"shift_right_224_unsigned":{"entryPoint":29387,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4":{"entryPoint":29400,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150":{"entryPoint":29479,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b":{"entryPoint":29558,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d":{"entryPoint":29637,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f":{"entryPoint":29678,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e":{"entryPoint":29757,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c":{"entryPoint":29836,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee":{"entryPoint":29915,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a":{"entryPoint":29994,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce":{"entryPoint":30073,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb":{"entryPoint":30152,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1":{"entryPoint":30269,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801":{"entryPoint":30348,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84":{"entryPoint":30427,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b":{"entryPoint":30506,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d":{"entryPoint":30585,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847":{"entryPoint":30664,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6":{"entryPoint":30743,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094":{"entryPoint":30822,"id":null,"parameterSlots":1,"returnSlots":0},"try_decode_error_message":{"entryPoint":30901,"id":null,"parameterSlots":0,"returnSlots":1},"validator_assert_t_enum$_ErrorCodes_$4618":{"entryPoint":31051,"id":null,"parameterSlots":1,"returnSlots":0},"validator_assert_t_enum$_QueryStatus_$4315":{"entryPoint":31072,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_address":{"entryPoint":31092,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bool":{"entryPoint":31115,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":31138,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_contract$_IWitnetRequest_$3829":{"entryPoint":31161,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_enum$_ErrorCodes_$4618":{"entryPoint":31184,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_int128":{"entryPoint":31201,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_int32":{"entryPoint":31224,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":31247,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint32":{"entryPoint":31270,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint64":{"entryPoint":31293,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint8":{"entryPoint":31316,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:103326:46","statements":[{"body":{"nodeType":"YulBlock","src":"126:620:46","statements":[{"nodeType":"YulAssignment","src":"136:90:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"218:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"161:56:46"},"nodeType":"YulFunctionCall","src":"161:64:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"145:15:46"},"nodeType":"YulFunctionCall","src":"145:81:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"136:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"235:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"246:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"239:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"268:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"275:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"261:6:46"},"nodeType":"YulFunctionCall","src":"261:21:46"},"nodeType":"YulExpressionStatement","src":"261:21:46"},{"nodeType":"YulAssignment","src":"291:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"302:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"309:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"298:3:46"},"nodeType":"YulFunctionCall","src":"298:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"291:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"324:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"335:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"328:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"390:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"404:77:46"},"nodeType":"YulFunctionCall","src":"404:79:46"},"nodeType":"YulExpressionStatement","src":"404:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"360:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"369:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"377:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"365:3:46"},"nodeType":"YulFunctionCall","src":"365:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"356:3:46"},"nodeType":"YulFunctionCall","src":"356:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"385:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"353:2:46"},"nodeType":"YulFunctionCall","src":"353:36:46"},"nodeType":"YulIf","src":"350:143:46"},{"body":{"nodeType":"YulBlock","src":"562:178:46","statements":[{"nodeType":"YulVariableDeclaration","src":"577:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"595:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"581:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"619:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"645:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"657:3:46"}],"functionName":{"name":"abi_decode_t_address","nodeType":"YulIdentifier","src":"624:20:46"},"nodeType":"YulFunctionCall","src":"624:37:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"612:6:46"},"nodeType":"YulFunctionCall","src":"612:50:46"},"nodeType":"YulExpressionStatement","src":"612:50:46"},{"nodeType":"YulAssignment","src":"675:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"686:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"691:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"682:3:46"},"nodeType":"YulFunctionCall","src":"682:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"675:3:46"}]},{"nodeType":"YulAssignment","src":"709:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"720:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"725:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"716:3:46"},"nodeType":"YulFunctionCall","src":"716:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"709:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"524:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"527:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"521:2:46"},"nodeType":"YulFunctionCall","src":"521:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"535:18:46","statements":[{"nodeType":"YulAssignment","src":"537:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"546:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"549:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"542:3:46"},"nodeType":"YulFunctionCall","src":"542:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"537:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"506:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"508:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"517:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"512:1:46","type":""}]}]},"src":"502:238:46"}]},"name":"abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"96:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"104:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"112:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"120:5:46","type":""}],"src":"24:722:46"},{"body":{"nodeType":"YulBlock","src":"882:631:46","statements":[{"nodeType":"YulAssignment","src":"892:90:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"974:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"917:56:46"},"nodeType":"YulFunctionCall","src":"917:64:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"901:15:46"},"nodeType":"YulFunctionCall","src":"901:81:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"892:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"991:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"1002:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"995:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1024:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"1031:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1017:6:46"},"nodeType":"YulFunctionCall","src":"1017:21:46"},"nodeType":"YulExpressionStatement","src":"1017:21:46"},{"nodeType":"YulAssignment","src":"1047:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1058:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1065:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1054:3:46"},"nodeType":"YulFunctionCall","src":"1054:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"1047:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"1080:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"1091:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"1084:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1146:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"1160:77:46"},"nodeType":"YulFunctionCall","src":"1160:79:46"},"nodeType":"YulExpressionStatement","src":"1160:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"1116:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"1125:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1133:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"1121:3:46"},"nodeType":"YulFunctionCall","src":"1121:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1112:3:46"},"nodeType":"YulFunctionCall","src":"1112:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"1141:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1109:2:46"},"nodeType":"YulFunctionCall","src":"1109:36:46"},"nodeType":"YulIf","src":"1106:143:46"},{"body":{"nodeType":"YulBlock","src":"1318:189:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1333:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"1351:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"1337:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"1375:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"1412:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"1424:3:46"}],"functionName":{"name":"abi_decode_t_address_fromMemory","nodeType":"YulIdentifier","src":"1380:31:46"},"nodeType":"YulFunctionCall","src":"1380:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1368:6:46"},"nodeType":"YulFunctionCall","src":"1368:61:46"},"nodeType":"YulExpressionStatement","src":"1368:61:46"},{"nodeType":"YulAssignment","src":"1442:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"1453:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1458:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1449:3:46"},"nodeType":"YulFunctionCall","src":"1449:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"1442:3:46"}]},{"nodeType":"YulAssignment","src":"1476:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"1487:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1492:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1483:3:46"},"nodeType":"YulFunctionCall","src":"1483:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"1476:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"1280:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"1283:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"1277:2:46"},"nodeType":"YulFunctionCall","src":"1277:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"1291:18:46","statements":[{"nodeType":"YulAssignment","src":"1293:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"1302:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"1305:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1298:3:46"},"nodeType":"YulFunctionCall","src":"1298:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"1293:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"1262:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1264:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1273:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"1268:1:46","type":""}]}]},"src":"1258:249:46"}]},"name":"abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"852:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"860:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"868:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"876:5:46","type":""}],"src":"769:744:46"},{"body":{"nodeType":"YulBlock","src":"1647:629:46","statements":[{"nodeType":"YulAssignment","src":"1657:89:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"1738:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"1682:55:46"},"nodeType":"YulFunctionCall","src":"1682:63:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"1666:15:46"},"nodeType":"YulFunctionCall","src":"1666:80:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"1657:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"1755:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"1766:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"1759:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1788:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"1795:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1781:6:46"},"nodeType":"YulFunctionCall","src":"1781:21:46"},"nodeType":"YulExpressionStatement","src":"1781:21:46"},{"nodeType":"YulAssignment","src":"1811:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1822:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1829:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1818:3:46"},"nodeType":"YulFunctionCall","src":"1818:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"1811:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"1844:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"1855:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"1848:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1910:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"1924:77:46"},"nodeType":"YulFunctionCall","src":"1924:79:46"},"nodeType":"YulExpressionStatement","src":"1924:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"1880:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"1889:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1897:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"1885:3:46"},"nodeType":"YulFunctionCall","src":"1885:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1876:3:46"},"nodeType":"YulFunctionCall","src":"1876:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"1905:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1873:2:46"},"nodeType":"YulFunctionCall","src":"1873:36:46"},"nodeType":"YulIf","src":"1870:143:46"},{"body":{"nodeType":"YulBlock","src":"2082:188:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2097:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"2115:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"2101:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"2139:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"2175:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"2187:3:46"}],"functionName":{"name":"abi_decode_t_int128_fromMemory","nodeType":"YulIdentifier","src":"2144:30:46"},"nodeType":"YulFunctionCall","src":"2144:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2132:6:46"},"nodeType":"YulFunctionCall","src":"2132:60:46"},"nodeType":"YulExpressionStatement","src":"2132:60:46"},{"nodeType":"YulAssignment","src":"2205:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"2216:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2221:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2212:3:46"},"nodeType":"YulFunctionCall","src":"2212:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"2205:3:46"}]},{"nodeType":"YulAssignment","src":"2239:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"2250:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2255:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2246:3:46"},"nodeType":"YulFunctionCall","src":"2246:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"2239:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"2044:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"2047:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"2041:2:46"},"nodeType":"YulFunctionCall","src":"2041:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"2055:18:46","statements":[{"nodeType":"YulAssignment","src":"2057:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"2066:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"2069:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2062:3:46"},"nodeType":"YulFunctionCall","src":"2062:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"2057:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"2026:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2028:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2037:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"2032:1:46","type":""}]}]},"src":"2022:248:46"}]},"name":"abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1617:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"1625:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1633:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"1641:5:46","type":""}],"src":"1535:741:46"},{"body":{"nodeType":"YulBlock","src":"2408:627:46","statements":[{"nodeType":"YulAssignment","src":"2418:88:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2498:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"2443:54:46"},"nodeType":"YulFunctionCall","src":"2443:62:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"2427:15:46"},"nodeType":"YulFunctionCall","src":"2427:79:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"2418:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"2515:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"2526:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"2519:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"2548:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"2555:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2541:6:46"},"nodeType":"YulFunctionCall","src":"2541:21:46"},"nodeType":"YulExpressionStatement","src":"2541:21:46"},{"nodeType":"YulAssignment","src":"2571:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"2582:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2589:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2578:3:46"},"nodeType":"YulFunctionCall","src":"2578:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"2571:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"2604:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"2615:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"2608:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"2670:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"2684:77:46"},"nodeType":"YulFunctionCall","src":"2684:79:46"},"nodeType":"YulExpressionStatement","src":"2684:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"2640:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2649:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"2657:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"2645:3:46"},"nodeType":"YulFunctionCall","src":"2645:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2636:3:46"},"nodeType":"YulFunctionCall","src":"2636:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"2665:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"2633:2:46"},"nodeType":"YulFunctionCall","src":"2633:36:46"},"nodeType":"YulIf","src":"2630:143:46"},{"body":{"nodeType":"YulBlock","src":"2842:187:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2857:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"2875:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"2861:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"2899:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"2934:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"2946:3:46"}],"functionName":{"name":"abi_decode_t_int32_fromMemory","nodeType":"YulIdentifier","src":"2904:29:46"},"nodeType":"YulFunctionCall","src":"2904:46:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2892:6:46"},"nodeType":"YulFunctionCall","src":"2892:59:46"},"nodeType":"YulExpressionStatement","src":"2892:59:46"},{"nodeType":"YulAssignment","src":"2964:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"2975:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2980:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2971:3:46"},"nodeType":"YulFunctionCall","src":"2971:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"2964:3:46"}]},{"nodeType":"YulAssignment","src":"2998:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3009:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3014:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3005:3:46"},"nodeType":"YulFunctionCall","src":"3005:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"2998:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"2804:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"2807:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"2801:2:46"},"nodeType":"YulFunctionCall","src":"2801:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"2815:18:46","statements":[{"nodeType":"YulAssignment","src":"2817:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"2826:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"2829:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2822:3:46"},"nodeType":"YulFunctionCall","src":"2822:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"2817:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"2786:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2788:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2797:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"2792:1:46","type":""}]}]},"src":"2782:247:46"}]},"name":"abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"2378:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"2386:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"2394:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"2402:5:46","type":""}],"src":"2297:738:46"},{"body":{"nodeType":"YulBlock","src":"3180:849:46","statements":[{"nodeType":"YulAssignment","src":"3190:100:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3282:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"3215:66:46"},"nodeType":"YulFunctionCall","src":"3215:74:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"3199:15:46"},"nodeType":"YulFunctionCall","src":"3199:91:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"3190:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"3299:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"3310:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"3303:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"3332:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"3339:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3325:6:46"},"nodeType":"YulFunctionCall","src":"3325:21:46"},"nodeType":"YulExpressionStatement","src":"3325:21:46"},{"nodeType":"YulAssignment","src":"3355:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"3366:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3373:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3362:3:46"},"nodeType":"YulFunctionCall","src":"3362:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"3355:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"3388:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"3399:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"3392:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3454:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"3468:77:46"},"nodeType":"YulFunctionCall","src":"3468:79:46"},"nodeType":"YulExpressionStatement","src":"3468:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3424:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3433:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"3441:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"3429:3:46"},"nodeType":"YulFunctionCall","src":"3429:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3420:3:46"},"nodeType":"YulFunctionCall","src":"3420:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"3449:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3417:2:46"},"nodeType":"YulFunctionCall","src":"3417:36:46"},"nodeType":"YulIf","src":"3414:143:46"},{"body":{"nodeType":"YulBlock","src":"3626:397:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3641:29:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3666:3:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"3660:5:46"},"nodeType":"YulFunctionCall","src":"3660:10:46"},"variables":[{"name":"innerOffset","nodeType":"YulTypedName","src":"3645:11:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3722:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"3724:77:46"},"nodeType":"YulFunctionCall","src":"3724:79:46"},"nodeType":"YulExpressionStatement","src":"3724:79:46"}]},"condition":{"arguments":[{"name":"innerOffset","nodeType":"YulIdentifier","src":"3689:11:46"},{"kind":"number","nodeType":"YulLiteral","src":"3702:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3686:2:46"},"nodeType":"YulFunctionCall","src":"3686:35:46"},"nodeType":"YulIf","src":"3683:122:46"},{"nodeType":"YulVariableDeclaration","src":"3818:42:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3840:6:46"},{"name":"innerOffset","nodeType":"YulIdentifier","src":"3848:11:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3836:3:46"},"nodeType":"YulFunctionCall","src":"3836:24:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"3822:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"3881:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"3928:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"3940:3:46"}],"functionName":{"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"3886:41:46"},"nodeType":"YulFunctionCall","src":"3886:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3874:6:46"},"nodeType":"YulFunctionCall","src":"3874:71:46"},"nodeType":"YulExpressionStatement","src":"3874:71:46"},{"nodeType":"YulAssignment","src":"3958:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"3969:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3974:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3965:3:46"},"nodeType":"YulFunctionCall","src":"3965:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"3958:3:46"}]},{"nodeType":"YulAssignment","src":"3992:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4003:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"4008:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3999:3:46"},"nodeType":"YulFunctionCall","src":"3999:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"3992:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"3588:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"3591:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"3585:2:46"},"nodeType":"YulFunctionCall","src":"3585:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"3599:18:46","statements":[{"nodeType":"YulAssignment","src":"3601:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"3610:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"3613:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3606:3:46"},"nodeType":"YulFunctionCall","src":"3606:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"3601:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"3570:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3572:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3581:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"3576:1:46","type":""}]}]},"src":"3566:457:46"}]},"name":"abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"3150:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"3158:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3166:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"3174:5:46","type":""}],"src":"3057:972:46"},{"body":{"nodeType":"YulBlock","src":"4222:883:46","statements":[{"nodeType":"YulAssignment","src":"4232:119:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4343:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"4257:85:46"},"nodeType":"YulFunctionCall","src":"4257:93:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"4241:15:46"},"nodeType":"YulFunctionCall","src":"4241:110:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"4232:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"4360:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"4371:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"4364:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"4393:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"4400:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4386:6:46"},"nodeType":"YulFunctionCall","src":"4386:21:46"},"nodeType":"YulExpressionStatement","src":"4386:21:46"},{"nodeType":"YulAssignment","src":"4416:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"4427:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4434:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4423:3:46"},"nodeType":"YulFunctionCall","src":"4423:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"4416:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"4449:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"4460:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"4453:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4515:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"4529:77:46"},"nodeType":"YulFunctionCall","src":"4529:79:46"},"nodeType":"YulExpressionStatement","src":"4529:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4485:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4494:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4502:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"4490:3:46"},"nodeType":"YulFunctionCall","src":"4490:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4481:3:46"},"nodeType":"YulFunctionCall","src":"4481:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"4510:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4478:2:46"},"nodeType":"YulFunctionCall","src":"4478:36:46"},"nodeType":"YulIf","src":"4475:143:46"},{"body":{"nodeType":"YulBlock","src":"4687:412:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4702:36:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4734:3:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"4721:12:46"},"nodeType":"YulFunctionCall","src":"4721:17:46"},"variables":[{"name":"innerOffset","nodeType":"YulTypedName","src":"4706:11:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4790:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"4792:77:46"},"nodeType":"YulFunctionCall","src":"4792:79:46"},"nodeType":"YulExpressionStatement","src":"4792:79:46"}]},"condition":{"arguments":[{"name":"innerOffset","nodeType":"YulIdentifier","src":"4757:11:46"},{"kind":"number","nodeType":"YulLiteral","src":"4770:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4754:2:46"},"nodeType":"YulFunctionCall","src":"4754:35:46"},"nodeType":"YulIf","src":"4751:122:46"},{"nodeType":"YulVariableDeclaration","src":"4886:42:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"4908:6:46"},{"name":"innerOffset","nodeType":"YulIdentifier","src":"4916:11:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4904:3:46"},"nodeType":"YulFunctionCall","src":"4904:24:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"4890:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"4949:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"5004:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"5016:3:46"}],"functionName":{"name":"abi_decode_t_struct$_BatchResult_$3956_memory_ptr","nodeType":"YulIdentifier","src":"4954:49:46"},"nodeType":"YulFunctionCall","src":"4954:66:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4942:6:46"},"nodeType":"YulFunctionCall","src":"4942:79:46"},"nodeType":"YulExpressionStatement","src":"4942:79:46"},{"nodeType":"YulAssignment","src":"5034:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5045:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5050:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5041:3:46"},"nodeType":"YulFunctionCall","src":"5041:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"5034:3:46"}]},{"nodeType":"YulAssignment","src":"5068:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"5079:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5084:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5075:3:46"},"nodeType":"YulFunctionCall","src":"5075:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"5068:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"4649:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"4652:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"4646:2:46"},"nodeType":"YulFunctionCall","src":"4646:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"4660:18:46","statements":[{"nodeType":"YulAssignment","src":"4662:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"4671:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"4674:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4667:3:46"},"nodeType":"YulFunctionCall","src":"4667:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"4662:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"4631:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4633:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4642:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"4637:1:46","type":""}]}]},"src":"4627:472:46"}]},"name":"abi_decode_available_length_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"4192:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"4200:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"4208:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"4216:5:46","type":""}],"src":"4091:1014:46"},{"body":{"nodeType":"YulBlock","src":"5239:629:46","statements":[{"nodeType":"YulAssignment","src":"5249:89:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"5330:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"5274:55:46"},"nodeType":"YulFunctionCall","src":"5274:63:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"5258:15:46"},"nodeType":"YulFunctionCall","src":"5258:80:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"5249:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"5347:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"5358:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"5351:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"5380:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"5387:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5373:6:46"},"nodeType":"YulFunctionCall","src":"5373:21:46"},"nodeType":"YulExpressionStatement","src":"5373:21:46"},{"nodeType":"YulAssignment","src":"5403:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"5414:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"5421:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5410:3:46"},"nodeType":"YulFunctionCall","src":"5410:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"5403:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"5436:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"5447:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"5440:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"5502:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"5516:77:46"},"nodeType":"YulFunctionCall","src":"5516:79:46"},"nodeType":"YulExpressionStatement","src":"5516:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"5472:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"5481:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5489:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"5477:3:46"},"nodeType":"YulFunctionCall","src":"5477:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5468:3:46"},"nodeType":"YulFunctionCall","src":"5468:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"5497:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"5465:2:46"},"nodeType":"YulFunctionCall","src":"5465:36:46"},"nodeType":"YulIf","src":"5462:143:46"},{"body":{"nodeType":"YulBlock","src":"5674:188:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5689:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"5707:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"5693:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5731:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"5767:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"5779:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"5736:30:46"},"nodeType":"YulFunctionCall","src":"5736:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5724:6:46"},"nodeType":"YulFunctionCall","src":"5724:60:46"},"nodeType":"YulExpressionStatement","src":"5724:60:46"},{"nodeType":"YulAssignment","src":"5797:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"5808:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5813:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5804:3:46"},"nodeType":"YulFunctionCall","src":"5804:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"5797:3:46"}]},{"nodeType":"YulAssignment","src":"5831:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"5842:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5847:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5838:3:46"},"nodeType":"YulFunctionCall","src":"5838:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"5831:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5636:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"5639:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"5633:2:46"},"nodeType":"YulFunctionCall","src":"5633:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"5647:18:46","statements":[{"nodeType":"YulAssignment","src":"5649:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"5658:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"5661:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5654:3:46"},"nodeType":"YulFunctionCall","src":"5654:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"5649:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"5618:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5620:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5629:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"5624:1:46","type":""}]}]},"src":"5614:248:46"}]},"name":"abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"5209:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5217:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5225:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"5233:5:46","type":""}],"src":"5127:741:46"},{"body":{"nodeType":"YulBlock","src":"5957:327:46","statements":[{"nodeType":"YulAssignment","src":"5967:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6033:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"5992:40:46"},"nodeType":"YulFunctionCall","src":"5992:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"5976:15:46"},"nodeType":"YulFunctionCall","src":"5976:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"5967:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"6057:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"6064:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6050:6:46"},"nodeType":"YulFunctionCall","src":"6050:21:46"},"nodeType":"YulExpressionStatement","src":"6050:21:46"},{"nodeType":"YulVariableDeclaration","src":"6080:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"6095:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"6102:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6091:3:46"},"nodeType":"YulFunctionCall","src":"6091:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"6084:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6145:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"6147:77:46"},"nodeType":"YulFunctionCall","src":"6147:79:46"},"nodeType":"YulExpressionStatement","src":"6147:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"6126:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6131:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6122:3:46"},"nodeType":"YulFunctionCall","src":"6122:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"6140:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"6119:2:46"},"nodeType":"YulFunctionCall","src":"6119:25:46"},"nodeType":"YulIf","src":"6116:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"6261:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"6266:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6271:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"6237:23:46"},"nodeType":"YulFunctionCall","src":"6237:41:46"},"nodeType":"YulExpressionStatement","src":"6237:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"5930:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"5935:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5943:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"5951:5:46","type":""}],"src":"5874:410:46"},{"body":{"nodeType":"YulBlock","src":"6384:325:46","statements":[{"nodeType":"YulAssignment","src":"6394:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6460:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"6419:40:46"},"nodeType":"YulFunctionCall","src":"6419:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"6403:15:46"},"nodeType":"YulFunctionCall","src":"6403:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"6394:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"6484:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"6491:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6477:6:46"},"nodeType":"YulFunctionCall","src":"6477:21:46"},"nodeType":"YulExpressionStatement","src":"6477:21:46"},{"nodeType":"YulVariableDeclaration","src":"6507:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"6522:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"6529:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6518:3:46"},"nodeType":"YulFunctionCall","src":"6518:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"6511:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6572:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"6574:77:46"},"nodeType":"YulFunctionCall","src":"6574:79:46"},"nodeType":"YulExpressionStatement","src":"6574:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"6553:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6558:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6549:3:46"},"nodeType":"YulFunctionCall","src":"6549:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"6567:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"6546:2:46"},"nodeType":"YulFunctionCall","src":"6546:25:46"},"nodeType":"YulIf","src":"6543:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"6686:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"6691:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6696:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"6664:21:46"},"nodeType":"YulFunctionCall","src":"6664:39:46"},"nodeType":"YulExpressionStatement","src":"6664:39:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"6357:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"6362:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6370:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"6378:5:46","type":""}],"src":"6290:419:46"},{"body":{"nodeType":"YulBlock","src":"6810:326:46","statements":[{"nodeType":"YulAssignment","src":"6820:75:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6887:6:46"}],"functionName":{"name":"array_allocation_size_t_string_memory_ptr","nodeType":"YulIdentifier","src":"6845:41:46"},"nodeType":"YulFunctionCall","src":"6845:49:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"6829:15:46"},"nodeType":"YulFunctionCall","src":"6829:66:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"6820:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"6911:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"6918:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6904:6:46"},"nodeType":"YulFunctionCall","src":"6904:21:46"},"nodeType":"YulExpressionStatement","src":"6904:21:46"},{"nodeType":"YulVariableDeclaration","src":"6934:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"6949:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"6956:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6945:3:46"},"nodeType":"YulFunctionCall","src":"6945:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"6938:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6999:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"7001:77:46"},"nodeType":"YulFunctionCall","src":"7001:79:46"},"nodeType":"YulExpressionStatement","src":"7001:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"6980:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6985:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6976:3:46"},"nodeType":"YulFunctionCall","src":"6976:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"6994:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"6973:2:46"},"nodeType":"YulFunctionCall","src":"6973:25:46"},"nodeType":"YulIf","src":"6970:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"7113:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"7118:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"7123:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"7091:21:46"},"nodeType":"YulFunctionCall","src":"7091:39:46"},"nodeType":"YulExpressionStatement","src":"7091:39:46"}]},"name":"abi_decode_available_length_t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"6783:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"6788:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6796:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"6804:5:46","type":""}],"src":"6715:421:46"},{"body":{"nodeType":"YulBlock","src":"7194:87:46","statements":[{"nodeType":"YulAssignment","src":"7204:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7226:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"7213:12:46"},"nodeType":"YulFunctionCall","src":"7213:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"7204:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7269:5:46"}],"functionName":{"name":"validator_revert_t_address","nodeType":"YulIdentifier","src":"7242:26:46"},"nodeType":"YulFunctionCall","src":"7242:33:46"},"nodeType":"YulExpressionStatement","src":"7242:33:46"}]},"name":"abi_decode_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7172:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7180:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"7188:5:46","type":""}],"src":"7142:139:46"},{"body":{"nodeType":"YulBlock","src":"7350:80:46","statements":[{"nodeType":"YulAssignment","src":"7360:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7375:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"7369:5:46"},"nodeType":"YulFunctionCall","src":"7369:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"7360:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7418:5:46"}],"functionName":{"name":"validator_revert_t_address","nodeType":"YulIdentifier","src":"7391:26:46"},"nodeType":"YulFunctionCall","src":"7391:33:46"},"nodeType":"YulExpressionStatement","src":"7391:33:46"}]},"name":"abi_decode_t_address_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7328:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7336:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"7344:5:46","type":""}],"src":"7287:143:46"},{"body":{"nodeType":"YulBlock","src":"7530:293:46","statements":[{"body":{"nodeType":"YulBlock","src":"7579:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"7581:77:46"},"nodeType":"YulFunctionCall","src":"7581:79:46"},"nodeType":"YulExpressionStatement","src":"7581:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7558:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7566:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7554:3:46"},"nodeType":"YulFunctionCall","src":"7554:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"7573:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7550:3:46"},"nodeType":"YulFunctionCall","src":"7550:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"7543:6:46"},"nodeType":"YulFunctionCall","src":"7543:35:46"},"nodeType":"YulIf","src":"7540:122:46"},{"nodeType":"YulVariableDeclaration","src":"7671:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7698:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"7685:12:46"},"nodeType":"YulFunctionCall","src":"7685:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"7675:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7714:103:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7790:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7798:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7786:3:46"},"nodeType":"YulFunctionCall","src":"7786:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"7805:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"7813:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"7723:62:46"},"nodeType":"YulFunctionCall","src":"7723:94:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"7714:5:46"}]}]},"name":"abi_decode_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7508:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7516:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"7524:5:46","type":""}],"src":"7453:370:46"},{"body":{"nodeType":"YulBlock","src":"7934:297:46","statements":[{"body":{"nodeType":"YulBlock","src":"7983:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"7985:77:46"},"nodeType":"YulFunctionCall","src":"7985:79:46"},"nodeType":"YulExpressionStatement","src":"7985:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7962:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7970:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7958:3:46"},"nodeType":"YulFunctionCall","src":"7958:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"7977:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7954:3:46"},"nodeType":"YulFunctionCall","src":"7954:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"7947:6:46"},"nodeType":"YulFunctionCall","src":"7947:35:46"},"nodeType":"YulIf","src":"7944:122:46"},{"nodeType":"YulVariableDeclaration","src":"8075:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8095:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8089:5:46"},"nodeType":"YulFunctionCall","src":"8089:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"8079:6:46","type":""}]},{"nodeType":"YulAssignment","src":"8111:114:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8198:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8206:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8194:3:46"},"nodeType":"YulFunctionCall","src":"8194:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"8213:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"8221:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"8120:73:46"},"nodeType":"YulFunctionCall","src":"8120:105:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"8111:5:46"}]}]},"name":"abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7912:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7920:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"7928:5:46","type":""}],"src":"7846:385:46"},{"body":{"nodeType":"YulBlock","src":"8340:296:46","statements":[{"body":{"nodeType":"YulBlock","src":"8389:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"8391:77:46"},"nodeType":"YulFunctionCall","src":"8391:79:46"},"nodeType":"YulExpressionStatement","src":"8391:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8368:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8376:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8364:3:46"},"nodeType":"YulFunctionCall","src":"8364:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"8383:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8360:3:46"},"nodeType":"YulFunctionCall","src":"8360:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"8353:6:46"},"nodeType":"YulFunctionCall","src":"8353:35:46"},"nodeType":"YulIf","src":"8350:122:46"},{"nodeType":"YulVariableDeclaration","src":"8481:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8501:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8495:5:46"},"nodeType":"YulFunctionCall","src":"8495:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"8485:6:46","type":""}]},{"nodeType":"YulAssignment","src":"8517:113:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8603:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8611:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8599:3:46"},"nodeType":"YulFunctionCall","src":"8599:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"8618:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"8626:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"8526:72:46"},"nodeType":"YulFunctionCall","src":"8526:104:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"8517:5:46"}]}]},"name":"abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"8318:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"8326:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"8334:5:46","type":""}],"src":"8253:383:46"},{"body":{"nodeType":"YulBlock","src":"8743:295:46","statements":[{"body":{"nodeType":"YulBlock","src":"8792:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"8794:77:46"},"nodeType":"YulFunctionCall","src":"8794:79:46"},"nodeType":"YulExpressionStatement","src":"8794:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8771:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8779:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8767:3:46"},"nodeType":"YulFunctionCall","src":"8767:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"8786:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8763:3:46"},"nodeType":"YulFunctionCall","src":"8763:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"8756:6:46"},"nodeType":"YulFunctionCall","src":"8756:35:46"},"nodeType":"YulIf","src":"8753:122:46"},{"nodeType":"YulVariableDeclaration","src":"8884:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8904:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8898:5:46"},"nodeType":"YulFunctionCall","src":"8898:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"8888:6:46","type":""}]},{"nodeType":"YulAssignment","src":"8920:112:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9005:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9013:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9001:3:46"},"nodeType":"YulFunctionCall","src":"9001:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"9020:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"9028:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"8929:71:46"},"nodeType":"YulFunctionCall","src":"8929:103:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"8920:5:46"}]}]},"name":"abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"8721:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"8729:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"8737:5:46","type":""}],"src":"8657:381:46"},{"body":{"nodeType":"YulBlock","src":"9158:307:46","statements":[{"body":{"nodeType":"YulBlock","src":"9207:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"9209:77:46"},"nodeType":"YulFunctionCall","src":"9209:79:46"},"nodeType":"YulExpressionStatement","src":"9209:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9186:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9194:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9182:3:46"},"nodeType":"YulFunctionCall","src":"9182:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"9201:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"9178:3:46"},"nodeType":"YulFunctionCall","src":"9178:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"9171:6:46"},"nodeType":"YulFunctionCall","src":"9171:35:46"},"nodeType":"YulIf","src":"9168:122:46"},{"nodeType":"YulVariableDeclaration","src":"9299:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9319:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"9313:5:46"},"nodeType":"YulFunctionCall","src":"9313:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"9303:6:46","type":""}]},{"nodeType":"YulAssignment","src":"9335:124:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9432:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9440:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9428:3:46"},"nodeType":"YulFunctionCall","src":"9428:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"9447:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"9455:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"9344:83:46"},"nodeType":"YulFunctionCall","src":"9344:115:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"9335:5:46"}]}]},"name":"abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"9136:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"9144:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"9152:5:46","type":""}],"src":"9060:405:46"},{"body":{"nodeType":"YulBlock","src":"9633:322:46","statements":[{"body":{"nodeType":"YulBlock","src":"9682:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"9684:77:46"},"nodeType":"YulFunctionCall","src":"9684:79:46"},"nodeType":"YulExpressionStatement","src":"9684:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9661:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9669:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9657:3:46"},"nodeType":"YulFunctionCall","src":"9657:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"9676:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"9653:3:46"},"nodeType":"YulFunctionCall","src":"9653:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"9646:6:46"},"nodeType":"YulFunctionCall","src":"9646:35:46"},"nodeType":"YulIf","src":"9643:122:46"},{"nodeType":"YulVariableDeclaration","src":"9774:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9801:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"9788:12:46"},"nodeType":"YulFunctionCall","src":"9788:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"9778:6:46","type":""}]},{"nodeType":"YulAssignment","src":"9817:132:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9922:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9930:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9918:3:46"},"nodeType":"YulFunctionCall","src":"9918:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"9937:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"9945:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"9826:91:46"},"nodeType":"YulFunctionCall","src":"9826:123:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"9817:5:46"}]}]},"name":"abi_decode_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"9611:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"9619:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"9627:5:46","type":""}],"src":"9527:428:46"},{"body":{"nodeType":"YulBlock","src":"10064:296:46","statements":[{"body":{"nodeType":"YulBlock","src":"10113:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"10115:77:46"},"nodeType":"YulFunctionCall","src":"10115:79:46"},"nodeType":"YulExpressionStatement","src":"10115:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10092:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"10100:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10088:3:46"},"nodeType":"YulFunctionCall","src":"10088:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"10107:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"10084:3:46"},"nodeType":"YulFunctionCall","src":"10084:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"10077:6:46"},"nodeType":"YulFunctionCall","src":"10077:35:46"},"nodeType":"YulIf","src":"10074:122:46"},{"nodeType":"YulVariableDeclaration","src":"10205:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10225:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"10219:5:46"},"nodeType":"YulFunctionCall","src":"10219:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"10209:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10241:113:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10327:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"10335:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10323:3:46"},"nodeType":"YulFunctionCall","src":"10323:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"10342:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"10350:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"10250:72:46"},"nodeType":"YulFunctionCall","src":"10250:104:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"10241:5:46"}]}]},"name":"abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"10042:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"10050:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"10058:5:46","type":""}],"src":"9977:383:46"},{"body":{"nodeType":"YulBlock","src":"10415:84:46","statements":[{"nodeType":"YulAssignment","src":"10425:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10447:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"10434:12:46"},"nodeType":"YulFunctionCall","src":"10434:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"10425:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10487:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"10463:23:46"},"nodeType":"YulFunctionCall","src":"10463:30:46"},"nodeType":"YulExpressionStatement","src":"10463:30:46"}]},"name":"abi_decode_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"10393:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"10401:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"10409:5:46","type":""}],"src":"10366:133:46"},{"body":{"nodeType":"YulBlock","src":"10565:77:46","statements":[{"nodeType":"YulAssignment","src":"10575:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10590:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"10584:5:46"},"nodeType":"YulFunctionCall","src":"10584:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"10575:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10630:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"10606:23:46"},"nodeType":"YulFunctionCall","src":"10606:30:46"},"nodeType":"YulExpressionStatement","src":"10606:30:46"}]},"name":"abi_decode_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"10543:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"10551:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"10559:5:46","type":""}],"src":"10505:137:46"},{"body":{"nodeType":"YulBlock","src":"10700:87:46","statements":[{"nodeType":"YulAssignment","src":"10710:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10732:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"10719:12:46"},"nodeType":"YulFunctionCall","src":"10719:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"10710:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10775:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"10748:26:46"},"nodeType":"YulFunctionCall","src":"10748:33:46"},"nodeType":"YulExpressionStatement","src":"10748:33:46"}]},"name":"abi_decode_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"10678:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"10686:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"10694:5:46","type":""}],"src":"10648:139:46"},{"body":{"nodeType":"YulBlock","src":"10856:80:46","statements":[{"nodeType":"YulAssignment","src":"10866:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10881:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"10875:5:46"},"nodeType":"YulFunctionCall","src":"10875:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"10866:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10924:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"10897:26:46"},"nodeType":"YulFunctionCall","src":"10897:33:46"},"nodeType":"YulExpressionStatement","src":"10897:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"10834:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"10842:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"10850:5:46","type":""}],"src":"10793:143:46"},{"body":{"nodeType":"YulBlock","src":"11029:478:46","statements":[{"body":{"nodeType":"YulBlock","src":"11078:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"11080:77:46"},"nodeType":"YulFunctionCall","src":"11080:79:46"},"nodeType":"YulExpressionStatement","src":"11080:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11057:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11065:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11053:3:46"},"nodeType":"YulFunctionCall","src":"11053:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"11072:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"11049:3:46"},"nodeType":"YulFunctionCall","src":"11049:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"11042:6:46"},"nodeType":"YulFunctionCall","src":"11042:35:46"},"nodeType":"YulIf","src":"11039:122:46"},{"nodeType":"YulAssignment","src":"11170:30:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11193:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"11180:12:46"},"nodeType":"YulFunctionCall","src":"11180:20:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"11170:6:46"}]},{"body":{"nodeType":"YulBlock","src":"11243:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490","nodeType":"YulIdentifier","src":"11245:77:46"},"nodeType":"YulFunctionCall","src":"11245:79:46"},"nodeType":"YulExpressionStatement","src":"11245:79:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"11215:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11223:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"11212:2:46"},"nodeType":"YulFunctionCall","src":"11212:30:46"},"nodeType":"YulIf","src":"11209:117:46"},{"nodeType":"YulAssignment","src":"11335:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11351:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11359:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11347:3:46"},"nodeType":"YulFunctionCall","src":"11347:17:46"},"variableNames":[{"name":"arrayPos","nodeType":"YulIdentifier","src":"11335:8:46"}]},{"body":{"nodeType":"YulBlock","src":"11418:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"11420:77:46"},"nodeType":"YulFunctionCall","src":"11420:79:46"},"nodeType":"YulExpressionStatement","src":"11420:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"arrayPos","nodeType":"YulIdentifier","src":"11383:8:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"11397:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11405:4:46","type":"","value":"0x01"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"11393:3:46"},"nodeType":"YulFunctionCall","src":"11393:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11379:3:46"},"nodeType":"YulFunctionCall","src":"11379:32:46"},{"name":"end","nodeType":"YulIdentifier","src":"11413:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"11376:2:46"},"nodeType":"YulFunctionCall","src":"11376:41:46"},"nodeType":"YulIf","src":"11373:128:46"}]},"name":"abi_decode_t_bytes_calldata_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"10996:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"11004:3:46","type":""}],"returnVariables":[{"name":"arrayPos","nodeType":"YulTypedName","src":"11012:8:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"11022:6:46","type":""}],"src":"10955:552:46"},{"body":{"nodeType":"YulBlock","src":"11587:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"11636:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"11638:77:46"},"nodeType":"YulFunctionCall","src":"11638:79:46"},"nodeType":"YulExpressionStatement","src":"11638:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11615:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11623:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11611:3:46"},"nodeType":"YulFunctionCall","src":"11611:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"11630:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"11607:3:46"},"nodeType":"YulFunctionCall","src":"11607:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"11600:6:46"},"nodeType":"YulFunctionCall","src":"11600:35:46"},"nodeType":"YulIf","src":"11597:122:46"},{"nodeType":"YulVariableDeclaration","src":"11728:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11755:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"11742:12:46"},"nodeType":"YulFunctionCall","src":"11742:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"11732:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11771:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11831:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11839:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11827:3:46"},"nodeType":"YulFunctionCall","src":"11827:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"11846:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"11854:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"11780:46:46"},"nodeType":"YulFunctionCall","src":"11780:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"11771:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"11565:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"11573:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"11581:5:46","type":""}],"src":"11526:338:46"},{"body":{"nodeType":"YulBlock","src":"11955:281:46","statements":[{"body":{"nodeType":"YulBlock","src":"12004:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"12006:77:46"},"nodeType":"YulFunctionCall","src":"12006:79:46"},"nodeType":"YulExpressionStatement","src":"12006:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"11983:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11991:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11979:3:46"},"nodeType":"YulFunctionCall","src":"11979:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"11998:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"11975:3:46"},"nodeType":"YulFunctionCall","src":"11975:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"11968:6:46"},"nodeType":"YulFunctionCall","src":"11968:35:46"},"nodeType":"YulIf","src":"11965:122:46"},{"nodeType":"YulVariableDeclaration","src":"12096:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12116:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"12110:5:46"},"nodeType":"YulFunctionCall","src":"12110:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"12100:6:46","type":""}]},{"nodeType":"YulAssignment","src":"12132:98:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12203:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12211:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12199:3:46"},"nodeType":"YulFunctionCall","src":"12199:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"12218:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"12226:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"12141:57:46"},"nodeType":"YulFunctionCall","src":"12141:89:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"12132:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"11933:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"11941:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"11949:5:46","type":""}],"src":"11883:353:46"},{"body":{"nodeType":"YulBlock","src":"12317:110:46","statements":[{"nodeType":"YulAssignment","src":"12327:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12349:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"12336:12:46"},"nodeType":"YulFunctionCall","src":"12336:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"12327:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12415:5:46"}],"functionName":{"name":"validator_revert_t_contract$_IWitnetRequest_$3829","nodeType":"YulIdentifier","src":"12365:49:46"},"nodeType":"YulFunctionCall","src":"12365:56:46"},"nodeType":"YulExpressionStatement","src":"12365:56:46"}]},"name":"abi_decode_t_contract$_IWitnetRequest_$3829","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"12295:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"12303:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"12311:5:46","type":""}],"src":"12242:185:46"},{"body":{"nodeType":"YulBlock","src":"12511:95:46","statements":[{"nodeType":"YulAssignment","src":"12521:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12536:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"12530:5:46"},"nodeType":"YulFunctionCall","src":"12530:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"12521:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12594:5:46"}],"functionName":{"name":"validator_revert_t_enum$_ErrorCodes_$4618","nodeType":"YulIdentifier","src":"12552:41:46"},"nodeType":"YulFunctionCall","src":"12552:48:46"},"nodeType":"YulExpressionStatement","src":"12552:48:46"}]},"name":"abi_decode_t_enum$_ErrorCodes_$4618_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"12489:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"12497:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"12505:5:46","type":""}],"src":"12433:173:46"},{"body":{"nodeType":"YulBlock","src":"12674:79:46","statements":[{"nodeType":"YulAssignment","src":"12684:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12699:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"12693:5:46"},"nodeType":"YulFunctionCall","src":"12693:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"12684:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12741:5:46"}],"functionName":{"name":"validator_revert_t_int128","nodeType":"YulIdentifier","src":"12715:25:46"},"nodeType":"YulFunctionCall","src":"12715:32:46"},"nodeType":"YulExpressionStatement","src":"12715:32:46"}]},"name":"abi_decode_t_int128_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"12652:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"12660:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"12668:5:46","type":""}],"src":"12612:141:46"},{"body":{"nodeType":"YulBlock","src":"12820:78:46","statements":[{"nodeType":"YulAssignment","src":"12830:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12845:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"12839:5:46"},"nodeType":"YulFunctionCall","src":"12839:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"12830:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12886:5:46"}],"functionName":{"name":"validator_revert_t_int32","nodeType":"YulIdentifier","src":"12861:24:46"},"nodeType":"YulFunctionCall","src":"12861:31:46"},"nodeType":"YulExpressionStatement","src":"12861:31:46"}]},"name":"abi_decode_t_int32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"12798:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"12806:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"12814:5:46","type":""}],"src":"12759:139:46"},{"body":{"nodeType":"YulBlock","src":"12991:282:46","statements":[{"body":{"nodeType":"YulBlock","src":"13040:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"13042:77:46"},"nodeType":"YulFunctionCall","src":"13042:79:46"},"nodeType":"YulExpressionStatement","src":"13042:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"13019:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"13027:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13015:3:46"},"nodeType":"YulFunctionCall","src":"13015:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"13034:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"13011:3:46"},"nodeType":"YulFunctionCall","src":"13011:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"13004:6:46"},"nodeType":"YulFunctionCall","src":"13004:35:46"},"nodeType":"YulIf","src":"13001:122:46"},{"nodeType":"YulVariableDeclaration","src":"13132:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"13152:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"13146:5:46"},"nodeType":"YulFunctionCall","src":"13146:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"13136:6:46","type":""}]},{"nodeType":"YulAssignment","src":"13168:99:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"13240:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"13248:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13236:3:46"},"nodeType":"YulFunctionCall","src":"13236:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"13255:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"13263:3:46"}],"functionName":{"name":"abi_decode_available_length_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"13177:58:46"},"nodeType":"YulFunctionCall","src":"13177:90:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"13168:5:46"}]}]},"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"12969:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"12977:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"12985:5:46","type":""}],"src":"12918:355:46"},{"body":{"nodeType":"YulBlock","src":"13417:1002:46","statements":[{"body":{"nodeType":"YulBlock","src":"13461:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"13463:77:46"},"nodeType":"YulFunctionCall","src":"13463:79:46"},"nodeType":"YulExpressionStatement","src":"13463:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"13438:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"13443:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"13434:3:46"},"nodeType":"YulFunctionCall","src":"13434:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"13455:4:46","type":"","value":"0x80"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"13430:3:46"},"nodeType":"YulFunctionCall","src":"13430:30:46"},"nodeType":"YulIf","src":"13427:117:46"},{"nodeType":"YulAssignment","src":"13553:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"13578:4:46","type":"","value":"0x80"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"13562:15:46"},"nodeType":"YulFunctionCall","src":"13562:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"13553:5:46"}]},{"nodeType":"YulBlock","src":"13593:153:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13631:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"13645:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"13635:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13671:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"13678:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13667:3:46"},"nodeType":"YulFunctionCall","src":"13667:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13710:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"13721:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13706:3:46"},"nodeType":"YulFunctionCall","src":"13706:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"13730:3:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"13685:20:46"},"nodeType":"YulFunctionCall","src":"13685:49:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13660:6:46"},"nodeType":"YulFunctionCall","src":"13660:75:46"},"nodeType":"YulExpressionStatement","src":"13660:75:46"}]},{"nodeType":"YulBlock","src":"13756:156:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13796:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"13810:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"13800:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13837:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"13844:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13833:3:46"},"nodeType":"YulFunctionCall","src":"13833:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13876:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"13887:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13872:3:46"},"nodeType":"YulFunctionCall","src":"13872:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"13896:3:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"13851:20:46"},"nodeType":"YulFunctionCall","src":"13851:49:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13826:6:46"},"nodeType":"YulFunctionCall","src":"13826:75:46"},"nodeType":"YulExpressionStatement","src":"13826:75:46"}]},{"nodeType":"YulBlock","src":"13922:155:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13961:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"13975:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"13965:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14002:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"14009:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13998:3:46"},"nodeType":"YulFunctionCall","src":"13998:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14041:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"14052:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14037:3:46"},"nodeType":"YulFunctionCall","src":"14037:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"14061:3:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"14016:20:46"},"nodeType":"YulFunctionCall","src":"14016:49:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13991:6:46"},"nodeType":"YulFunctionCall","src":"13991:75:46"},"nodeType":"YulExpressionStatement","src":"13991:75:46"}]},{"nodeType":"YulBlock","src":"14087:325:46","statements":[{"nodeType":"YulVariableDeclaration","src":"14127:46:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14158:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14169:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14154:3:46"},"nodeType":"YulFunctionCall","src":"14154:18:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"14141:12:46"},"nodeType":"YulFunctionCall","src":"14141:32:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"14131:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"14220:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"14222:77:46"},"nodeType":"YulFunctionCall","src":"14222:79:46"},"nodeType":"YulExpressionStatement","src":"14222:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14192:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"14200:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"14189:2:46"},"nodeType":"YulFunctionCall","src":"14189:30:46"},"nodeType":"YulIf","src":"14186:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14328:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"14335:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14324:3:46"},"nodeType":"YulFunctionCall","src":"14324:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14376:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"14387:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14372:3:46"},"nodeType":"YulFunctionCall","src":"14372:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"14396:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"14342:29:46"},"nodeType":"YulFunctionCall","src":"14342:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14317:6:46"},"nodeType":"YulFunctionCall","src":"14317:84:46"},"nodeType":"YulExpressionStatement","src":"14317:84:46"}]}]},"name":"abi_decode_t_struct$_BatchResult_$3956_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"13392:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"13403:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"13411:5:46","type":""}],"src":"13333:1086:46"},{"body":{"nodeType":"YulBlock","src":"14532:664:46","statements":[{"body":{"nodeType":"YulBlock","src":"14576:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"14578:77:46"},"nodeType":"YulFunctionCall","src":"14578:79:46"},"nodeType":"YulExpressionStatement","src":"14578:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"14553:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"14558:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"14549:3:46"},"nodeType":"YulFunctionCall","src":"14549:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"14570:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"14545:3:46"},"nodeType":"YulFunctionCall","src":"14545:30:46"},"nodeType":"YulIf","src":"14542:117:46"},{"nodeType":"YulAssignment","src":"14668:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"14693:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"14677:15:46"},"nodeType":"YulFunctionCall","src":"14677:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14668:5:46"}]},{"nodeType":"YulBlock","src":"14708:319:46","statements":[{"nodeType":"YulVariableDeclaration","src":"14743:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14774:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14785:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14770:3:46"},"nodeType":"YulFunctionCall","src":"14770:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"14757:12:46"},"nodeType":"YulFunctionCall","src":"14757:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"14747:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"14835:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"14837:77:46"},"nodeType":"YulFunctionCall","src":"14837:79:46"},"nodeType":"YulExpressionStatement","src":"14837:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14807:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"14815:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"14804:2:46"},"nodeType":"YulFunctionCall","src":"14804:30:46"},"nodeType":"YulIf","src":"14801:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14943:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"14950:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14939:3:46"},"nodeType":"YulFunctionCall","src":"14939:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14991:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"15002:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14987:3:46"},"nodeType":"YulFunctionCall","src":"14987:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"15011:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"14957:29:46"},"nodeType":"YulFunctionCall","src":"14957:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14932:6:46"},"nodeType":"YulFunctionCall","src":"14932:84:46"},"nodeType":"YulExpressionStatement","src":"14932:84:46"}]},{"nodeType":"YulBlock","src":"15037:152:46","statements":[{"nodeType":"YulVariableDeclaration","src":"15074:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"15088:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"15078:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"15115:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"15122:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15111:3:46"},"nodeType":"YulFunctionCall","src":"15111:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15153:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"15164:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15149:3:46"},"nodeType":"YulFunctionCall","src":"15149:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"15173:3:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"15129:19:46"},"nodeType":"YulFunctionCall","src":"15129:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15104:6:46"},"nodeType":"YulFunctionCall","src":"15104:74:46"},"nodeType":"YulExpressionStatement","src":"15104:74:46"}]}]},"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14507:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"14518:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"14526:5:46","type":""}],"src":"14453:743:46"},{"body":{"nodeType":"YulBlock","src":"15320:679:46","statements":[{"body":{"nodeType":"YulBlock","src":"15364:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"15366:77:46"},"nodeType":"YulFunctionCall","src":"15366:79:46"},"nodeType":"YulExpressionStatement","src":"15366:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"15341:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"15346:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"15337:3:46"},"nodeType":"YulFunctionCall","src":"15337:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"15358:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"15333:3:46"},"nodeType":"YulFunctionCall","src":"15333:30:46"},"nodeType":"YulIf","src":"15330:117:46"},{"nodeType":"YulAssignment","src":"15456:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"15481:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"15465:15:46"},"nodeType":"YulFunctionCall","src":"15465:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"15456:5:46"}]},{"nodeType":"YulBlock","src":"15496:323:46","statements":[{"nodeType":"YulVariableDeclaration","src":"15531:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15555:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15566:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15551:3:46"},"nodeType":"YulFunctionCall","src":"15551:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"15545:5:46"},"nodeType":"YulFunctionCall","src":"15545:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"15535:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"15616:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"15618:77:46"},"nodeType":"YulFunctionCall","src":"15618:79:46"},"nodeType":"YulExpressionStatement","src":"15618:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"15588:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15596:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"15585:2:46"},"nodeType":"YulFunctionCall","src":"15585:30:46"},"nodeType":"YulIf","src":"15582:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"15724:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"15731:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15720:3:46"},"nodeType":"YulFunctionCall","src":"15720:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15783:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"15794:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15779:3:46"},"nodeType":"YulFunctionCall","src":"15779:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"15803:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"15738:40:46"},"nodeType":"YulFunctionCall","src":"15738:69:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15713:6:46"},"nodeType":"YulFunctionCall","src":"15713:95:46"},"nodeType":"YulExpressionStatement","src":"15713:95:46"}]},{"nodeType":"YulBlock","src":"15829:163:46","statements":[{"nodeType":"YulVariableDeclaration","src":"15866:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"15880:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"15870:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"15907:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"15914:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15903:3:46"},"nodeType":"YulFunctionCall","src":"15903:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15956:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"15967:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15952:3:46"},"nodeType":"YulFunctionCall","src":"15952:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"15976:3:46"}],"functionName":{"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulIdentifier","src":"15921:30:46"},"nodeType":"YulFunctionCall","src":"15921:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15896:6:46"},"nodeType":"YulFunctionCall","src":"15896:85:46"},"nodeType":"YulExpressionStatement","src":"15896:85:46"}]}]},"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"15295:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"15306:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"15314:5:46","type":""}],"src":"15230:769:46"},{"body":{"nodeType":"YulBlock","src":"16108:1345:46","statements":[{"body":{"nodeType":"YulBlock","src":"16152:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"16154:77:46"},"nodeType":"YulFunctionCall","src":"16154:79:46"},"nodeType":"YulExpressionStatement","src":"16154:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"16129:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"16134:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16125:3:46"},"nodeType":"YulFunctionCall","src":"16125:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"16146:4:46","type":"","value":"0xc0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"16121:3:46"},"nodeType":"YulFunctionCall","src":"16121:30:46"},"nodeType":"YulIf","src":"16118:117:46"},{"nodeType":"YulAssignment","src":"16244:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"16269:4:46","type":"","value":"0xc0"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"16253:15:46"},"nodeType":"YulFunctionCall","src":"16253:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"16244:5:46"}]},{"nodeType":"YulBlock","src":"16284:336:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16321:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16352:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16363:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16348:3:46"},"nodeType":"YulFunctionCall","src":"16348:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"16335:12:46"},"nodeType":"YulFunctionCall","src":"16335:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"16325:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"16413:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"16415:77:46"},"nodeType":"YulFunctionCall","src":"16415:79:46"},"nodeType":"YulExpressionStatement","src":"16415:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"16385:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16393:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"16382:2:46"},"nodeType":"YulFunctionCall","src":"16382:30:46"},"nodeType":"YulIf","src":"16379:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16521:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"16528:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16517:3:46"},"nodeType":"YulFunctionCall","src":"16517:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16584:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"16595:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16580:3:46"},"nodeType":"YulFunctionCall","src":"16580:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"16604:3:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulIdentifier","src":"16535:44:46"},"nodeType":"YulFunctionCall","src":"16535:73:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16510:6:46"},"nodeType":"YulFunctionCall","src":"16510:99:46"},"nodeType":"YulExpressionStatement","src":"16510:99:46"}]},{"nodeType":"YulBlock","src":"16630:156:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16672:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"16686:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"16676:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16713:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"16720:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16709:3:46"},"nodeType":"YulFunctionCall","src":"16709:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16750:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"16761:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16746:3:46"},"nodeType":"YulFunctionCall","src":"16746:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"16770:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"16727:18:46"},"nodeType":"YulFunctionCall","src":"16727:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16702:6:46"},"nodeType":"YulFunctionCall","src":"16702:73:46"},"nodeType":"YulExpressionStatement","src":"16702:73:46"}]},{"nodeType":"YulBlock","src":"16796:154:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16836:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"16850:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"16840:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16877:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"16884:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16873:3:46"},"nodeType":"YulFunctionCall","src":"16873:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16914:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"16925:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16910:3:46"},"nodeType":"YulFunctionCall","src":"16910:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"16934:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"16891:18:46"},"nodeType":"YulFunctionCall","src":"16891:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16866:6:46"},"nodeType":"YulFunctionCall","src":"16866:73:46"},"nodeType":"YulExpressionStatement","src":"16866:73:46"}]},{"nodeType":"YulBlock","src":"16960:166:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17012:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"17026:2:46","type":"","value":"96"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"17016:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17053:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17060:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17049:3:46"},"nodeType":"YulFunctionCall","src":"17049:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17090:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"17101:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17086:3:46"},"nodeType":"YulFunctionCall","src":"17086:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"17110:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"17067:18:46"},"nodeType":"YulFunctionCall","src":"17067:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17042:6:46"},"nodeType":"YulFunctionCall","src":"17042:73:46"},"nodeType":"YulExpressionStatement","src":"17042:73:46"}]},{"nodeType":"YulBlock","src":"17136:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17170:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"17184:3:46","type":"","value":"128"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"17174:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17212:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17219:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17208:3:46"},"nodeType":"YulFunctionCall","src":"17208:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17250:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"17261:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17246:3:46"},"nodeType":"YulFunctionCall","src":"17246:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"17270:3:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"17226:19:46"},"nodeType":"YulFunctionCall","src":"17226:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17201:6:46"},"nodeType":"YulFunctionCall","src":"17201:74:46"},"nodeType":"YulExpressionStatement","src":"17201:74:46"}]},{"nodeType":"YulBlock","src":"17296:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17330:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"17344:3:46","type":"","value":"160"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"17334:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17372:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17379:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17368:3:46"},"nodeType":"YulFunctionCall","src":"17368:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17410:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"17421:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17406:3:46"},"nodeType":"YulFunctionCall","src":"17406:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"17430:3:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"17386:19:46"},"nodeType":"YulFunctionCall","src":"17386:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17361:6:46"},"nodeType":"YulFunctionCall","src":"17361:74:46"},"nodeType":"YulExpressionStatement","src":"17361:74:46"}]}]},"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"16083:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"16094:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"16102:5:46","type":""}],"src":"16031:1422:46"},{"body":{"nodeType":"YulBlock","src":"17573:1404:46","statements":[{"body":{"nodeType":"YulBlock","src":"17617:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"17619:77:46"},"nodeType":"YulFunctionCall","src":"17619:79:46"},"nodeType":"YulExpressionStatement","src":"17619:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"17594:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"17599:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17590:3:46"},"nodeType":"YulFunctionCall","src":"17590:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"17611:4:46","type":"","value":"0xc0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"17586:3:46"},"nodeType":"YulFunctionCall","src":"17586:30:46"},"nodeType":"YulIf","src":"17583:117:46"},{"nodeType":"YulAssignment","src":"17709:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"17734:4:46","type":"","value":"0xc0"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"17718:15:46"},"nodeType":"YulFunctionCall","src":"17718:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"17709:5:46"}]},{"nodeType":"YulBlock","src":"17749:340:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17786:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17810:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"17821:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17806:3:46"},"nodeType":"YulFunctionCall","src":"17806:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"17800:5:46"},"nodeType":"YulFunctionCall","src":"17800:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"17790:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"17871:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"17873:77:46"},"nodeType":"YulFunctionCall","src":"17873:79:46"},"nodeType":"YulExpressionStatement","src":"17873:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"17843:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"17851:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"17840:2:46"},"nodeType":"YulFunctionCall","src":"17840:30:46"},"nodeType":"YulIf","src":"17837:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"17979:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"17986:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17975:3:46"},"nodeType":"YulFunctionCall","src":"17975:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18053:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18064:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18049:3:46"},"nodeType":"YulFunctionCall","src":"18049:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"18073:3:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"17993:55:46"},"nodeType":"YulFunctionCall","src":"17993:84:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17968:6:46"},"nodeType":"YulFunctionCall","src":"17968:110:46"},"nodeType":"YulExpressionStatement","src":"17968:110:46"}]},{"nodeType":"YulBlock","src":"18099:167:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18141:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18155:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18145:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18182:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18189:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18178:3:46"},"nodeType":"YulFunctionCall","src":"18178:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18230:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18241:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18226:3:46"},"nodeType":"YulFunctionCall","src":"18226:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"18250:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"18196:29:46"},"nodeType":"YulFunctionCall","src":"18196:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18171:6:46"},"nodeType":"YulFunctionCall","src":"18171:84:46"},"nodeType":"YulExpressionStatement","src":"18171:84:46"}]},{"nodeType":"YulBlock","src":"18276:165:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18316:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18330:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18320:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18357:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18364:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18353:3:46"},"nodeType":"YulFunctionCall","src":"18353:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18405:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18416:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18401:3:46"},"nodeType":"YulFunctionCall","src":"18401:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"18425:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"18371:29:46"},"nodeType":"YulFunctionCall","src":"18371:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18346:6:46"},"nodeType":"YulFunctionCall","src":"18346:84:46"},"nodeType":"YulExpressionStatement","src":"18346:84:46"}]},{"nodeType":"YulBlock","src":"18451:177:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18503:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18517:2:46","type":"","value":"96"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18507:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18544:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18551:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18540:3:46"},"nodeType":"YulFunctionCall","src":"18540:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18592:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18603:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18588:3:46"},"nodeType":"YulFunctionCall","src":"18588:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"18612:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"18558:29:46"},"nodeType":"YulFunctionCall","src":"18558:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18533:6:46"},"nodeType":"YulFunctionCall","src":"18533:84:46"},"nodeType":"YulExpressionStatement","src":"18533:84:46"}]},{"nodeType":"YulBlock","src":"18638:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18672:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18686:3:46","type":"","value":"128"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18676:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18714:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18721:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18710:3:46"},"nodeType":"YulFunctionCall","src":"18710:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18763:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18774:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18759:3:46"},"nodeType":"YulFunctionCall","src":"18759:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"18783:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"18728:30:46"},"nodeType":"YulFunctionCall","src":"18728:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18703:6:46"},"nodeType":"YulFunctionCall","src":"18703:85:46"},"nodeType":"YulExpressionStatement","src":"18703:85:46"}]},{"nodeType":"YulBlock","src":"18809:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18843:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18857:3:46","type":"","value":"160"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18847:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"18885:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"18892:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18881:3:46"},"nodeType":"YulFunctionCall","src":"18881:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18934:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18945:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18930:3:46"},"nodeType":"YulFunctionCall","src":"18930:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"18954:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"18899:30:46"},"nodeType":"YulFunctionCall","src":"18899:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18874:6:46"},"nodeType":"YulFunctionCall","src":"18874:85:46"},"nodeType":"YulExpressionStatement","src":"18874:85:46"}]}]},"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"17548:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"17559:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"17567:5:46","type":""}],"src":"17485:1492:46"},{"body":{"nodeType":"YulBlock","src":"19090:677:46","statements":[{"body":{"nodeType":"YulBlock","src":"19134:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"19136:77:46"},"nodeType":"YulFunctionCall","src":"19136:79:46"},"nodeType":"YulExpressionStatement","src":"19136:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"19111:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"19116:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19107:3:46"},"nodeType":"YulFunctionCall","src":"19107:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"19128:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"19103:3:46"},"nodeType":"YulFunctionCall","src":"19103:30:46"},"nodeType":"YulIf","src":"19100:117:46"},{"nodeType":"YulAssignment","src":"19226:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"19251:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"19235:15:46"},"nodeType":"YulFunctionCall","src":"19235:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"19226:5:46"}]},{"nodeType":"YulBlock","src":"19266:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19304:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"19318:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"19308:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19344:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"19351:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19340:3:46"},"nodeType":"YulFunctionCall","src":"19340:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19380:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"19391:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19376:3:46"},"nodeType":"YulFunctionCall","src":"19376:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"19400:3:46"}],"functionName":{"name":"abi_decode_t_bool","nodeType":"YulIdentifier","src":"19358:17:46"},"nodeType":"YulFunctionCall","src":"19358:46:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19333:6:46"},"nodeType":"YulFunctionCall","src":"19333:72:46"},"nodeType":"YulExpressionStatement","src":"19333:72:46"}]},{"nodeType":"YulBlock","src":"19426:334:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19462:46:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19493:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19504:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19489:3:46"},"nodeType":"YulFunctionCall","src":"19489:18:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"19476:12:46"},"nodeType":"YulFunctionCall","src":"19476:32:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"19466:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"19555:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"19557:77:46"},"nodeType":"YulFunctionCall","src":"19557:79:46"},"nodeType":"YulExpressionStatement","src":"19557:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"19527:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"19535:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"19524:2:46"},"nodeType":"YulFunctionCall","src":"19524:30:46"},"nodeType":"YulIf","src":"19521:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19663:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"19670:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19659:3:46"},"nodeType":"YulFunctionCall","src":"19659:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19724:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"19735:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19720:3:46"},"nodeType":"YulFunctionCall","src":"19720:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"19744:3:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"19677:42:46"},"nodeType":"YulFunctionCall","src":"19677:71:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19652:6:46"},"nodeType":"YulFunctionCall","src":"19652:97:46"},"nodeType":"YulExpressionStatement","src":"19652:97:46"}]}]},"name":"abi_decode_t_struct$_Result_$4342_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19065:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"19076:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"19084:5:46","type":""}],"src":"19011:756:46"},{"body":{"nodeType":"YulBlock","src":"19891:692:46","statements":[{"body":{"nodeType":"YulBlock","src":"19935:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"19937:77:46"},"nodeType":"YulFunctionCall","src":"19937:79:46"},"nodeType":"YulExpressionStatement","src":"19937:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"19912:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"19917:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19908:3:46"},"nodeType":"YulFunctionCall","src":"19908:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"19929:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"19904:3:46"},"nodeType":"YulFunctionCall","src":"19904:30:46"},"nodeType":"YulIf","src":"19901:117:46"},{"nodeType":"YulAssignment","src":"20027:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"20052:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"20036:15:46"},"nodeType":"YulFunctionCall","src":"20036:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"20027:5:46"}]},{"nodeType":"YulBlock","src":"20067:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20105:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"20119:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"20109:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20145:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20152:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20141:3:46"},"nodeType":"YulFunctionCall","src":"20141:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20192:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"20203:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20188:3:46"},"nodeType":"YulFunctionCall","src":"20188:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"20212:3:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"20159:28:46"},"nodeType":"YulFunctionCall","src":"20159:57:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"20134:6:46"},"nodeType":"YulFunctionCall","src":"20134:83:46"},"nodeType":"YulExpressionStatement","src":"20134:83:46"}]},{"nodeType":"YulBlock","src":"20238:338:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20274:39:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20298:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20309:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20294:3:46"},"nodeType":"YulFunctionCall","src":"20294:18:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20288:5:46"},"nodeType":"YulFunctionCall","src":"20288:25:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"20278:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"20360:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"20362:77:46"},"nodeType":"YulFunctionCall","src":"20362:79:46"},"nodeType":"YulExpressionStatement","src":"20362:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"20332:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"20340:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"20329:2:46"},"nodeType":"YulFunctionCall","src":"20329:30:46"},"nodeType":"YulIf","src":"20326:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20468:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20475:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20464:3:46"},"nodeType":"YulFunctionCall","src":"20464:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20540:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"20551:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20536:3:46"},"nodeType":"YulFunctionCall","src":"20536:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"20560:3:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"20482:53:46"},"nodeType":"YulFunctionCall","src":"20482:82:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"20457:6:46"},"nodeType":"YulFunctionCall","src":"20457:108:46"},"nodeType":"YulExpressionStatement","src":"20457:108:46"}]}]},"name":"abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19866:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"19877:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"19885:5:46","type":""}],"src":"19801:782:46"},{"body":{"nodeType":"YulBlock","src":"20641:87:46","statements":[{"nodeType":"YulAssignment","src":"20651:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"20673:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"20660:12:46"},"nodeType":"YulFunctionCall","src":"20660:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"20651:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20716:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"20689:26:46"},"nodeType":"YulFunctionCall","src":"20689:33:46"},"nodeType":"YulExpressionStatement","src":"20689:33:46"}]},"name":"abi_decode_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"20619:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"20627:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"20635:5:46","type":""}],"src":"20589:139:46"},{"body":{"nodeType":"YulBlock","src":"20785:86:46","statements":[{"nodeType":"YulAssignment","src":"20795:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"20817:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"20804:12:46"},"nodeType":"YulFunctionCall","src":"20804:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"20795:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20859:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"20833:25:46"},"nodeType":"YulFunctionCall","src":"20833:32:46"},"nodeType":"YulExpressionStatement","src":"20833:32:46"}]},"name":"abi_decode_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"20763:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"20771:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"20779:5:46","type":""}],"src":"20734:137:46"},{"body":{"nodeType":"YulBlock","src":"20939:79:46","statements":[{"nodeType":"YulAssignment","src":"20949:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"20964:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20958:5:46"},"nodeType":"YulFunctionCall","src":"20958:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"20949:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21006:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"20980:25:46"},"nodeType":"YulFunctionCall","src":"20980:32:46"},"nodeType":"YulExpressionStatement","src":"20980:32:46"}]},"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"20917:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"20925:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"20933:5:46","type":""}],"src":"20877:141:46"},{"body":{"nodeType":"YulBlock","src":"21075:86:46","statements":[{"nodeType":"YulAssignment","src":"21085:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"21107:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"21094:12:46"},"nodeType":"YulFunctionCall","src":"21094:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"21085:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21149:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"21123:25:46"},"nodeType":"YulFunctionCall","src":"21123:32:46"},"nodeType":"YulExpressionStatement","src":"21123:32:46"}]},"name":"abi_decode_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"21053:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"21061:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"21069:5:46","type":""}],"src":"21024:137:46"},{"body":{"nodeType":"YulBlock","src":"21229:79:46","statements":[{"nodeType":"YulAssignment","src":"21239:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"21254:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"21248:5:46"},"nodeType":"YulFunctionCall","src":"21248:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"21239:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21296:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"21270:25:46"},"nodeType":"YulFunctionCall","src":"21270:32:46"},"nodeType":"YulExpressionStatement","src":"21270:32:46"}]},"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"21207:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"21215:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"21223:5:46","type":""}],"src":"21167:141:46"},{"body":{"nodeType":"YulBlock","src":"21364:85:46","statements":[{"nodeType":"YulAssignment","src":"21374:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"21396:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"21383:12:46"},"nodeType":"YulFunctionCall","src":"21383:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"21374:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21437:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"21412:24:46"},"nodeType":"YulFunctionCall","src":"21412:31:46"},"nodeType":"YulExpressionStatement","src":"21412:31:46"}]},"name":"abi_decode_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"21342:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"21350:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"21358:5:46","type":""}],"src":"21314:135:46"},{"body":{"nodeType":"YulBlock","src":"21516:78:46","statements":[{"nodeType":"YulAssignment","src":"21526:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"21541:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"21535:5:46"},"nodeType":"YulFunctionCall","src":"21535:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"21526:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21582:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"21557:24:46"},"nodeType":"YulFunctionCall","src":"21557:31:46"},"nodeType":"YulExpressionStatement","src":"21557:31:46"}]},"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"21494:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"21502:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"21510:5:46","type":""}],"src":"21455:139:46"},{"body":{"nodeType":"YulBlock","src":"21666:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"21712:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"21714:77:46"},"nodeType":"YulFunctionCall","src":"21714:79:46"},"nodeType":"YulExpressionStatement","src":"21714:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"21687:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"21696:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"21683:3:46"},"nodeType":"YulFunctionCall","src":"21683:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"21708:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"21679:3:46"},"nodeType":"YulFunctionCall","src":"21679:32:46"},"nodeType":"YulIf","src":"21676:119:46"},{"nodeType":"YulBlock","src":"21805:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"21820:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"21834:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"21824:6:46","type":""}]},{"nodeType":"YulAssignment","src":"21849:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21884:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"21895:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21880:3:46"},"nodeType":"YulFunctionCall","src":"21880:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"21904:7:46"}],"functionName":{"name":"abi_decode_t_address","nodeType":"YulIdentifier","src":"21859:20:46"},"nodeType":"YulFunctionCall","src":"21859:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"21849:6:46"}]}]}]},"name":"abi_decode_tuple_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21636:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"21647:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"21659:6:46","type":""}],"src":"21600:329:46"},{"body":{"nodeType":"YulBlock","src":"22026:448:46","statements":[{"body":{"nodeType":"YulBlock","src":"22072:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"22074:77:46"},"nodeType":"YulFunctionCall","src":"22074:79:46"},"nodeType":"YulExpressionStatement","src":"22074:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"22047:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"22056:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"22043:3:46"},"nodeType":"YulFunctionCall","src":"22043:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"22068:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"22039:3:46"},"nodeType":"YulFunctionCall","src":"22039:32:46"},"nodeType":"YulIf","src":"22036:119:46"},{"nodeType":"YulBlock","src":"22165:302:46","statements":[{"nodeType":"YulVariableDeclaration","src":"22180:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22211:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22222:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22207:3:46"},"nodeType":"YulFunctionCall","src":"22207:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"22194:12:46"},"nodeType":"YulFunctionCall","src":"22194:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"22184:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"22272:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"22274:77:46"},"nodeType":"YulFunctionCall","src":"22274:79:46"},"nodeType":"YulExpressionStatement","src":"22274:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"22244:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"22252:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"22241:2:46"},"nodeType":"YulFunctionCall","src":"22241:30:46"},"nodeType":"YulIf","src":"22238:117:46"},{"nodeType":"YulAssignment","src":"22369:88:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22429:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"22440:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22425:3:46"},"nodeType":"YulFunctionCall","src":"22425:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"22449:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"22379:45:46"},"nodeType":"YulFunctionCall","src":"22379:78:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"22369:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21996:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"22007:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"22019:6:46","type":""}],"src":"21935:539:46"},{"body":{"nodeType":"YulBlock","src":"22582:452:46","statements":[{"body":{"nodeType":"YulBlock","src":"22628:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"22630:77:46"},"nodeType":"YulFunctionCall","src":"22630:79:46"},"nodeType":"YulExpressionStatement","src":"22630:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"22603:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"22612:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"22599:3:46"},"nodeType":"YulFunctionCall","src":"22599:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"22624:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"22595:3:46"},"nodeType":"YulFunctionCall","src":"22595:32:46"},"nodeType":"YulIf","src":"22592:119:46"},{"nodeType":"YulBlock","src":"22721:306:46","statements":[{"nodeType":"YulVariableDeclaration","src":"22736:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22760:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22771:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22756:3:46"},"nodeType":"YulFunctionCall","src":"22756:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"22750:5:46"},"nodeType":"YulFunctionCall","src":"22750:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"22740:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"22821:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"22823:77:46"},"nodeType":"YulFunctionCall","src":"22823:79:46"},"nodeType":"YulExpressionStatement","src":"22823:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"22793:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"22801:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"22790:2:46"},"nodeType":"YulFunctionCall","src":"22790:30:46"},"nodeType":"YulIf","src":"22787:117:46"},{"nodeType":"YulAssignment","src":"22918:99:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22989:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"23000:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22985:3:46"},"nodeType":"YulFunctionCall","src":"22985:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"23009:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"22928:56:46"},"nodeType":"YulFunctionCall","src":"22928:89:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"22918:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_address_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"22552:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"22563:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"22575:6:46","type":""}],"src":"22480:554:46"},{"body":{"nodeType":"YulBlock","src":"23141:451:46","statements":[{"body":{"nodeType":"YulBlock","src":"23187:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"23189:77:46"},"nodeType":"YulFunctionCall","src":"23189:79:46"},"nodeType":"YulExpressionStatement","src":"23189:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"23162:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23171:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23158:3:46"},"nodeType":"YulFunctionCall","src":"23158:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"23183:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"23154:3:46"},"nodeType":"YulFunctionCall","src":"23154:32:46"},"nodeType":"YulIf","src":"23151:119:46"},{"nodeType":"YulBlock","src":"23280:305:46","statements":[{"nodeType":"YulVariableDeclaration","src":"23295:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23319:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23330:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23315:3:46"},"nodeType":"YulFunctionCall","src":"23315:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"23309:5:46"},"nodeType":"YulFunctionCall","src":"23309:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"23299:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"23380:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"23382:77:46"},"nodeType":"YulFunctionCall","src":"23382:79:46"},"nodeType":"YulExpressionStatement","src":"23382:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"23352:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"23360:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"23349:2:46"},"nodeType":"YulFunctionCall","src":"23349:30:46"},"nodeType":"YulIf","src":"23346:117:46"},{"nodeType":"YulAssignment","src":"23477:98:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23547:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"23558:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23543:3:46"},"nodeType":"YulFunctionCall","src":"23543:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"23567:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"23487:55:46"},"nodeType":"YulFunctionCall","src":"23487:88:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"23477:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23111:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"23122:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"23134:6:46","type":""}],"src":"23040:552:46"},{"body":{"nodeType":"YulBlock","src":"23698:450:46","statements":[{"body":{"nodeType":"YulBlock","src":"23744:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"23746:77:46"},"nodeType":"YulFunctionCall","src":"23746:79:46"},"nodeType":"YulExpressionStatement","src":"23746:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"23719:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23728:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23715:3:46"},"nodeType":"YulFunctionCall","src":"23715:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"23740:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"23711:3:46"},"nodeType":"YulFunctionCall","src":"23711:32:46"},"nodeType":"YulIf","src":"23708:119:46"},{"nodeType":"YulBlock","src":"23837:304:46","statements":[{"nodeType":"YulVariableDeclaration","src":"23852:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23876:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23887:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23872:3:46"},"nodeType":"YulFunctionCall","src":"23872:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"23866:5:46"},"nodeType":"YulFunctionCall","src":"23866:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"23856:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"23937:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"23939:77:46"},"nodeType":"YulFunctionCall","src":"23939:79:46"},"nodeType":"YulExpressionStatement","src":"23939:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"23909:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"23917:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"23906:2:46"},"nodeType":"YulFunctionCall","src":"23906:30:46"},"nodeType":"YulIf","src":"23903:117:46"},{"nodeType":"YulAssignment","src":"24034:97:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24103:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"24114:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24099:3:46"},"nodeType":"YulFunctionCall","src":"24099:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"24123:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"24044:54:46"},"nodeType":"YulFunctionCall","src":"24044:87:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"24034:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23668:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"23679:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"23691:6:46","type":""}],"src":"23598:550:46"},{"body":{"nodeType":"YulBlock","src":"24266:462:46","statements":[{"body":{"nodeType":"YulBlock","src":"24312:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"24314:77:46"},"nodeType":"YulFunctionCall","src":"24314:79:46"},"nodeType":"YulExpressionStatement","src":"24314:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"24287:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"24296:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"24283:3:46"},"nodeType":"YulFunctionCall","src":"24283:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"24308:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"24279:3:46"},"nodeType":"YulFunctionCall","src":"24279:32:46"},"nodeType":"YulIf","src":"24276:119:46"},{"nodeType":"YulBlock","src":"24405:316:46","statements":[{"nodeType":"YulVariableDeclaration","src":"24420:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24444:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24455:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24440:3:46"},"nodeType":"YulFunctionCall","src":"24440:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"24434:5:46"},"nodeType":"YulFunctionCall","src":"24434:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"24424:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"24505:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"24507:77:46"},"nodeType":"YulFunctionCall","src":"24507:79:46"},"nodeType":"YulExpressionStatement","src":"24507:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"24477:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24485:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"24474:2:46"},"nodeType":"YulFunctionCall","src":"24474:30:46"},"nodeType":"YulIf","src":"24471:117:46"},{"nodeType":"YulAssignment","src":"24602:109:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24683:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"24694:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24679:3:46"},"nodeType":"YulFunctionCall","src":"24679:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"24703:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"24612:66:46"},"nodeType":"YulFunctionCall","src":"24612:99:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"24602:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24236:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"24247:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"24259:6:46","type":""}],"src":"24154:574:46"},{"body":{"nodeType":"YulBlock","src":"24868:602:46","statements":[{"body":{"nodeType":"YulBlock","src":"24914:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"24916:77:46"},"nodeType":"YulFunctionCall","src":"24916:79:46"},"nodeType":"YulExpressionStatement","src":"24916:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"24889:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"24898:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"24885:3:46"},"nodeType":"YulFunctionCall","src":"24885:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"24910:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"24881:3:46"},"nodeType":"YulFunctionCall","src":"24881:32:46"},"nodeType":"YulIf","src":"24878:119:46"},{"nodeType":"YulBlock","src":"25007:331:46","statements":[{"nodeType":"YulVariableDeclaration","src":"25022:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25053:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25064:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25049:3:46"},"nodeType":"YulFunctionCall","src":"25049:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"25036:12:46"},"nodeType":"YulFunctionCall","src":"25036:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"25026:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"25114:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"25116:77:46"},"nodeType":"YulFunctionCall","src":"25116:79:46"},"nodeType":"YulExpressionStatement","src":"25116:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"25086:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"25094:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"25083:2:46"},"nodeType":"YulFunctionCall","src":"25083:30:46"},"nodeType":"YulIf","src":"25080:117:46"},{"nodeType":"YulAssignment","src":"25211:117:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25300:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"25311:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25296:3:46"},"nodeType":"YulFunctionCall","src":"25296:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"25320:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"25221:74:46"},"nodeType":"YulFunctionCall","src":"25221:107:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"25211:6:46"}]}]},{"nodeType":"YulBlock","src":"25348:115:46","statements":[{"nodeType":"YulVariableDeclaration","src":"25363:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"25377:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"25367:6:46","type":""}]},{"nodeType":"YulAssignment","src":"25393:60:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25425:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"25436:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25421:3:46"},"nodeType":"YulFunctionCall","src":"25421:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"25445:7:46"}],"functionName":{"name":"abi_decode_t_bool","nodeType":"YulIdentifier","src":"25403:17:46"},"nodeType":"YulFunctionCall","src":"25403:50:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"25393:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptrt_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24830:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"24841:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"24853:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"24861:6:46","type":""}],"src":"24734:736:46"},{"body":{"nodeType":"YulBlock","src":"25577:451:46","statements":[{"body":{"nodeType":"YulBlock","src":"25623:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"25625:77:46"},"nodeType":"YulFunctionCall","src":"25625:79:46"},"nodeType":"YulExpressionStatement","src":"25625:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"25598:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"25607:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"25594:3:46"},"nodeType":"YulFunctionCall","src":"25594:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"25619:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"25590:3:46"},"nodeType":"YulFunctionCall","src":"25590:32:46"},"nodeType":"YulIf","src":"25587:119:46"},{"nodeType":"YulBlock","src":"25716:305:46","statements":[{"nodeType":"YulVariableDeclaration","src":"25731:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25755:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25766:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25751:3:46"},"nodeType":"YulFunctionCall","src":"25751:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"25745:5:46"},"nodeType":"YulFunctionCall","src":"25745:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"25735:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"25816:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"25818:77:46"},"nodeType":"YulFunctionCall","src":"25818:79:46"},"nodeType":"YulExpressionStatement","src":"25818:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"25788:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"25796:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"25785:2:46"},"nodeType":"YulFunctionCall","src":"25785:30:46"},"nodeType":"YulIf","src":"25782:117:46"},{"nodeType":"YulAssignment","src":"25913:98:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25983:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"25994:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25979:3:46"},"nodeType":"YulFunctionCall","src":"25979:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"26003:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"25923:55:46"},"nodeType":"YulFunctionCall","src":"25923:88:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"25913:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"25547:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"25558:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"25570:6:46","type":""}],"src":"25476:552:46"},{"body":{"nodeType":"YulBlock","src":"26108:271:46","statements":[{"body":{"nodeType":"YulBlock","src":"26154:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"26156:77:46"},"nodeType":"YulFunctionCall","src":"26156:79:46"},"nodeType":"YulExpressionStatement","src":"26156:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"26129:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"26138:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"26125:3:46"},"nodeType":"YulFunctionCall","src":"26125:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"26150:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"26121:3:46"},"nodeType":"YulFunctionCall","src":"26121:32:46"},"nodeType":"YulIf","src":"26118:119:46"},{"nodeType":"YulBlock","src":"26247:125:46","statements":[{"nodeType":"YulVariableDeclaration","src":"26262:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"26276:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"26266:6:46","type":""}]},{"nodeType":"YulAssignment","src":"26291:71:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26334:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"26345:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26330:3:46"},"nodeType":"YulFunctionCall","src":"26330:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"26354:7:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"26301:28:46"},"nodeType":"YulFunctionCall","src":"26301:61:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"26291:6:46"}]}]}]},"name":"abi_decode_tuple_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26078:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"26089:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"26101:6:46","type":""}],"src":"26034:345:46"},{"body":{"nodeType":"YulBlock","src":"26462:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"26508:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"26510:77:46"},"nodeType":"YulFunctionCall","src":"26510:79:46"},"nodeType":"YulExpressionStatement","src":"26510:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"26483:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"26492:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"26479:3:46"},"nodeType":"YulFunctionCall","src":"26479:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"26504:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"26475:3:46"},"nodeType":"YulFunctionCall","src":"26475:32:46"},"nodeType":"YulIf","src":"26472:119:46"},{"nodeType":"YulBlock","src":"26601:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"26616:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"26630:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"26620:6:46","type":""}]},{"nodeType":"YulAssignment","src":"26645:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26691:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"26702:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26687:3:46"},"nodeType":"YulFunctionCall","src":"26687:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"26711:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"26655:31:46"},"nodeType":"YulFunctionCall","src":"26655:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"26645:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26432:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"26443:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"26455:6:46","type":""}],"src":"26385:351:46"},{"body":{"nodeType":"YulBlock","src":"26817:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"26863:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"26865:77:46"},"nodeType":"YulFunctionCall","src":"26865:79:46"},"nodeType":"YulExpressionStatement","src":"26865:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"26838:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"26847:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"26834:3:46"},"nodeType":"YulFunctionCall","src":"26834:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"26859:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"26830:3:46"},"nodeType":"YulFunctionCall","src":"26830:32:46"},"nodeType":"YulIf","src":"26827:119:46"},{"nodeType":"YulBlock","src":"26956:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"26971:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27002:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27013:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26998:3:46"},"nodeType":"YulFunctionCall","src":"26998:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"26985:12:46"},"nodeType":"YulFunctionCall","src":"26985:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"26975:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"27063:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"27065:77:46"},"nodeType":"YulFunctionCall","src":"27065:79:46"},"nodeType":"YulExpressionStatement","src":"27065:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"27035:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27043:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"27032:2:46"},"nodeType":"YulFunctionCall","src":"27032:30:46"},"nodeType":"YulIf","src":"27029:117:46"},{"nodeType":"YulAssignment","src":"27160:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27204:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"27215:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27200:3:46"},"nodeType":"YulFunctionCall","src":"27200:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"27224:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"27170:29:46"},"nodeType":"YulFunctionCall","src":"27170:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"27160:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26787:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"26798:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"26810:6:46","type":""}],"src":"26742:507:46"},{"body":{"nodeType":"YulBlock","src":"27341:436:46","statements":[{"body":{"nodeType":"YulBlock","src":"27387:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"27389:77:46"},"nodeType":"YulFunctionCall","src":"27389:79:46"},"nodeType":"YulExpressionStatement","src":"27389:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"27362:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"27371:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"27358:3:46"},"nodeType":"YulFunctionCall","src":"27358:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"27383:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"27354:3:46"},"nodeType":"YulFunctionCall","src":"27354:32:46"},"nodeType":"YulIf","src":"27351:119:46"},{"nodeType":"YulBlock","src":"27480:290:46","statements":[{"nodeType":"YulVariableDeclaration","src":"27495:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27519:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27530:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27515:3:46"},"nodeType":"YulFunctionCall","src":"27515:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"27509:5:46"},"nodeType":"YulFunctionCall","src":"27509:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"27499:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"27580:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"27582:77:46"},"nodeType":"YulFunctionCall","src":"27582:79:46"},"nodeType":"YulExpressionStatement","src":"27582:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"27552:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27560:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"27549:2:46"},"nodeType":"YulFunctionCall","src":"27549:30:46"},"nodeType":"YulIf","src":"27546:117:46"},{"nodeType":"YulAssignment","src":"27677:83:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27732:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"27743:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27728:3:46"},"nodeType":"YulFunctionCall","src":"27728:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"27752:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"27687:40:46"},"nodeType":"YulFunctionCall","src":"27687:73:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"27677:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"27311:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"27322:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"27334:6:46","type":""}],"src":"27255:522:46"},{"body":{"nodeType":"YulBlock","src":"27872:286:46","statements":[{"body":{"nodeType":"YulBlock","src":"27918:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"27920:77:46"},"nodeType":"YulFunctionCall","src":"27920:79:46"},"nodeType":"YulExpressionStatement","src":"27920:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"27893:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"27902:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"27889:3:46"},"nodeType":"YulFunctionCall","src":"27889:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"27914:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"27885:3:46"},"nodeType":"YulFunctionCall","src":"27885:32:46"},"nodeType":"YulIf","src":"27882:119:46"},{"nodeType":"YulBlock","src":"28011:140:46","statements":[{"nodeType":"YulVariableDeclaration","src":"28026:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"28040:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"28030:6:46","type":""}]},{"nodeType":"YulAssignment","src":"28055:86:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28113:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"28124:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28109:3:46"},"nodeType":"YulFunctionCall","src":"28109:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"28133:7:46"}],"functionName":{"name":"abi_decode_t_contract$_IWitnetRequest_$3829","nodeType":"YulIdentifier","src":"28065:43:46"},"nodeType":"YulFunctionCall","src":"28065:76:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"28055:6:46"}]}]}]},"name":"abi_decode_tuple_t_contract$_IWitnetRequest_$3829","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"27842:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"27853:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"27865:6:46","type":""}],"src":"27783:375:46"},{"body":{"nodeType":"YulBlock","src":"28256:289:46","statements":[{"body":{"nodeType":"YulBlock","src":"28302:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"28304:77:46"},"nodeType":"YulFunctionCall","src":"28304:79:46"},"nodeType":"YulExpressionStatement","src":"28304:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"28277:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"28286:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"28273:3:46"},"nodeType":"YulFunctionCall","src":"28273:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"28298:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"28269:3:46"},"nodeType":"YulFunctionCall","src":"28269:32:46"},"nodeType":"YulIf","src":"28266:119:46"},{"nodeType":"YulBlock","src":"28395:143:46","statements":[{"nodeType":"YulVariableDeclaration","src":"28410:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"28424:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"28414:6:46","type":""}]},{"nodeType":"YulAssignment","src":"28439:89:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28500:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"28511:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28496:3:46"},"nodeType":"YulFunctionCall","src":"28496:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"28520:7:46"}],"functionName":{"name":"abi_decode_t_enum$_ErrorCodes_$4618_fromMemory","nodeType":"YulIdentifier","src":"28449:46:46"},"nodeType":"YulFunctionCall","src":"28449:79:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"28439:6:46"}]}]}]},"name":"abi_decode_tuple_t_enum$_ErrorCodes_$4618_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"28226:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"28237:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"28249:6:46","type":""}],"src":"28164:381:46"},{"body":{"nodeType":"YulBlock","src":"28670:591:46","statements":[{"body":{"nodeType":"YulBlock","src":"28716:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"28718:77:46"},"nodeType":"YulFunctionCall","src":"28718:79:46"},"nodeType":"YulExpressionStatement","src":"28718:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"28691:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"28700:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"28687:3:46"},"nodeType":"YulFunctionCall","src":"28687:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"28712:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"28683:3:46"},"nodeType":"YulFunctionCall","src":"28683:32:46"},"nodeType":"YulIf","src":"28680:119:46"},{"nodeType":"YulBlock","src":"28809:143:46","statements":[{"nodeType":"YulVariableDeclaration","src":"28824:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"28838:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"28828:6:46","type":""}]},{"nodeType":"YulAssignment","src":"28853:89:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28914:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"28925:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28910:3:46"},"nodeType":"YulFunctionCall","src":"28910:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"28934:7:46"}],"functionName":{"name":"abi_decode_t_enum$_ErrorCodes_$4618_fromMemory","nodeType":"YulIdentifier","src":"28863:46:46"},"nodeType":"YulFunctionCall","src":"28863:79:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"28853:6:46"}]}]},{"nodeType":"YulBlock","src":"28962:292:46","statements":[{"nodeType":"YulVariableDeclaration","src":"28977:39:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29001:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"29012:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28997:3:46"},"nodeType":"YulFunctionCall","src":"28997:18:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"28991:5:46"},"nodeType":"YulFunctionCall","src":"28991:25:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"28981:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"29063:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"29065:77:46"},"nodeType":"YulFunctionCall","src":"29065:79:46"},"nodeType":"YulExpressionStatement","src":"29065:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"29035:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"29043:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"29032:2:46"},"nodeType":"YulFunctionCall","src":"29032:30:46"},"nodeType":"YulIf","src":"29029:117:46"},{"nodeType":"YulAssignment","src":"29160:84:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29216:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"29227:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29212:3:46"},"nodeType":"YulFunctionCall","src":"29212:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"29236:7:46"}],"functionName":{"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"29170:41:46"},"nodeType":"YulFunctionCall","src":"29170:74:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"29160:6:46"}]}]}]},"name":"abi_decode_tuple_t_enum$_ErrorCodes_$4618t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"28632:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"28643:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"28655:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"28663:6:46","type":""}],"src":"28551:710:46"},{"body":{"nodeType":"YulBlock","src":"29343:273:46","statements":[{"body":{"nodeType":"YulBlock","src":"29389:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"29391:77:46"},"nodeType":"YulFunctionCall","src":"29391:79:46"},"nodeType":"YulExpressionStatement","src":"29391:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"29364:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"29373:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"29360:3:46"},"nodeType":"YulFunctionCall","src":"29360:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"29385:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"29356:3:46"},"nodeType":"YulFunctionCall","src":"29356:32:46"},"nodeType":"YulIf","src":"29353:119:46"},{"nodeType":"YulBlock","src":"29482:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"29497:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29511:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"29501:6:46","type":""}]},{"nodeType":"YulAssignment","src":"29526:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29571:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"29582:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29567:3:46"},"nodeType":"YulFunctionCall","src":"29567:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"29591:7:46"}],"functionName":{"name":"abi_decode_t_int128_fromMemory","nodeType":"YulIdentifier","src":"29536:30:46"},"nodeType":"YulFunctionCall","src":"29536:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"29526:6:46"}]}]}]},"name":"abi_decode_tuple_t_int128_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"29313:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"29324:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"29336:6:46","type":""}],"src":"29267:349:46"},{"body":{"nodeType":"YulBlock","src":"29697:272:46","statements":[{"body":{"nodeType":"YulBlock","src":"29743:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"29745:77:46"},"nodeType":"YulFunctionCall","src":"29745:79:46"},"nodeType":"YulExpressionStatement","src":"29745:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"29718:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"29727:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"29714:3:46"},"nodeType":"YulFunctionCall","src":"29714:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"29739:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"29710:3:46"},"nodeType":"YulFunctionCall","src":"29710:32:46"},"nodeType":"YulIf","src":"29707:119:46"},{"nodeType":"YulBlock","src":"29836:126:46","statements":[{"nodeType":"YulVariableDeclaration","src":"29851:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"29865:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"29855:6:46","type":""}]},{"nodeType":"YulAssignment","src":"29880:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29924:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"29935:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29920:3:46"},"nodeType":"YulFunctionCall","src":"29920:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"29944:7:46"}],"functionName":{"name":"abi_decode_t_int32_fromMemory","nodeType":"YulIdentifier","src":"29890:29:46"},"nodeType":"YulFunctionCall","src":"29890:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"29880:6:46"}]}]}]},"name":"abi_decode_tuple_t_int32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"29667:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"29678:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"29690:6:46","type":""}],"src":"29622:347:46"},{"body":{"nodeType":"YulBlock","src":"30062:437:46","statements":[{"body":{"nodeType":"YulBlock","src":"30108:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"30110:77:46"},"nodeType":"YulFunctionCall","src":"30110:79:46"},"nodeType":"YulExpressionStatement","src":"30110:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"30083:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"30092:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"30079:3:46"},"nodeType":"YulFunctionCall","src":"30079:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"30104:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"30075:3:46"},"nodeType":"YulFunctionCall","src":"30075:32:46"},"nodeType":"YulIf","src":"30072:119:46"},{"nodeType":"YulBlock","src":"30201:291:46","statements":[{"nodeType":"YulVariableDeclaration","src":"30216:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30240:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"30251:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30236:3:46"},"nodeType":"YulFunctionCall","src":"30236:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"30230:5:46"},"nodeType":"YulFunctionCall","src":"30230:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"30220:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"30301:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"30303:77:46"},"nodeType":"YulFunctionCall","src":"30303:79:46"},"nodeType":"YulExpressionStatement","src":"30303:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"30273:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"30281:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"30270:2:46"},"nodeType":"YulFunctionCall","src":"30270:30:46"},"nodeType":"YulIf","src":"30267:117:46"},{"nodeType":"YulAssignment","src":"30398:84:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30454:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"30465:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30450:3:46"},"nodeType":"YulFunctionCall","src":"30450:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"30474:7:46"}],"functionName":{"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"30408:41:46"},"nodeType":"YulFunctionCall","src":"30408:74:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"30398:6:46"}]}]}]},"name":"abi_decode_tuple_t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"30032:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"30043:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"30055:6:46","type":""}],"src":"29975:524:46"},{"body":{"nodeType":"YulBlock","src":"30593:445:46","statements":[{"body":{"nodeType":"YulBlock","src":"30639:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"30641:77:46"},"nodeType":"YulFunctionCall","src":"30641:79:46"},"nodeType":"YulExpressionStatement","src":"30641:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"30614:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"30623:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"30610:3:46"},"nodeType":"YulFunctionCall","src":"30610:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"30635:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"30606:3:46"},"nodeType":"YulFunctionCall","src":"30606:32:46"},"nodeType":"YulIf","src":"30603:119:46"},{"nodeType":"YulBlock","src":"30732:299:46","statements":[{"nodeType":"YulVariableDeclaration","src":"30747:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30778:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"30789:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30774:3:46"},"nodeType":"YulFunctionCall","src":"30774:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"30761:12:46"},"nodeType":"YulFunctionCall","src":"30761:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"30751:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"30839:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"30841:77:46"},"nodeType":"YulFunctionCall","src":"30841:79:46"},"nodeType":"YulExpressionStatement","src":"30841:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"30811:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"30819:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"30808:2:46"},"nodeType":"YulFunctionCall","src":"30808:30:46"},"nodeType":"YulIf","src":"30805:117:46"},{"nodeType":"YulAssignment","src":"30936:85:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30993:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"31004:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30989:3:46"},"nodeType":"YulFunctionCall","src":"30989:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"31013:7:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"30946:42:46"},"nodeType":"YulFunctionCall","src":"30946:75:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"30936:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"30563:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"30574:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"30586:6:46","type":""}],"src":"30505:533:46"},{"body":{"nodeType":"YulBlock","src":"31134:447:46","statements":[{"body":{"nodeType":"YulBlock","src":"31180:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"31182:77:46"},"nodeType":"YulFunctionCall","src":"31182:79:46"},"nodeType":"YulExpressionStatement","src":"31182:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"31155:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"31164:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"31151:3:46"},"nodeType":"YulFunctionCall","src":"31151:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"31176:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"31147:3:46"},"nodeType":"YulFunctionCall","src":"31147:32:46"},"nodeType":"YulIf","src":"31144:119:46"},{"nodeType":"YulBlock","src":"31273:301:46","statements":[{"nodeType":"YulVariableDeclaration","src":"31288:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31319:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31330:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31315:3:46"},"nodeType":"YulFunctionCall","src":"31315:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"31302:12:46"},"nodeType":"YulFunctionCall","src":"31302:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"31292:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"31380:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"31382:77:46"},"nodeType":"YulFunctionCall","src":"31382:79:46"},"nodeType":"YulExpressionStatement","src":"31382:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"31352:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"31360:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"31349:2:46"},"nodeType":"YulFunctionCall","src":"31349:30:46"},"nodeType":"YulIf","src":"31346:117:46"},{"nodeType":"YulAssignment","src":"31477:87:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31536:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"31547:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31532:3:46"},"nodeType":"YulFunctionCall","src":"31532:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"31556:7:46"}],"functionName":{"name":"abi_decode_t_struct$_Result_$4342_memory_ptr","nodeType":"YulIdentifier","src":"31487:44:46"},"nodeType":"YulFunctionCall","src":"31487:77:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"31477:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"31104:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"31115:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"31127:6:46","type":""}],"src":"31044:537:46"},{"body":{"nodeType":"YulBlock","src":"31688:451:46","statements":[{"body":{"nodeType":"YulBlock","src":"31734:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"31736:77:46"},"nodeType":"YulFunctionCall","src":"31736:79:46"},"nodeType":"YulExpressionStatement","src":"31736:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"31709:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"31718:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"31705:3:46"},"nodeType":"YulFunctionCall","src":"31705:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"31730:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"31701:3:46"},"nodeType":"YulFunctionCall","src":"31701:32:46"},"nodeType":"YulIf","src":"31698:119:46"},{"nodeType":"YulBlock","src":"31827:305:46","statements":[{"nodeType":"YulVariableDeclaration","src":"31842:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31866:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31877:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31862:3:46"},"nodeType":"YulFunctionCall","src":"31862:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"31856:5:46"},"nodeType":"YulFunctionCall","src":"31856:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"31846:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"31927:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"31929:77:46"},"nodeType":"YulFunctionCall","src":"31929:79:46"},"nodeType":"YulExpressionStatement","src":"31929:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"31899:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"31907:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"31896:2:46"},"nodeType":"YulFunctionCall","src":"31896:30:46"},"nodeType":"YulIf","src":"31893:117:46"},{"nodeType":"YulAssignment","src":"32024:98:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32094:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"32105:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32090:3:46"},"nodeType":"YulFunctionCall","src":"32090:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"32114:7:46"}],"functionName":{"name":"abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"32034:55:46"},"nodeType":"YulFunctionCall","src":"32034:88:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"32024:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"31658:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"31669:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"31681:6:46","type":""}],"src":"31587:552:46"},{"body":{"nodeType":"YulBlock","src":"32211:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"32257:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"32259:77:46"},"nodeType":"YulFunctionCall","src":"32259:79:46"},"nodeType":"YulExpressionStatement","src":"32259:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"32232:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"32241:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"32228:3:46"},"nodeType":"YulFunctionCall","src":"32228:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"32253:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"32224:3:46"},"nodeType":"YulFunctionCall","src":"32224:32:46"},"nodeType":"YulIf","src":"32221:119:46"},{"nodeType":"YulBlock","src":"32350:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"32365:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"32379:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"32369:6:46","type":""}]},{"nodeType":"YulAssignment","src":"32394:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32429:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"32440:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32425:3:46"},"nodeType":"YulFunctionCall","src":"32425:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"32449:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"32404:20:46"},"nodeType":"YulFunctionCall","src":"32404:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"32394:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"32181:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"32192:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"32204:6:46","type":""}],"src":"32145:329:46"},{"body":{"nodeType":"YulBlock","src":"32599:698:46","statements":[{"body":{"nodeType":"YulBlock","src":"32645:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"32647:77:46"},"nodeType":"YulFunctionCall","src":"32647:79:46"},"nodeType":"YulExpressionStatement","src":"32647:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"32620:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"32629:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"32616:3:46"},"nodeType":"YulFunctionCall","src":"32616:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"32641:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"32612:3:46"},"nodeType":"YulFunctionCall","src":"32612:32:46"},"nodeType":"YulIf","src":"32609:119:46"},{"nodeType":"YulBlock","src":"32738:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"32753:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"32767:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"32757:6:46","type":""}]},{"nodeType":"YulAssignment","src":"32782:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32817:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"32828:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32813:3:46"},"nodeType":"YulFunctionCall","src":"32813:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"32837:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"32792:20:46"},"nodeType":"YulFunctionCall","src":"32792:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"32782:6:46"}]}]},{"nodeType":"YulBlock","src":"32865:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"32880:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"32894:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"32884:6:46","type":""}]},{"nodeType":"YulAssignment","src":"32910:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32945:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"32956:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32941:3:46"},"nodeType":"YulFunctionCall","src":"32941:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"32965:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"32920:20:46"},"nodeType":"YulFunctionCall","src":"32920:53:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"32910:6:46"}]}]},{"nodeType":"YulBlock","src":"32993:297:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33008:46:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33039:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"33050:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33035:3:46"},"nodeType":"YulFunctionCall","src":"33035:18:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"33022:12:46"},"nodeType":"YulFunctionCall","src":"33022:32:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"33012:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"33101:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"33103:77:46"},"nodeType":"YulFunctionCall","src":"33103:79:46"},"nodeType":"YulExpressionStatement","src":"33103:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"33073:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"33081:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"33070:2:46"},"nodeType":"YulFunctionCall","src":"33070:30:46"},"nodeType":"YulIf","src":"33067:117:46"},{"nodeType":"YulAssignment","src":"33198:82:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33252:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"33263:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33248:3:46"},"nodeType":"YulFunctionCall","src":"33248:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"33272:7:46"}],"functionName":{"name":"abi_decode_t_bytes_calldata_ptr","nodeType":"YulIdentifier","src":"33216:31:46"},"nodeType":"YulFunctionCall","src":"33216:64:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"33198:6:46"},{"name":"value3","nodeType":"YulIdentifier","src":"33206:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256t_bytes32t_bytes_calldata_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"32545:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"32556:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"32568:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"32576:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"32584:6:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"32592:6:46","type":""}],"src":"32480:817:46"},{"body":{"nodeType":"YulBlock","src":"33439:827:46","statements":[{"body":{"nodeType":"YulBlock","src":"33486:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"33488:77:46"},"nodeType":"YulFunctionCall","src":"33488:79:46"},"nodeType":"YulExpressionStatement","src":"33488:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"33460:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"33469:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"33456:3:46"},"nodeType":"YulFunctionCall","src":"33456:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"33481:3:46","type":"","value":"128"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"33452:3:46"},"nodeType":"YulFunctionCall","src":"33452:33:46"},"nodeType":"YulIf","src":"33449:120:46"},{"nodeType":"YulBlock","src":"33579:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33594:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"33608:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"33598:6:46","type":""}]},{"nodeType":"YulAssignment","src":"33623:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33658:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"33669:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33654:3:46"},"nodeType":"YulFunctionCall","src":"33654:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"33678:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"33633:20:46"},"nodeType":"YulFunctionCall","src":"33633:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"33623:6:46"}]}]},{"nodeType":"YulBlock","src":"33706:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33721:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"33735:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"33725:6:46","type":""}]},{"nodeType":"YulAssignment","src":"33751:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33786:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"33797:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33782:3:46"},"nodeType":"YulFunctionCall","src":"33782:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"33806:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"33761:20:46"},"nodeType":"YulFunctionCall","src":"33761:53:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"33751:6:46"}]}]},{"nodeType":"YulBlock","src":"33834:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33849:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"33863:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"33853:6:46","type":""}]},{"nodeType":"YulAssignment","src":"33879:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33914:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"33925:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33910:3:46"},"nodeType":"YulFunctionCall","src":"33910:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"33934:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"33889:20:46"},"nodeType":"YulFunctionCall","src":"33889:53:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"33879:6:46"}]}]},{"nodeType":"YulBlock","src":"33962:297:46","statements":[{"nodeType":"YulVariableDeclaration","src":"33977:46:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"34008:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"34019:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34004:3:46"},"nodeType":"YulFunctionCall","src":"34004:18:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"33991:12:46"},"nodeType":"YulFunctionCall","src":"33991:32:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"33981:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"34070:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"34072:77:46"},"nodeType":"YulFunctionCall","src":"34072:79:46"},"nodeType":"YulExpressionStatement","src":"34072:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"34042:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"34050:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"34039:2:46"},"nodeType":"YulFunctionCall","src":"34039:30:46"},"nodeType":"YulIf","src":"34036:117:46"},{"nodeType":"YulAssignment","src":"34167:82:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"34221:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"34232:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34217:3:46"},"nodeType":"YulFunctionCall","src":"34217:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"34241:7:46"}],"functionName":{"name":"abi_decode_t_bytes_calldata_ptr","nodeType":"YulIdentifier","src":"34185:31:46"},"nodeType":"YulFunctionCall","src":"34185:64:46"},"variableNames":[{"name":"value3","nodeType":"YulIdentifier","src":"34167:6:46"},{"name":"value4","nodeType":"YulIdentifier","src":"34175:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256t_uint256t_bytes32t_bytes_calldata_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"33377:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"33388:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"33400:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"33408:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"33416:6:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"33424:6:46","type":""},{"name":"value4","nodeType":"YulTypedName","src":"33432:6:46","type":""}],"src":"33303:963:46"},{"body":{"nodeType":"YulBlock","src":"34348:273:46","statements":[{"body":{"nodeType":"YulBlock","src":"34394:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"34396:77:46"},"nodeType":"YulFunctionCall","src":"34396:79:46"},"nodeType":"YulExpressionStatement","src":"34396:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"34369:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"34378:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"34365:3:46"},"nodeType":"YulFunctionCall","src":"34365:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"34390:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"34361:3:46"},"nodeType":"YulFunctionCall","src":"34361:32:46"},"nodeType":"YulIf","src":"34358:119:46"},{"nodeType":"YulBlock","src":"34487:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"34502:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"34516:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"34506:6:46","type":""}]},{"nodeType":"YulAssignment","src":"34531:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"34576:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"34587:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34572:3:46"},"nodeType":"YulFunctionCall","src":"34572:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"34596:7:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"34541:30:46"},"nodeType":"YulFunctionCall","src":"34541:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"34531:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint64_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"34318:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"34329:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"34341:6:46","type":""}],"src":"34272:349:46"},{"body":{"nodeType":"YulBlock","src":"34707:99:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"34751:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"34759:3:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address","nodeType":"YulIdentifier","src":"34717:33:46"},"nodeType":"YulFunctionCall","src":"34717:46:46"},"nodeType":"YulExpressionStatement","src":"34717:46:46"},{"nodeType":"YulAssignment","src":"34772:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34790:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34795:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34786:3:46"},"nodeType":"YulFunctionCall","src":"34786:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"34772:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_address_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"34680:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"34688:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"34696:10:46","type":""}],"src":"34627:179:46"},{"body":{"nodeType":"YulBlock","src":"34890:97:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"34932:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"34940:3:46"}],"functionName":{"name":"abi_encode_t_int128_to_t_int128","nodeType":"YulIdentifier","src":"34900:31:46"},"nodeType":"YulFunctionCall","src":"34900:44:46"},"nodeType":"YulExpressionStatement","src":"34900:44:46"},{"nodeType":"YulAssignment","src":"34953:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34971:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34976:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34967:3:46"},"nodeType":"YulFunctionCall","src":"34967:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"34953:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_int128_to_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"34863:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"34871:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"34879:10:46","type":""}],"src":"34812:175:46"},{"body":{"nodeType":"YulBlock","src":"35069:95:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"35109:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"35117:3:46"}],"functionName":{"name":"abi_encode_t_int32_to_t_int32","nodeType":"YulIdentifier","src":"35079:29:46"},"nodeType":"YulFunctionCall","src":"35079:42:46"},"nodeType":"YulExpressionStatement","src":"35079:42:46"},{"nodeType":"YulAssignment","src":"35130:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35148:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35153:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35144:3:46"},"nodeType":"YulFunctionCall","src":"35144:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"35130:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_int32_to_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"35042:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"35050:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"35058:10:46","type":""}],"src":"34993:171:46"},{"body":{"nodeType":"YulBlock","src":"35270:96:46","statements":[{"nodeType":"YulAssignment","src":"35280:80:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"35348:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"35356:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr","nodeType":"YulIdentifier","src":"35294:53:46"},"nodeType":"YulFunctionCall","src":"35294:66:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"35280:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"35243:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"35251:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"35259:10:46","type":""}],"src":"35170:196:46"},{"body":{"nodeType":"YulBlock","src":"35450:97:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"35492:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"35500:3:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"35460:31:46"},"nodeType":"YulFunctionCall","src":"35460:44:46"},"nodeType":"YulExpressionStatement","src":"35460:44:46"},{"nodeType":"YulAssignment","src":"35513:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35531:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35536:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35527:3:46"},"nodeType":"YulFunctionCall","src":"35527:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"35513:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_uint64_to_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"35423:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"35431:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"35439:10:46","type":""}],"src":"35372:175:46"},{"body":{"nodeType":"YulBlock","src":"35608:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35625:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35648:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"35630:17:46"},"nodeType":"YulFunctionCall","src":"35630:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"35618:6:46"},"nodeType":"YulFunctionCall","src":"35618:37:46"},"nodeType":"YulExpressionStatement","src":"35618:37:46"}]},"name":"abi_encode_t_address_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35596:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"35603:3:46","type":""}],"src":"35553:108:46"},{"body":{"nodeType":"YulBlock","src":"35732:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35749:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35772:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"35754:17:46"},"nodeType":"YulFunctionCall","src":"35754:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"35742:6:46"},"nodeType":"YulFunctionCall","src":"35742:37:46"},"nodeType":"YulExpressionStatement","src":"35742:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35720:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"35727:3:46","type":""}],"src":"35667:118:46"},{"body":{"nodeType":"YulBlock","src":"35945:608:46","statements":[{"nodeType":"YulVariableDeclaration","src":"35955:68:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"36017:5:46"}],"functionName":{"name":"array_length_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"35969:47:46"},"nodeType":"YulFunctionCall","src":"35969:54:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"35959:6:46","type":""}]},{"nodeType":"YulAssignment","src":"36032:93:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36113:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"36118:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"36039:73:46"},"nodeType":"YulFunctionCall","src":"36039:86:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"36032:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"36134:71:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"36199:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"36149:49:46"},"nodeType":"YulFunctionCall","src":"36149:56:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"36138:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"36214:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"36228:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"36218:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"36304:224:46","statements":[{"nodeType":"YulVariableDeclaration","src":"36318:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"36345:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"36339:5:46"},"nodeType":"YulFunctionCall","src":"36339:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"36322:13:46","type":""}]},{"nodeType":"YulAssignment","src":"36365:70:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"36416:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"36431:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_address_to_t_address","nodeType":"YulIdentifier","src":"36372:43:46"},"nodeType":"YulFunctionCall","src":"36372:63:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"36365:3:46"}]},{"nodeType":"YulAssignment","src":"36448:70:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"36511:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"36458:52:46"},"nodeType":"YulFunctionCall","src":"36458:60:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"36448:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"36266:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"36269:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"36263:2:46"},"nodeType":"YulFunctionCall","src":"36263:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"36277:18:46","statements":[{"nodeType":"YulAssignment","src":"36279:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"36288:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"36291:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36284:3:46"},"nodeType":"YulFunctionCall","src":"36284:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"36279:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"36248:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"36250:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"36259:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"36254:1:46","type":""}]}]},"src":"36244:284:46"},{"nodeType":"YulAssignment","src":"36537:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"36544:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"36537:3:46"}]}]},"name":"abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35924:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"35931:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"35940:3:46","type":""}],"src":"35821:732:46"},{"body":{"nodeType":"YulBlock","src":"36709:602:46","statements":[{"nodeType":"YulVariableDeclaration","src":"36719:67:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"36780:5:46"}],"functionName":{"name":"array_length_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"36733:46:46"},"nodeType":"YulFunctionCall","src":"36733:53:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"36723:6:46","type":""}]},{"nodeType":"YulAssignment","src":"36795:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36875:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"36880:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"36802:72:46"},"nodeType":"YulFunctionCall","src":"36802:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"36795:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"36896:70:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"36960:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"36911:48:46"},"nodeType":"YulFunctionCall","src":"36911:55:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"36900:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"36975:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"36989:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"36979:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"37065:221:46","statements":[{"nodeType":"YulVariableDeclaration","src":"37079:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"37106:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"37100:5:46"},"nodeType":"YulFunctionCall","src":"37100:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"37083:13:46","type":""}]},{"nodeType":"YulAssignment","src":"37126:68:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"37175:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"37190:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_int128_to_t_int128","nodeType":"YulIdentifier","src":"37133:41:46"},"nodeType":"YulFunctionCall","src":"37133:61:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"37126:3:46"}]},{"nodeType":"YulAssignment","src":"37207:69:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"37269:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"37217:51:46"},"nodeType":"YulFunctionCall","src":"37217:59:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"37207:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"37027:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"37030:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"37024:2:46"},"nodeType":"YulFunctionCall","src":"37024:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"37038:18:46","statements":[{"nodeType":"YulAssignment","src":"37040:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"37049:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"37052:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37045:3:46"},"nodeType":"YulFunctionCall","src":"37045:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"37040:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"37009:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"37011:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"37020:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"37015:1:46","type":""}]}]},"src":"37005:281:46"},{"nodeType":"YulAssignment","src":"37295:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"37302:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"37295:3:46"}]}]},"name":"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"36688:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"36695:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"36704:3:46","type":""}],"src":"36587:724:46"},{"body":{"nodeType":"YulBlock","src":"37463:596:46","statements":[{"nodeType":"YulVariableDeclaration","src":"37473:66:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37533:5:46"}],"functionName":{"name":"array_length_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"37487:45:46"},"nodeType":"YulFunctionCall","src":"37487:52:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"37477:6:46","type":""}]},{"nodeType":"YulAssignment","src":"37548:91:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37627:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"37632:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"37555:71:46"},"nodeType":"YulFunctionCall","src":"37555:84:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"37548:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"37648:69:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"37711:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"37663:47:46"},"nodeType":"YulFunctionCall","src":"37663:54:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"37652:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"37726:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"37740:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"37730:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"37816:218:46","statements":[{"nodeType":"YulVariableDeclaration","src":"37830:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"37857:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"37851:5:46"},"nodeType":"YulFunctionCall","src":"37851:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"37834:13:46","type":""}]},{"nodeType":"YulAssignment","src":"37877:66:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"37924:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"37939:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_int32_to_t_int32","nodeType":"YulIdentifier","src":"37884:39:46"},"nodeType":"YulFunctionCall","src":"37884:59:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"37877:3:46"}]},{"nodeType":"YulAssignment","src":"37956:68:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"38017:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"37966:50:46"},"nodeType":"YulFunctionCall","src":"37966:58:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"37956:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"37778:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"37781:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"37775:2:46"},"nodeType":"YulFunctionCall","src":"37775:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"37789:18:46","statements":[{"nodeType":"YulAssignment","src":"37791:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"37800:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"37803:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37796:3:46"},"nodeType":"YulFunctionCall","src":"37796:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"37791:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"37760:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"37762:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"37771:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"37766:1:46","type":""}]}]},"src":"37756:278:46"},{"nodeType":"YulAssignment","src":"38043:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"38050:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"38043:3:46"}]}]},"name":"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"37442:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"37449:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"37458:3:46","type":""}],"src":"37343:716:46"},{"body":{"nodeType":"YulBlock","src":"38237:847:46","statements":[{"nodeType":"YulVariableDeclaration","src":"38247:78:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38319:5:46"}],"functionName":{"name":"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"38261:57:46"},"nodeType":"YulFunctionCall","src":"38261:64:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"38251:6:46","type":""}]},{"nodeType":"YulAssignment","src":"38334:103:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38425:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"38430:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"38341:83:46"},"nodeType":"YulFunctionCall","src":"38341:96:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"38334:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"38446:20:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"38463:3:46"},"variables":[{"name":"headStart","nodeType":"YulTypedName","src":"38450:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"38475:39:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38491:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"38500:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"38508:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"38496:3:46"},"nodeType":"YulFunctionCall","src":"38496:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38487:3:46"},"nodeType":"YulFunctionCall","src":"38487:27:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"38479:4:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"38523:81:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"38598:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"38538:59:46"},"nodeType":"YulFunctionCall","src":"38538:66:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"38527:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"38613:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"38627:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"38617:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"38703:336:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38724:3:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"38733:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"38739:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"38729:3:46"},"nodeType":"YulFunctionCall","src":"38729:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"38717:6:46"},"nodeType":"YulFunctionCall","src":"38717:33:46"},"nodeType":"YulExpressionStatement","src":"38717:33:46"},{"nodeType":"YulVariableDeclaration","src":"38763:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"38790:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"38784:5:46"},"nodeType":"YulFunctionCall","src":"38784:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"38767:13:46","type":""}]},{"nodeType":"YulAssignment","src":"38810:92:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"38882:13:46"},{"name":"tail","nodeType":"YulIdentifier","src":"38897:4:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr","nodeType":"YulIdentifier","src":"38818:63:46"},"nodeType":"YulFunctionCall","src":"38818:84:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"38810:4:46"}]},{"nodeType":"YulAssignment","src":"38915:80:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"38988:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"38925:62:46"},"nodeType":"YulFunctionCall","src":"38925:70:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"38915:6:46"}]},{"nodeType":"YulAssignment","src":"39008:21:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39019:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"39024:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"39015:3:46"},"nodeType":"YulFunctionCall","src":"39015:14:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39008:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"38665:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"38668:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"38662:2:46"},"nodeType":"YulFunctionCall","src":"38662:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"38676:18:46","statements":[{"nodeType":"YulAssignment","src":"38678:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"38687:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"38690:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38683:3:46"},"nodeType":"YulFunctionCall","src":"38683:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"38678:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"38647:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"38649:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"38658:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"38653:1:46","type":""}]}]},"src":"38643:396:46"},{"nodeType":"YulAssignment","src":"39048:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"39055:4:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39048:3:46"}]},{"nodeType":"YulAssignment","src":"39068:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"39075:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"39068:3:46"}]}]},"name":"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"38216:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"38223:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"38232:3:46","type":""}],"src":"38093:991:46"},{"body":{"nodeType":"YulBlock","src":"39240:602:46","statements":[{"nodeType":"YulVariableDeclaration","src":"39250:67:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"39311:5:46"}],"functionName":{"name":"array_length_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"39264:46:46"},"nodeType":"YulFunctionCall","src":"39264:53:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"39254:6:46","type":""}]},{"nodeType":"YulAssignment","src":"39326:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39406:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"39411:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"39333:72:46"},"nodeType":"YulFunctionCall","src":"39333:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39326:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"39427:70:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"39491:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"39442:48:46"},"nodeType":"YulFunctionCall","src":"39442:55:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"39431:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"39506:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"39520:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"39510:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"39596:221:46","statements":[{"nodeType":"YulVariableDeclaration","src":"39610:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"39637:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"39631:5:46"},"nodeType":"YulFunctionCall","src":"39631:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"39614:13:46","type":""}]},{"nodeType":"YulAssignment","src":"39657:68:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"39706:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"39721:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"39664:41:46"},"nodeType":"YulFunctionCall","src":"39664:61:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39657:3:46"}]},{"nodeType":"YulAssignment","src":"39738:69:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"39800:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"39748:51:46"},"nodeType":"YulFunctionCall","src":"39748:59:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"39738:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"39558:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"39561:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"39555:2:46"},"nodeType":"YulFunctionCall","src":"39555:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"39569:18:46","statements":[{"nodeType":"YulAssignment","src":"39571:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"39580:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"39583:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"39576:3:46"},"nodeType":"YulFunctionCall","src":"39576:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"39571:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"39540:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"39542:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"39551:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"39546:1:46","type":""}]}]},"src":"39536:281:46"},{"nodeType":"YulAssignment","src":"39826:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"39833:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"39826:3:46"}]}]},"name":"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"39219:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"39226:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"39235:3:46","type":""}],"src":"39118:724:46"},{"body":{"nodeType":"YulBlock","src":"39897:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39914:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"39934:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"39919:14:46"},"nodeType":"YulFunctionCall","src":"39919:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"39907:6:46"},"nodeType":"YulFunctionCall","src":"39907:34:46"},"nodeType":"YulExpressionStatement","src":"39907:34:46"}]},"name":"abi_encode_t_bool_to_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"39885:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"39892:3:46","type":""}],"src":"39848:99:46"},{"body":{"nodeType":"YulBlock","src":"40012:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40029:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40049:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"40034:14:46"},"nodeType":"YulFunctionCall","src":"40034:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"40022:6:46"},"nodeType":"YulFunctionCall","src":"40022:34:46"},"nodeType":"YulExpressionStatement","src":"40022:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"40000:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"40007:3:46","type":""}],"src":"39953:109:46"},{"body":{"nodeType":"YulBlock","src":"40125:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40142:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40162:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"40147:14:46"},"nodeType":"YulFunctionCall","src":"40147:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"40135:6:46"},"nodeType":"YulFunctionCall","src":"40135:34:46"},"nodeType":"YulExpressionStatement","src":"40135:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"40113:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"40120:3:46","type":""}],"src":"40068:107:46"},{"body":{"nodeType":"YulBlock","src":"40236:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40253:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40276:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"40258:17:46"},"nodeType":"YulFunctionCall","src":"40258:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"40246:6:46"},"nodeType":"YulFunctionCall","src":"40246:37:46"},"nodeType":"YulExpressionStatement","src":"40246:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"40224:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"40231:3:46","type":""}],"src":"40181:108:46"},{"body":{"nodeType":"YulBlock","src":"40360:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40377:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40400:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"40382:17:46"},"nodeType":"YulFunctionCall","src":"40382:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"40370:6:46"},"nodeType":"YulFunctionCall","src":"40370:37:46"},"nodeType":"YulExpressionStatement","src":"40370:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"40348:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"40355:3:46","type":""}],"src":"40295:118:46"},{"body":{"nodeType":"YulBlock","src":"40499:260:46","statements":[{"nodeType":"YulVariableDeclaration","src":"40509:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40555:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"40523:31:46"},"nodeType":"YulFunctionCall","src":"40523:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"40513:6:46","type":""}]},{"nodeType":"YulAssignment","src":"40570:67:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40625:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"40630:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"40577:47:46"},"nodeType":"YulFunctionCall","src":"40577:60:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"40570:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40672:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"40679:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"40668:3:46"},"nodeType":"YulFunctionCall","src":"40668:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"40686:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"40691:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"40646:21:46"},"nodeType":"YulFunctionCall","src":"40646:52:46"},"nodeType":"YulExpressionStatement","src":"40646:52:46"},{"nodeType":"YulAssignment","src":"40707:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40718:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"40745:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"40723:21:46"},"nodeType":"YulFunctionCall","src":"40723:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"40714:3:46"},"nodeType":"YulFunctionCall","src":"40714:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"40707:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"40480:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"40487:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"40495:3:46","type":""}],"src":"40419:340:46"},{"body":{"nodeType":"YulBlock","src":"40855:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"40865:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"40911:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"40879:31:46"},"nodeType":"YulFunctionCall","src":"40879:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"40869:6:46","type":""}]},{"nodeType":"YulAssignment","src":"40926:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40991:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"40996:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"40933:57:46"},"nodeType":"YulFunctionCall","src":"40933:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"40926:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"41038:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"41045:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41034:3:46"},"nodeType":"YulFunctionCall","src":"41034:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"41052:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"41057:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"41012:21:46"},"nodeType":"YulFunctionCall","src":"41012:52:46"},"nodeType":"YulExpressionStatement","src":"41012:52:46"},{"nodeType":"YulAssignment","src":"41073:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41084:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"41111:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"41089:21:46"},"nodeType":"YulFunctionCall","src":"41089:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41080:3:46"},"nodeType":"YulFunctionCall","src":"41080:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"41073:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"40836:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"40843:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"40851:3:46","type":""}],"src":"40765:360:46"},{"body":{"nodeType":"YulBlock","src":"41229:278:46","statements":[{"nodeType":"YulVariableDeclaration","src":"41239:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"41285:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"41253:31:46"},"nodeType":"YulFunctionCall","src":"41253:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"41243:6:46","type":""}]},{"nodeType":"YulAssignment","src":"41300:85:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41373:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"41378:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"41307:65:46"},"nodeType":"YulFunctionCall","src":"41307:78:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"41300:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"41420:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"41427:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41416:3:46"},"nodeType":"YulFunctionCall","src":"41416:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"41434:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"41439:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"41394:21:46"},"nodeType":"YulFunctionCall","src":"41394:52:46"},"nodeType":"YulExpressionStatement","src":"41394:52:46"},{"nodeType":"YulAssignment","src":"41455:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41466:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"41493:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"41471:21:46"},"nodeType":"YulFunctionCall","src":"41471:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41462:3:46"},"nodeType":"YulFunctionCall","src":"41462:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"41455:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"41210:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"41217:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"41225:3:46","type":""}],"src":"41131:376:46"},{"body":{"nodeType":"YulBlock","src":"41601:268:46","statements":[{"nodeType":"YulVariableDeclaration","src":"41611:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"41657:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"41625:31:46"},"nodeType":"YulFunctionCall","src":"41625:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"41615:6:46","type":""}]},{"nodeType":"YulAssignment","src":"41672:75:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41735:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"41740:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_library","nodeType":"YulIdentifier","src":"41679:55:46"},"nodeType":"YulFunctionCall","src":"41679:68:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"41672:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"41782:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"41789:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41778:3:46"},"nodeType":"YulFunctionCall","src":"41778:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"41796:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"41801:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"41756:21:46"},"nodeType":"YulFunctionCall","src":"41756:52:46"},"nodeType":"YulExpressionStatement","src":"41756:52:46"},{"nodeType":"YulAssignment","src":"41817:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41828:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"41855:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"41833:21:46"},"nodeType":"YulFunctionCall","src":"41833:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41824:3:46"},"nodeType":"YulFunctionCall","src":"41824:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"41817:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"41582:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"41589:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"41597:3:46","type":""}],"src":"41513:356:46"},{"body":{"nodeType":"YulBlock","src":"41983:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"41993:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"42039:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"42007:31:46"},"nodeType":"YulFunctionCall","src":"42007:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"41997:6:46","type":""}]},{"nodeType":"YulAssignment","src":"42054:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42137:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"42142:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"42061:75:46"},"nodeType":"YulFunctionCall","src":"42061:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"42054:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"42184:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"42191:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42180:3:46"},"nodeType":"YulFunctionCall","src":"42180:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"42198:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"42203:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"42158:21:46"},"nodeType":"YulFunctionCall","src":"42158:52:46"},"nodeType":"YulExpressionStatement","src":"42158:52:46"},{"nodeType":"YulAssignment","src":"42219:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42230:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"42235:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42226:3:46"},"nodeType":"YulFunctionCall","src":"42226:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"42219:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"41964:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"41971:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"41979:3:46","type":""}],"src":"41875:373:46"},{"body":{"nodeType":"YulBlock","src":"42371:719:46","statements":[{"nodeType":"YulVariableDeclaration","src":"42381:29:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"42404:5:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"42398:5:46"},"nodeType":"YulFunctionCall","src":"42398:12:46"},"variables":[{"name":"slotValue","nodeType":"YulTypedName","src":"42385:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"42419:50:46","value":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"42459:9:46"}],"functionName":{"name":"extract_byte_array_length","nodeType":"YulIdentifier","src":"42433:25:46"},"nodeType":"YulFunctionCall","src":"42433:36:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"42423:6:46","type":""}]},{"nodeType":"YulAssignment","src":"42478:85:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42551:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"42556:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"42485:65:46"},"nodeType":"YulFunctionCall","src":"42485:78:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"42478:3:46"}]},{"cases":[{"body":{"nodeType":"YulBlock","src":"42612:128:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42665:3:46"},{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"42674:9:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"42689:4:46","type":"","value":"0xff"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"42685:3:46"},"nodeType":"YulFunctionCall","src":"42685:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42670:3:46"},"nodeType":"YulFunctionCall","src":"42670:25:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"42658:6:46"},"nodeType":"YulFunctionCall","src":"42658:38:46"},"nodeType":"YulExpressionStatement","src":"42658:38:46"},{"nodeType":"YulAssignment","src":"42709:21:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42720:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"42725:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42716:3:46"},"nodeType":"YulFunctionCall","src":"42716:14:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"42709:3:46"}]}]},"nodeType":"YulCase","src":"42605:135:46","value":{"kind":"number","nodeType":"YulLiteral","src":"42610:1:46","type":"","value":"0"}},{"body":{"nodeType":"YulBlock","src":"42756:328:46","statements":[{"nodeType":"YulVariableDeclaration","src":"42801:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"42847:5:46"}],"functionName":{"name":"array_dataslot_t_bytes_storage","nodeType":"YulIdentifier","src":"42816:30:46"},"nodeType":"YulFunctionCall","src":"42816:37:46"},"variables":[{"name":"dataPos","nodeType":"YulTypedName","src":"42805:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"42866:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"42875:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"42870:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"42933:110:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42962:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"42967:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42958:3:46"},"nodeType":"YulFunctionCall","src":"42958:11:46"},{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"42977:7:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"42971:5:46"},"nodeType":"YulFunctionCall","src":"42971:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"42951:6:46"},"nodeType":"YulFunctionCall","src":"42951:35:46"},"nodeType":"YulExpressionStatement","src":"42951:35:46"},{"nodeType":"YulAssignment","src":"43003:26:46","value":{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"43018:7:46"},{"kind":"number","nodeType":"YulLiteral","src":"43027:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43014:3:46"},"nodeType":"YulFunctionCall","src":"43014:15:46"},"variableNames":[{"name":"dataPos","nodeType":"YulIdentifier","src":"43003:7:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"42900:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"42903:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"42897:2:46"},"nodeType":"YulFunctionCall","src":"42897:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"42911:21:46","statements":[{"nodeType":"YulAssignment","src":"42913:17:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"42922:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42925:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42918:3:46"},"nodeType":"YulFunctionCall","src":"42918:12:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"42913:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"42893:3:46","statements":[]},"src":"42889:154:46"},{"nodeType":"YulAssignment","src":"43056:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43067:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"43072:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43063:3:46"},"nodeType":"YulFunctionCall","src":"43063:11:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"43056:3:46"}]}]},"nodeType":"YulCase","src":"42749:335:46","value":{"kind":"number","nodeType":"YulLiteral","src":"42754:1:46","type":"","value":"1"}}],"expression":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"42583:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"42594:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42579:3:46"},"nodeType":"YulFunctionCall","src":"42579:17:46"},"nodeType":"YulSwitch","src":"42572:512:46"}]},"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"42352:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"42359:3:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"42367:3:46","type":""}],"src":"42276:814:46"},{"body":{"nodeType":"YulBlock","src":"43176:81:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43193:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43244:5:46"}],"functionName":{"name":"convert_t_contract$_IERC20_$3611_to_t_address","nodeType":"YulIdentifier","src":"43198:45:46"},"nodeType":"YulFunctionCall","src":"43198:52:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43186:6:46"},"nodeType":"YulFunctionCall","src":"43186:65:46"},"nodeType":"YulExpressionStatement","src":"43186:65:46"}]},"name":"abi_encode_t_contract$_IERC20_$3611_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43164:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43171:3:46","type":""}],"src":"43096:161:46"},{"body":{"nodeType":"YulBlock","src":"43341:89:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43358:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43417:5:46"}],"functionName":{"name":"convert_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulIdentifier","src":"43363:53:46"},"nodeType":"YulFunctionCall","src":"43363:60:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43351:6:46"},"nodeType":"YulFunctionCall","src":"43351:73:46"},"nodeType":"YulExpressionStatement","src":"43351:73:46"}]},"name":"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43329:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43336:3:46","type":""}],"src":"43263:167:46"},{"body":{"nodeType":"YulBlock","src":"43514:79:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43531:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43580:5:46"}],"functionName":{"name":"convert_t_enum$_ErrorCodes_$4618_to_t_uint8","nodeType":"YulIdentifier","src":"43536:43:46"},"nodeType":"YulFunctionCall","src":"43536:50:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43524:6:46"},"nodeType":"YulFunctionCall","src":"43524:63:46"},"nodeType":"YulExpressionStatement","src":"43524:63:46"}]},"name":"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43502:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43509:3:46","type":""}],"src":"43436:157:46"},{"body":{"nodeType":"YulBlock","src":"43678:80:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43695:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43745:5:46"}],"functionName":{"name":"convert_t_enum$_QueryStatus_$4315_to_t_uint8","nodeType":"YulIdentifier","src":"43700:44:46"},"nodeType":"YulFunctionCall","src":"43700:51:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43688:6:46"},"nodeType":"YulFunctionCall","src":"43688:64:46"},"nodeType":"YulExpressionStatement","src":"43688:64:46"}]},"name":"abi_encode_t_enum$_QueryStatus_$4315_to_t_uint8_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43666:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43673:3:46","type":""}],"src":"43599:159:46"},{"body":{"nodeType":"YulBlock","src":"43817:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43834:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43856:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"43839:16:46"},"nodeType":"YulFunctionCall","src":"43839:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43827:6:46"},"nodeType":"YulFunctionCall","src":"43827:36:46"},"nodeType":"YulExpressionStatement","src":"43827:36:46"}]},"name":"abi_encode_t_int128_to_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43805:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43812:3:46","type":""}],"src":"43764:105:46"},{"body":{"nodeType":"YulBlock","src":"43938:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43955:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43977:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"43960:16:46"},"nodeType":"YulFunctionCall","src":"43960:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43948:6:46"},"nodeType":"YulFunctionCall","src":"43948:36:46"},"nodeType":"YulExpressionStatement","src":"43948:36:46"}]},"name":"abi_encode_t_int128_to_t_int128_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43926:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43933:3:46","type":""}],"src":"43875:115:46"},{"body":{"nodeType":"YulBlock","src":"44047:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44064:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44085:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"44069:15:46"},"nodeType":"YulFunctionCall","src":"44069:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"44057:6:46"},"nodeType":"YulFunctionCall","src":"44057:35:46"},"nodeType":"YulExpressionStatement","src":"44057:35:46"}]},"name":"abi_encode_t_int32_to_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"44035:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"44042:3:46","type":""}],"src":"43996:102:46"},{"body":{"nodeType":"YulBlock","src":"44165:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44182:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44203:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"44187:15:46"},"nodeType":"YulFunctionCall","src":"44187:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"44175:6:46"},"nodeType":"YulFunctionCall","src":"44175:35:46"},"nodeType":"YulExpressionStatement","src":"44175:35:46"}]},"name":"abi_encode_t_int32_to_t_int32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"44153:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"44160:3:46","type":""}],"src":"44104:112:46"},{"body":{"nodeType":"YulBlock","src":"44304:262:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44314:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44361:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"44328:32:46"},"nodeType":"YulFunctionCall","src":"44328:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"44318:6:46","type":""}]},{"nodeType":"YulAssignment","src":"44376:68:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44432:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"44437:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr","nodeType":"YulIdentifier","src":"44383:48:46"},"nodeType":"YulFunctionCall","src":"44383:61:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"44376:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44479:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"44486:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44475:3:46"},"nodeType":"YulFunctionCall","src":"44475:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"44493:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"44498:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"44453:21:46"},"nodeType":"YulFunctionCall","src":"44453:52:46"},"nodeType":"YulExpressionStatement","src":"44453:52:46"},{"nodeType":"YulAssignment","src":"44514:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44525:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"44552:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"44530:21:46"},"nodeType":"YulFunctionCall","src":"44530:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44521:3:46"},"nodeType":"YulFunctionCall","src":"44521:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"44514:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"44285:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"44292:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"44300:3:46","type":""}],"src":"44222:344:46"},{"body":{"nodeType":"YulBlock","src":"44664:272:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44674:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44721:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"44688:32:46"},"nodeType":"YulFunctionCall","src":"44688:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"44678:6:46","type":""}]},{"nodeType":"YulAssignment","src":"44736:78:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44802:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"44807:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"44743:58:46"},"nodeType":"YulFunctionCall","src":"44743:71:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"44736:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44849:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"44856:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44845:3:46"},"nodeType":"YulFunctionCall","src":"44845:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"44863:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"44868:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"44823:21:46"},"nodeType":"YulFunctionCall","src":"44823:52:46"},"nodeType":"YulExpressionStatement","src":"44823:52:46"},{"nodeType":"YulAssignment","src":"44884:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44895:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"44922:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"44900:21:46"},"nodeType":"YulFunctionCall","src":"44900:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44891:3:46"},"nodeType":"YulFunctionCall","src":"44891:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"44884:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"44645:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"44652:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"44660:3:46","type":""}],"src":"44572:364:46"},{"body":{"nodeType":"YulBlock","src":"45088:220:46","statements":[{"nodeType":"YulAssignment","src":"45098:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45164:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45169:2:46","type":"","value":"44"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"45105:58:46"},"nodeType":"YulFunctionCall","src":"45105:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"45098:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45270:3:46"}],"functionName":{"name":"store_literal_in_memory_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4","nodeType":"YulIdentifier","src":"45181:88:46"},"nodeType":"YulFunctionCall","src":"45181:93:46"},"nodeType":"YulExpressionStatement","src":"45181:93:46"},{"nodeType":"YulAssignment","src":"45283:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45294:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45299:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45290:3:46"},"nodeType":"YulFunctionCall","src":"45290:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"45283:3:46"}]}]},"name":"abi_encode_t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"45076:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"45084:3:46","type":""}],"src":"44942:366:46"},{"body":{"nodeType":"YulBlock","src":"45460:220:46","statements":[{"nodeType":"YulAssignment","src":"45470:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45536:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45541:2:46","type":"","value":"41"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"45477:58:46"},"nodeType":"YulFunctionCall","src":"45477:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"45470:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45642:3:46"}],"functionName":{"name":"store_literal_in_memory_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150","nodeType":"YulIdentifier","src":"45553:88:46"},"nodeType":"YulFunctionCall","src":"45553:93:46"},"nodeType":"YulExpressionStatement","src":"45553:93:46"},{"nodeType":"YulAssignment","src":"45655:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45666:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45671:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45662:3:46"},"nodeType":"YulFunctionCall","src":"45662:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"45655:3:46"}]}]},"name":"abi_encode_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"45448:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"45456:3:46","type":""}],"src":"45314:366:46"},{"body":{"nodeType":"YulBlock","src":"45832:220:46","statements":[{"nodeType":"YulAssignment","src":"45842:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45908:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45913:2:46","type":"","value":"46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"45849:58:46"},"nodeType":"YulFunctionCall","src":"45849:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"45842:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46014:3:46"}],"functionName":{"name":"store_literal_in_memory_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b","nodeType":"YulIdentifier","src":"45925:88:46"},"nodeType":"YulFunctionCall","src":"45925:93:46"},"nodeType":"YulExpressionStatement","src":"45925:93:46"},{"nodeType":"YulAssignment","src":"46027:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46038:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46043:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46034:3:46"},"nodeType":"YulFunctionCall","src":"46034:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"46027:3:46"}]}]},"name":"abi_encode_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"45820:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"45828:3:46","type":""}],"src":"45686:366:46"},{"body":{"nodeType":"YulBlock","src":"46204:220:46","statements":[{"nodeType":"YulAssignment","src":"46214:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46280:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46285:2:46","type":"","value":"27"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"46221:58:46"},"nodeType":"YulFunctionCall","src":"46221:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"46214:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46386:3:46"}],"functionName":{"name":"store_literal_in_memory_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d","nodeType":"YulIdentifier","src":"46297:88:46"},"nodeType":"YulFunctionCall","src":"46297:93:46"},"nodeType":"YulExpressionStatement","src":"46297:93:46"},{"nodeType":"YulAssignment","src":"46399:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46410:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46415:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46406:3:46"},"nodeType":"YulFunctionCall","src":"46406:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"46399:3:46"}]}]},"name":"abi_encode_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"46192:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"46200:3:46","type":""}],"src":"46058:366:46"},{"body":{"nodeType":"YulBlock","src":"46576:220:46","statements":[{"nodeType":"YulAssignment","src":"46586:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46652:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46657:2:46","type":"","value":"49"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"46593:58:46"},"nodeType":"YulFunctionCall","src":"46593:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"46586:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46758:3:46"}],"functionName":{"name":"store_literal_in_memory_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f","nodeType":"YulIdentifier","src":"46669:88:46"},"nodeType":"YulFunctionCall","src":"46669:93:46"},"nodeType":"YulExpressionStatement","src":"46669:93:46"},{"nodeType":"YulAssignment","src":"46771:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46782:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46787:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46778:3:46"},"nodeType":"YulFunctionCall","src":"46778:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"46771:3:46"}]}]},"name":"abi_encode_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"46564:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"46572:3:46","type":""}],"src":"46430:366:46"},{"body":{"nodeType":"YulBlock","src":"46948:220:46","statements":[{"nodeType":"YulAssignment","src":"46958:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47024:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47029:2:46","type":"","value":"44"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"46965:58:46"},"nodeType":"YulFunctionCall","src":"46965:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"46958:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47130:3:46"}],"functionName":{"name":"store_literal_in_memory_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e","nodeType":"YulIdentifier","src":"47041:88:46"},"nodeType":"YulFunctionCall","src":"47041:93:46"},"nodeType":"YulExpressionStatement","src":"47041:93:46"},{"nodeType":"YulAssignment","src":"47143:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47154:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47159:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47150:3:46"},"nodeType":"YulFunctionCall","src":"47150:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"47143:3:46"}]}]},"name":"abi_encode_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"46936:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"46944:3:46","type":""}],"src":"46802:366:46"},{"body":{"nodeType":"YulBlock","src":"47320:220:46","statements":[{"nodeType":"YulAssignment","src":"47330:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47396:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47401:2:46","type":"","value":"45"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"47337:58:46"},"nodeType":"YulFunctionCall","src":"47337:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"47330:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47502:3:46"}],"functionName":{"name":"store_literal_in_memory_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c","nodeType":"YulIdentifier","src":"47413:88:46"},"nodeType":"YulFunctionCall","src":"47413:93:46"},"nodeType":"YulExpressionStatement","src":"47413:93:46"},{"nodeType":"YulAssignment","src":"47515:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47526:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47531:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47522:3:46"},"nodeType":"YulFunctionCall","src":"47522:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"47515:3:46"}]}]},"name":"abi_encode_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"47308:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"47316:3:46","type":""}],"src":"47174:366:46"},{"body":{"nodeType":"YulBlock","src":"47692:220:46","statements":[{"nodeType":"YulAssignment","src":"47702:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47768:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47773:2:46","type":"","value":"47"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"47709:58:46"},"nodeType":"YulFunctionCall","src":"47709:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"47702:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47874:3:46"}],"functionName":{"name":"store_literal_in_memory_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee","nodeType":"YulIdentifier","src":"47785:88:46"},"nodeType":"YulFunctionCall","src":"47785:93:46"},"nodeType":"YulExpressionStatement","src":"47785:93:46"},{"nodeType":"YulAssignment","src":"47887:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47898:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47903:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47894:3:46"},"nodeType":"YulFunctionCall","src":"47894:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"47887:3:46"}]}]},"name":"abi_encode_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"47680:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"47688:3:46","type":""}],"src":"47546:366:46"},{"body":{"nodeType":"YulBlock","src":"48064:220:46","statements":[{"nodeType":"YulAssignment","src":"48074:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48140:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"48145:2:46","type":"","value":"47"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"48081:58:46"},"nodeType":"YulFunctionCall","src":"48081:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"48074:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48246:3:46"}],"functionName":{"name":"store_literal_in_memory_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a","nodeType":"YulIdentifier","src":"48157:88:46"},"nodeType":"YulFunctionCall","src":"48157:93:46"},"nodeType":"YulExpressionStatement","src":"48157:93:46"},{"nodeType":"YulAssignment","src":"48259:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48270:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"48275:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"48266:3:46"},"nodeType":"YulFunctionCall","src":"48266:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"48259:3:46"}]}]},"name":"abi_encode_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"48052:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"48060:3:46","type":""}],"src":"47918:366:46"},{"body":{"nodeType":"YulBlock","src":"48436:220:46","statements":[{"nodeType":"YulAssignment","src":"48446:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48512:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"48517:2:46","type":"","value":"63"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"48453:58:46"},"nodeType":"YulFunctionCall","src":"48453:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"48446:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48618:3:46"}],"functionName":{"name":"store_literal_in_memory_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce","nodeType":"YulIdentifier","src":"48529:88:46"},"nodeType":"YulFunctionCall","src":"48529:93:46"},"nodeType":"YulExpressionStatement","src":"48529:93:46"},{"nodeType":"YulAssignment","src":"48631:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48642:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"48647:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"48638:3:46"},"nodeType":"YulFunctionCall","src":"48638:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"48631:3:46"}]}]},"name":"abi_encode_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"48424:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"48432:3:46","type":""}],"src":"48290:366:46"},{"body":{"nodeType":"YulBlock","src":"48808:220:46","statements":[{"nodeType":"YulAssignment","src":"48818:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48884:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"48889:2:46","type":"","value":"66"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"48825:58:46"},"nodeType":"YulFunctionCall","src":"48825:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"48818:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48990:3:46"}],"functionName":{"name":"store_literal_in_memory_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb","nodeType":"YulIdentifier","src":"48901:88:46"},"nodeType":"YulFunctionCall","src":"48901:93:46"},"nodeType":"YulExpressionStatement","src":"48901:93:46"},{"nodeType":"YulAssignment","src":"49003:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49014:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"49019:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"49010:3:46"},"nodeType":"YulFunctionCall","src":"49010:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"49003:3:46"}]}]},"name":"abi_encode_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"48796:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"48804:3:46","type":""}],"src":"48662:366:46"},{"body":{"nodeType":"YulBlock","src":"49180:220:46","statements":[{"nodeType":"YulAssignment","src":"49190:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49256:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"49261:2:46","type":"","value":"42"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"49197:58:46"},"nodeType":"YulFunctionCall","src":"49197:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"49190:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49362:3:46"}],"functionName":{"name":"store_literal_in_memory_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1","nodeType":"YulIdentifier","src":"49273:88:46"},"nodeType":"YulFunctionCall","src":"49273:93:46"},"nodeType":"YulExpressionStatement","src":"49273:93:46"},{"nodeType":"YulAssignment","src":"49375:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49386:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"49391:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"49382:3:46"},"nodeType":"YulFunctionCall","src":"49382:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"49375:3:46"}]}]},"name":"abi_encode_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"49168:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"49176:3:46","type":""}],"src":"49034:366:46"},{"body":{"nodeType":"YulBlock","src":"49552:220:46","statements":[{"nodeType":"YulAssignment","src":"49562:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49628:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"49633:2:46","type":"","value":"45"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"49569:58:46"},"nodeType":"YulFunctionCall","src":"49569:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"49562:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49734:3:46"}],"functionName":{"name":"store_literal_in_memory_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801","nodeType":"YulIdentifier","src":"49645:88:46"},"nodeType":"YulFunctionCall","src":"49645:93:46"},"nodeType":"YulExpressionStatement","src":"49645:93:46"},{"nodeType":"YulAssignment","src":"49747:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49758:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"49763:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"49754:3:46"},"nodeType":"YulFunctionCall","src":"49754:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"49747:3:46"}]}]},"name":"abi_encode_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"49540:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"49548:3:46","type":""}],"src":"49406:366:46"},{"body":{"nodeType":"YulBlock","src":"49924:220:46","statements":[{"nodeType":"YulAssignment","src":"49934:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50000:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"50005:2:46","type":"","value":"58"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"49941:58:46"},"nodeType":"YulFunctionCall","src":"49941:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"49934:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50106:3:46"}],"functionName":{"name":"store_literal_in_memory_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84","nodeType":"YulIdentifier","src":"50017:88:46"},"nodeType":"YulFunctionCall","src":"50017:93:46"},"nodeType":"YulExpressionStatement","src":"50017:93:46"},{"nodeType":"YulAssignment","src":"50119:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50130:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"50135:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50126:3:46"},"nodeType":"YulFunctionCall","src":"50126:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"50119:3:46"}]}]},"name":"abi_encode_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"49912:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"49920:3:46","type":""}],"src":"49778:366:46"},{"body":{"nodeType":"YulBlock","src":"50296:220:46","statements":[{"nodeType":"YulAssignment","src":"50306:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50372:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"50377:2:46","type":"","value":"52"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"50313:58:46"},"nodeType":"YulFunctionCall","src":"50313:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50306:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50478:3:46"}],"functionName":{"name":"store_literal_in_memory_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b","nodeType":"YulIdentifier","src":"50389:88:46"},"nodeType":"YulFunctionCall","src":"50389:93:46"},"nodeType":"YulExpressionStatement","src":"50389:93:46"},{"nodeType":"YulAssignment","src":"50491:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50502:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"50507:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50498:3:46"},"nodeType":"YulFunctionCall","src":"50498:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"50491:3:46"}]}]},"name":"abi_encode_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"50284:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"50292:3:46","type":""}],"src":"50150:366:46"},{"body":{"nodeType":"YulBlock","src":"50668:220:46","statements":[{"nodeType":"YulAssignment","src":"50678:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50744:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"50749:2:46","type":"","value":"43"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"50685:58:46"},"nodeType":"YulFunctionCall","src":"50685:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50678:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50850:3:46"}],"functionName":{"name":"store_literal_in_memory_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d","nodeType":"YulIdentifier","src":"50761:88:46"},"nodeType":"YulFunctionCall","src":"50761:93:46"},"nodeType":"YulExpressionStatement","src":"50761:93:46"},{"nodeType":"YulAssignment","src":"50863:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50874:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"50879:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50870:3:46"},"nodeType":"YulFunctionCall","src":"50870:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"50863:3:46"}]}]},"name":"abi_encode_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"50656:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"50664:3:46","type":""}],"src":"50522:366:46"},{"body":{"nodeType":"YulBlock","src":"51040:220:46","statements":[{"nodeType":"YulAssignment","src":"51050:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51116:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"51121:2:46","type":"","value":"46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"51057:58:46"},"nodeType":"YulFunctionCall","src":"51057:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"51050:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51222:3:46"}],"functionName":{"name":"store_literal_in_memory_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847","nodeType":"YulIdentifier","src":"51133:88:46"},"nodeType":"YulFunctionCall","src":"51133:93:46"},"nodeType":"YulExpressionStatement","src":"51133:93:46"},{"nodeType":"YulAssignment","src":"51235:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51246:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"51251:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51242:3:46"},"nodeType":"YulFunctionCall","src":"51242:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"51235:3:46"}]}]},"name":"abi_encode_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"51028:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"51036:3:46","type":""}],"src":"50894:366:46"},{"body":{"nodeType":"YulBlock","src":"51412:220:46","statements":[{"nodeType":"YulAssignment","src":"51422:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51488:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"51493:2:46","type":"","value":"47"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"51429:58:46"},"nodeType":"YulFunctionCall","src":"51429:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"51422:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51594:3:46"}],"functionName":{"name":"store_literal_in_memory_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6","nodeType":"YulIdentifier","src":"51505:88:46"},"nodeType":"YulFunctionCall","src":"51505:93:46"},"nodeType":"YulExpressionStatement","src":"51505:93:46"},{"nodeType":"YulAssignment","src":"51607:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51618:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"51623:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51614:3:46"},"nodeType":"YulFunctionCall","src":"51614:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"51607:3:46"}]}]},"name":"abi_encode_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"51400:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"51408:3:46","type":""}],"src":"51266:366:46"},{"body":{"nodeType":"YulBlock","src":"51784:220:46","statements":[{"nodeType":"YulAssignment","src":"51794:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51860:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"51865:2:46","type":"","value":"49"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"51801:58:46"},"nodeType":"YulFunctionCall","src":"51801:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"51794:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51966:3:46"}],"functionName":{"name":"store_literal_in_memory_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094","nodeType":"YulIdentifier","src":"51877:88:46"},"nodeType":"YulFunctionCall","src":"51877:93:46"},"nodeType":"YulExpressionStatement","src":"51877:93:46"},{"nodeType":"YulAssignment","src":"51979:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51990:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"51995:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51986:3:46"},"nodeType":"YulFunctionCall","src":"51986:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"51979:3:46"}]}]},"name":"abi_encode_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"51772:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"51780:3:46","type":""}],"src":"51638:366:46"},{"body":{"nodeType":"YulBlock","src":"52174:480:46","statements":[{"nodeType":"YulVariableDeclaration","src":"52184:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52200:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"52205:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52196:3:46"},"nodeType":"YulFunctionCall","src":"52196:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"52188:4:46","type":""}]},{"nodeType":"YulBlock","src":"52220:233:46","statements":[{"nodeType":"YulVariableDeclaration","src":"52255:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"52285:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"52292:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52281:3:46"},"nodeType":"YulFunctionCall","src":"52281:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"52275:5:46"},"nodeType":"YulFunctionCall","src":"52275:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"52259:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52323:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"52328:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52319:3:46"},"nodeType":"YulFunctionCall","src":"52319:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"52339:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"52345:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"52335:3:46"},"nodeType":"YulFunctionCall","src":"52335:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52312:6:46"},"nodeType":"YulFunctionCall","src":"52312:38:46"},"nodeType":"YulExpressionStatement","src":"52312:38:46"},{"nodeType":"YulAssignment","src":"52363:79:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"52423:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"52437:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"52371:51:46"},"nodeType":"YulFunctionCall","src":"52371:71:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"52363:4:46"}]}]},{"nodeType":"YulBlock","src":"52463:164:46","statements":[{"nodeType":"YulVariableDeclaration","src":"52500:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"52530:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"52537:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52526:3:46"},"nodeType":"YulFunctionCall","src":"52526:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"52520:5:46"},"nodeType":"YulFunctionCall","src":"52520:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"52504:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"52588:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52606:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"52611:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52602:3:46"},"nodeType":"YulFunctionCall","src":"52602:14:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32","nodeType":"YulIdentifier","src":"52556:31:46"},"nodeType":"YulFunctionCall","src":"52556:61:46"},"nodeType":"YulExpressionStatement","src":"52556:61:46"}]},{"nodeType":"YulAssignment","src":"52637:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"52644:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"52637:3:46"}]}]},"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"52153:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"52160:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"52169:3:46","type":""}],"src":"52062:592:46"},{"body":{"nodeType":"YulBlock","src":"52832:496:46","statements":[{"nodeType":"YulVariableDeclaration","src":"52842:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52858:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"52863:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52854:3:46"},"nodeType":"YulFunctionCall","src":"52854:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"52846:4:46","type":""}]},{"nodeType":"YulBlock","src":"52878:241:46","statements":[{"nodeType":"YulVariableDeclaration","src":"52913:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"52943:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"52950:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52939:3:46"},"nodeType":"YulFunctionCall","src":"52939:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"52933:5:46"},"nodeType":"YulFunctionCall","src":"52933:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"52917:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52981:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"52986:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52977:3:46"},"nodeType":"YulFunctionCall","src":"52977:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"52997:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"53003:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"52993:3:46"},"nodeType":"YulFunctionCall","src":"52993:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52970:6:46"},"nodeType":"YulFunctionCall","src":"52970:38:46"},"nodeType":"YulExpressionStatement","src":"52970:38:46"},{"nodeType":"YulAssignment","src":"53021:87:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"53089:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"53103:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library","nodeType":"YulIdentifier","src":"53029:59:46"},"nodeType":"YulFunctionCall","src":"53029:79:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"53021:4:46"}]}]},{"nodeType":"YulBlock","src":"53129:172:46","statements":[{"nodeType":"YulVariableDeclaration","src":"53166:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"53196:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"53203:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53192:3:46"},"nodeType":"YulFunctionCall","src":"53192:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"53186:5:46"},"nodeType":"YulFunctionCall","src":"53186:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"53170:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"53262:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53280:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"53285:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53276:3:46"},"nodeType":"YulFunctionCall","src":"53276:14:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_library","nodeType":"YulIdentifier","src":"53222:39:46"},"nodeType":"YulFunctionCall","src":"53222:69:46"},"nodeType":"YulExpressionStatement","src":"53222:69:46"}]},{"nodeType":"YulAssignment","src":"53311:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"53318:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"53311:3:46"}]}]},"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"52811:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"52818:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"52827:3:46","type":""}],"src":"52712:616:46"},{"body":{"nodeType":"YulBlock","src":"53490:1219:46","statements":[{"nodeType":"YulVariableDeclaration","src":"53500:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53516:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"53521:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53512:3:46"},"nodeType":"YulFunctionCall","src":"53512:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"53504:4:46","type":""}]},{"nodeType":"YulBlock","src":"53536:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"53573:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"53603:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"53610:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53599:3:46"},"nodeType":"YulFunctionCall","src":"53599:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"53593:5:46"},"nodeType":"YulFunctionCall","src":"53593:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"53577:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53641:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"53646:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53637:3:46"},"nodeType":"YulFunctionCall","src":"53637:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"53657:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"53663:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"53653:3:46"},"nodeType":"YulFunctionCall","src":"53653:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53630:6:46"},"nodeType":"YulFunctionCall","src":"53630:38:46"},"nodeType":"YulExpressionStatement","src":"53630:38:46"},{"nodeType":"YulAssignment","src":"53681:109:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"53771:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"53785:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulIdentifier","src":"53689:81:46"},"nodeType":"YulFunctionCall","src":"53689:101:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"53681:4:46"}]}]},{"nodeType":"YulBlock","src":"53811:167:46","statements":[{"nodeType":"YulVariableDeclaration","src":"53853:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"53883:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"53890:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53879:3:46"},"nodeType":"YulFunctionCall","src":"53879:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"53873:5:46"},"nodeType":"YulFunctionCall","src":"53873:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"53857:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"53939:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53957:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"53962:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53953:3:46"},"nodeType":"YulFunctionCall","src":"53953:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"53909:29:46"},"nodeType":"YulFunctionCall","src":"53909:59:46"},"nodeType":"YulExpressionStatement","src":"53909:59:46"}]},{"nodeType":"YulBlock","src":"53988:165:46","statements":[{"nodeType":"YulVariableDeclaration","src":"54028:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"54058:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"54065:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54054:3:46"},"nodeType":"YulFunctionCall","src":"54054:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"54048:5:46"},"nodeType":"YulFunctionCall","src":"54048:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"54032:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"54114:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54132:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"54137:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54128:3:46"},"nodeType":"YulFunctionCall","src":"54128:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"54084:29:46"},"nodeType":"YulFunctionCall","src":"54084:59:46"},"nodeType":"YulExpressionStatement","src":"54084:59:46"}]},{"nodeType":"YulBlock","src":"54163:177:46","statements":[{"nodeType":"YulVariableDeclaration","src":"54215:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"54245:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"54252:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54241:3:46"},"nodeType":"YulFunctionCall","src":"54241:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"54235:5:46"},"nodeType":"YulFunctionCall","src":"54235:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"54219:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"54301:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54319:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"54324:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54315:3:46"},"nodeType":"YulFunctionCall","src":"54315:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"54271:29:46"},"nodeType":"YulFunctionCall","src":"54271:59:46"},"nodeType":"YulExpressionStatement","src":"54271:59:46"}]},{"nodeType":"YulBlock","src":"54350:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"54384:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"54414:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"54421:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54410:3:46"},"nodeType":"YulFunctionCall","src":"54410:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"54404:5:46"},"nodeType":"YulFunctionCall","src":"54404:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"54388:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"54472:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54490:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"54495:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54486:3:46"},"nodeType":"YulFunctionCall","src":"54486:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"54440:31:46"},"nodeType":"YulFunctionCall","src":"54440:61:46"},"nodeType":"YulExpressionStatement","src":"54440:61:46"}]},{"nodeType":"YulBlock","src":"54521:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"54555:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"54585:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"54592:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54581:3:46"},"nodeType":"YulFunctionCall","src":"54581:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"54575:5:46"},"nodeType":"YulFunctionCall","src":"54575:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"54559:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"54643:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54661:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"54666:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54657:3:46"},"nodeType":"YulFunctionCall","src":"54657:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"54611:31:46"},"nodeType":"YulFunctionCall","src":"54611:61:46"},"nodeType":"YulExpressionStatement","src":"54611:61:46"}]},{"nodeType":"YulAssignment","src":"54692:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"54699:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"54692:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"53469:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"53476:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"53485:3:46","type":""}],"src":"53382:1327:46"},{"body":{"nodeType":"YulBlock","src":"54889:1267:46","statements":[{"nodeType":"YulVariableDeclaration","src":"54899:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54915:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"54920:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54911:3:46"},"nodeType":"YulFunctionCall","src":"54911:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"54903:4:46","type":""}]},{"nodeType":"YulBlock","src":"54935:273:46","statements":[{"nodeType":"YulVariableDeclaration","src":"54972:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55002:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"55009:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54998:3:46"},"nodeType":"YulFunctionCall","src":"54998:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"54992:5:46"},"nodeType":"YulFunctionCall","src":"54992:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"54976:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55040:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"55045:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55036:3:46"},"nodeType":"YulFunctionCall","src":"55036:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"55056:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"55062:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"55052:3:46"},"nodeType":"YulFunctionCall","src":"55052:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"55029:6:46"},"nodeType":"YulFunctionCall","src":"55029:38:46"},"nodeType":"YulExpressionStatement","src":"55029:38:46"},{"nodeType":"YulAssignment","src":"55080:117:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"55178:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"55192:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulIdentifier","src":"55088:89:46"},"nodeType":"YulFunctionCall","src":"55088:109:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"55080:4:46"}]}]},{"nodeType":"YulBlock","src":"55218:175:46","statements":[{"nodeType":"YulVariableDeclaration","src":"55260:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55290:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"55297:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55286:3:46"},"nodeType":"YulFunctionCall","src":"55286:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"55280:5:46"},"nodeType":"YulFunctionCall","src":"55280:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"55264:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"55354:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55372:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"55377:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55368:3:46"},"nodeType":"YulFunctionCall","src":"55368:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"55316:37:46"},"nodeType":"YulFunctionCall","src":"55316:67:46"},"nodeType":"YulExpressionStatement","src":"55316:67:46"}]},{"nodeType":"YulBlock","src":"55403:173:46","statements":[{"nodeType":"YulVariableDeclaration","src":"55443:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55473:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"55480:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55469:3:46"},"nodeType":"YulFunctionCall","src":"55469:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"55463:5:46"},"nodeType":"YulFunctionCall","src":"55463:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"55447:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"55537:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55555:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"55560:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55551:3:46"},"nodeType":"YulFunctionCall","src":"55551:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"55499:37:46"},"nodeType":"YulFunctionCall","src":"55499:67:46"},"nodeType":"YulExpressionStatement","src":"55499:67:46"}]},{"nodeType":"YulBlock","src":"55586:185:46","statements":[{"nodeType":"YulVariableDeclaration","src":"55638:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55668:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"55675:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55664:3:46"},"nodeType":"YulFunctionCall","src":"55664:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"55658:5:46"},"nodeType":"YulFunctionCall","src":"55658:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"55642:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"55732:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55750:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"55755:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55746:3:46"},"nodeType":"YulFunctionCall","src":"55746:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"55694:37:46"},"nodeType":"YulFunctionCall","src":"55694:67:46"},"nodeType":"YulExpressionStatement","src":"55694:67:46"}]},{"nodeType":"YulBlock","src":"55781:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"55815:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55845:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"55852:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55841:3:46"},"nodeType":"YulFunctionCall","src":"55841:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"55835:5:46"},"nodeType":"YulFunctionCall","src":"55835:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"55819:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"55911:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55929:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"55934:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55925:3:46"},"nodeType":"YulFunctionCall","src":"55925:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"55871:39:46"},"nodeType":"YulFunctionCall","src":"55871:69:46"},"nodeType":"YulExpressionStatement","src":"55871:69:46"}]},{"nodeType":"YulBlock","src":"55960:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"55994:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"56024:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"56031:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56020:3:46"},"nodeType":"YulFunctionCall","src":"56020:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"56014:5:46"},"nodeType":"YulFunctionCall","src":"56014:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"55998:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"56090:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56108:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"56113:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56104:3:46"},"nodeType":"YulFunctionCall","src":"56104:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"56050:39:46"},"nodeType":"YulFunctionCall","src":"56050:69:46"},"nodeType":"YulExpressionStatement","src":"56050:69:46"}]},{"nodeType":"YulAssignment","src":"56139:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"56146:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"56139:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"54868:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"54875:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"54884:3:46","type":""}],"src":"54763:1393:46"},{"body":{"nodeType":"YulBlock","src":"56326:1267:46","statements":[{"nodeType":"YulVariableDeclaration","src":"56336:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56352:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"56357:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56348:3:46"},"nodeType":"YulFunctionCall","src":"56348:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"56340:4:46","type":""}]},{"nodeType":"YulBlock","src":"56372:273:46","statements":[{"nodeType":"YulVariableDeclaration","src":"56409:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"56439:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"56446:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56435:3:46"},"nodeType":"YulFunctionCall","src":"56435:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"56429:5:46"},"nodeType":"YulFunctionCall","src":"56429:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"56413:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56477:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"56482:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56473:3:46"},"nodeType":"YulFunctionCall","src":"56473:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"56493:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"56499:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"56489:3:46"},"nodeType":"YulFunctionCall","src":"56489:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"56466:6:46"},"nodeType":"YulFunctionCall","src":"56466:38:46"},"nodeType":"YulExpressionStatement","src":"56466:38:46"},{"nodeType":"YulAssignment","src":"56517:117:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"56615:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"56629:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulIdentifier","src":"56525:89:46"},"nodeType":"YulFunctionCall","src":"56525:109:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"56517:4:46"}]}]},{"nodeType":"YulBlock","src":"56655:175:46","statements":[{"nodeType":"YulVariableDeclaration","src":"56697:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"56727:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"56734:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56723:3:46"},"nodeType":"YulFunctionCall","src":"56723:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"56717:5:46"},"nodeType":"YulFunctionCall","src":"56717:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"56701:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"56791:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56809:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"56814:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56805:3:46"},"nodeType":"YulFunctionCall","src":"56805:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"56753:37:46"},"nodeType":"YulFunctionCall","src":"56753:67:46"},"nodeType":"YulExpressionStatement","src":"56753:67:46"}]},{"nodeType":"YulBlock","src":"56840:173:46","statements":[{"nodeType":"YulVariableDeclaration","src":"56880:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"56910:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"56917:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56906:3:46"},"nodeType":"YulFunctionCall","src":"56906:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"56900:5:46"},"nodeType":"YulFunctionCall","src":"56900:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"56884:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"56974:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56992:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"56997:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"56988:3:46"},"nodeType":"YulFunctionCall","src":"56988:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"56936:37:46"},"nodeType":"YulFunctionCall","src":"56936:67:46"},"nodeType":"YulExpressionStatement","src":"56936:67:46"}]},{"nodeType":"YulBlock","src":"57023:185:46","statements":[{"nodeType":"YulVariableDeclaration","src":"57075:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"57105:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"57112:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57101:3:46"},"nodeType":"YulFunctionCall","src":"57101:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"57095:5:46"},"nodeType":"YulFunctionCall","src":"57095:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"57079:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"57169:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57187:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"57192:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57183:3:46"},"nodeType":"YulFunctionCall","src":"57183:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"57131:37:46"},"nodeType":"YulFunctionCall","src":"57131:67:46"},"nodeType":"YulExpressionStatement","src":"57131:67:46"}]},{"nodeType":"YulBlock","src":"57218:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"57252:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"57282:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"57289:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57278:3:46"},"nodeType":"YulFunctionCall","src":"57278:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"57272:5:46"},"nodeType":"YulFunctionCall","src":"57272:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"57256:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"57348:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57366:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"57371:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57362:3:46"},"nodeType":"YulFunctionCall","src":"57362:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"57308:39:46"},"nodeType":"YulFunctionCall","src":"57308:69:46"},"nodeType":"YulExpressionStatement","src":"57308:69:46"}]},{"nodeType":"YulBlock","src":"57397:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"57431:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"57461:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"57468:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57457:3:46"},"nodeType":"YulFunctionCall","src":"57457:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"57451:5:46"},"nodeType":"YulFunctionCall","src":"57451:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"57435:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"57527:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57545:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"57550:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57541:3:46"},"nodeType":"YulFunctionCall","src":"57541:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"57487:39:46"},"nodeType":"YulFunctionCall","src":"57487:69:46"},"nodeType":"YulExpressionStatement","src":"57487:69:46"}]},{"nodeType":"YulAssignment","src":"57576:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"57583:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"57576:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"56305:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"56312:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"56321:3:46","type":""}],"src":"56210:1383:46"},{"body":{"nodeType":"YulBlock","src":"57769:745:46","statements":[{"nodeType":"YulVariableDeclaration","src":"57779:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57795:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"57800:4:46","type":"","value":"0xe0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57791:3:46"},"nodeType":"YulFunctionCall","src":"57791:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"57783:4:46","type":""}]},{"nodeType":"YulBlock","src":"57815:217:46","statements":[{"nodeType":"YulVariableDeclaration","src":"57853:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"57883:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"57890:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"57879:3:46"},"nodeType":"YulFunctionCall","src":"57879:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"57873:5:46"},"nodeType":"YulFunctionCall","src":"57873:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"57857:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"57993:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58011:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"58016:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58007:3:46"},"nodeType":"YulFunctionCall","src":"58007:14:46"}],"functionName":{"name":"abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr","nodeType":"YulIdentifier","src":"57909:83:46"},"nodeType":"YulFunctionCall","src":"57909:113:46"},"nodeType":"YulExpressionStatement","src":"57909:113:46"}]},{"nodeType":"YulBlock","src":"58042:271:46","statements":[{"nodeType":"YulVariableDeclaration","src":"58081:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"58111:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"58118:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58107:3:46"},"nodeType":"YulFunctionCall","src":"58107:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"58101:5:46"},"nodeType":"YulFunctionCall","src":"58101:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"58085:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58149:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"58154:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58145:3:46"},"nodeType":"YulFunctionCall","src":"58145:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"58165:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"58171:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"58161:3:46"},"nodeType":"YulFunctionCall","src":"58161:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"58138:6:46"},"nodeType":"YulFunctionCall","src":"58138:38:46"},"nodeType":"YulExpressionStatement","src":"58138:38:46"},{"nodeType":"YulAssignment","src":"58189:113:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"58283:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"58297:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr","nodeType":"YulIdentifier","src":"58197:85:46"},"nodeType":"YulFunctionCall","src":"58197:105:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"58189:4:46"}]}]},{"nodeType":"YulBlock","src":"58323:164:46","statements":[{"nodeType":"YulVariableDeclaration","src":"58358:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"58388:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"58395:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58384:3:46"},"nodeType":"YulFunctionCall","src":"58384:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"58378:5:46"},"nodeType":"YulFunctionCall","src":"58378:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"58362:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"58448:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58466:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"58471:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58462:3:46"},"nodeType":"YulFunctionCall","src":"58462:14:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address","nodeType":"YulIdentifier","src":"58414:33:46"},"nodeType":"YulFunctionCall","src":"58414:63:46"},"nodeType":"YulExpressionStatement","src":"58414:63:46"}]},{"nodeType":"YulAssignment","src":"58497:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"58504:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"58497:3:46"}]}]},"name":"abi_encode_t_struct$_Query_$4310_memory_ptr_to_t_struct$_Query_$4310_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"57748:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"57755:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"57764:3:46","type":""}],"src":"57649:865:46"},{"body":{"nodeType":"YulBlock","src":"58680:947:46","statements":[{"nodeType":"YulVariableDeclaration","src":"58690:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58706:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"58711:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58702:3:46"},"nodeType":"YulFunctionCall","src":"58702:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"58694:4:46","type":""}]},{"nodeType":"YulBlock","src":"58726:187:46","statements":[{"nodeType":"YulVariableDeclaration","src":"58761:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"58791:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"58798:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58787:3:46"},"nodeType":"YulFunctionCall","src":"58787:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"58781:5:46"},"nodeType":"YulFunctionCall","src":"58781:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"58765:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"58874:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58892:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"58897:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58888:3:46"},"nodeType":"YulFunctionCall","src":"58888:14:46"}],"functionName":{"name":"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulIdentifier","src":"58817:56:46"},"nodeType":"YulFunctionCall","src":"58817:86:46"},"nodeType":"YulExpressionStatement","src":"58817:86:46"}]},{"nodeType":"YulBlock","src":"58923:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"58963:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"58993:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"59000:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"58989:3:46"},"nodeType":"YulFunctionCall","src":"58989:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"58983:5:46"},"nodeType":"YulFunctionCall","src":"58983:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"58967:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"59053:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59071:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"59076:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59067:3:46"},"nodeType":"YulFunctionCall","src":"59067:14:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address","nodeType":"YulIdentifier","src":"59019:33:46"},"nodeType":"YulFunctionCall","src":"59019:63:46"},"nodeType":"YulExpressionStatement","src":"59019:63:46"}]},{"nodeType":"YulBlock","src":"59102:164:46","statements":[{"nodeType":"YulVariableDeclaration","src":"59137:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"59167:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"59174:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59163:3:46"},"nodeType":"YulFunctionCall","src":"59163:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"59157:5:46"},"nodeType":"YulFunctionCall","src":"59157:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"59141:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"59227:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59245:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"59250:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59241:3:46"},"nodeType":"YulFunctionCall","src":"59241:14:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32","nodeType":"YulIdentifier","src":"59193:33:46"},"nodeType":"YulFunctionCall","src":"59193:63:46"},"nodeType":"YulExpressionStatement","src":"59193:63:46"}]},{"nodeType":"YulBlock","src":"59276:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"59315:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"59345:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"59352:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59341:3:46"},"nodeType":"YulFunctionCall","src":"59341:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"59335:5:46"},"nodeType":"YulFunctionCall","src":"59335:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"59319:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"59405:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59423:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"59428:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59419:3:46"},"nodeType":"YulFunctionCall","src":"59419:14:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulIdentifier","src":"59371:33:46"},"nodeType":"YulFunctionCall","src":"59371:63:46"},"nodeType":"YulExpressionStatement","src":"59371:63:46"}]},{"nodeType":"YulBlock","src":"59454:166:46","statements":[{"nodeType":"YulVariableDeclaration","src":"59491:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"59521:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"59528:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59517:3:46"},"nodeType":"YulFunctionCall","src":"59517:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"59511:5:46"},"nodeType":"YulFunctionCall","src":"59511:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"59495:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"59581:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59599:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"59604:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59595:3:46"},"nodeType":"YulFunctionCall","src":"59595:14:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulIdentifier","src":"59547:33:46"},"nodeType":"YulFunctionCall","src":"59547:63:46"},"nodeType":"YulExpressionStatement","src":"59547:63:46"}]}]},"name":"abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"58667:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"58674:3:46","type":""}],"src":"58574:1053:46"},{"body":{"nodeType":"YulBlock","src":"59803:947:46","statements":[{"nodeType":"YulVariableDeclaration","src":"59813:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59829:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"59834:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59825:3:46"},"nodeType":"YulFunctionCall","src":"59825:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"59817:4:46","type":""}]},{"nodeType":"YulBlock","src":"59849:187:46","statements":[{"nodeType":"YulVariableDeclaration","src":"59884:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"59914:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"59921:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"59910:3:46"},"nodeType":"YulFunctionCall","src":"59910:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"59904:5:46"},"nodeType":"YulFunctionCall","src":"59904:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"59888:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"59997:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60015:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"60020:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60011:3:46"},"nodeType":"YulFunctionCall","src":"60011:14:46"}],"functionName":{"name":"abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulIdentifier","src":"59940:56:46"},"nodeType":"YulFunctionCall","src":"59940:86:46"},"nodeType":"YulExpressionStatement","src":"59940:86:46"}]},{"nodeType":"YulBlock","src":"60046:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"60086:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"60116:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"60123:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60112:3:46"},"nodeType":"YulFunctionCall","src":"60112:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"60106:5:46"},"nodeType":"YulFunctionCall","src":"60106:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"60090:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"60176:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60194:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"60199:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60190:3:46"},"nodeType":"YulFunctionCall","src":"60190:14:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address","nodeType":"YulIdentifier","src":"60142:33:46"},"nodeType":"YulFunctionCall","src":"60142:63:46"},"nodeType":"YulExpressionStatement","src":"60142:63:46"}]},{"nodeType":"YulBlock","src":"60225:164:46","statements":[{"nodeType":"YulVariableDeclaration","src":"60260:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"60290:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"60297:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60286:3:46"},"nodeType":"YulFunctionCall","src":"60286:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"60280:5:46"},"nodeType":"YulFunctionCall","src":"60280:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"60264:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"60350:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60368:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"60373:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60364:3:46"},"nodeType":"YulFunctionCall","src":"60364:14:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32","nodeType":"YulIdentifier","src":"60316:33:46"},"nodeType":"YulFunctionCall","src":"60316:63:46"},"nodeType":"YulExpressionStatement","src":"60316:63:46"}]},{"nodeType":"YulBlock","src":"60399:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"60438:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"60468:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"60475:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60464:3:46"},"nodeType":"YulFunctionCall","src":"60464:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"60458:5:46"},"nodeType":"YulFunctionCall","src":"60458:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"60442:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"60528:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60546:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"60551:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60542:3:46"},"nodeType":"YulFunctionCall","src":"60542:14:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulIdentifier","src":"60494:33:46"},"nodeType":"YulFunctionCall","src":"60494:63:46"},"nodeType":"YulExpressionStatement","src":"60494:63:46"}]},{"nodeType":"YulBlock","src":"60577:166:46","statements":[{"nodeType":"YulVariableDeclaration","src":"60614:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"60644:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"60651:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60640:3:46"},"nodeType":"YulFunctionCall","src":"60640:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"60634:5:46"},"nodeType":"YulFunctionCall","src":"60634:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"60618:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"60704:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60722:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"60727:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60718:3:46"},"nodeType":"YulFunctionCall","src":"60718:14:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulIdentifier","src":"60670:33:46"},"nodeType":"YulFunctionCall","src":"60670:63:46"},"nodeType":"YulExpressionStatement","src":"60670:63:46"}]}]},"name":"abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"59790:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"59797:3:46","type":""}],"src":"59687:1063:46"},{"body":{"nodeType":"YulBlock","src":"60928:846:46","statements":[{"nodeType":"YulVariableDeclaration","src":"60938:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60954:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"60959:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"60950:3:46"},"nodeType":"YulFunctionCall","src":"60950:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"60942:4:46","type":""}]},{"nodeType":"YulBlock","src":"60974:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"61013:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"61043:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"61050:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61039:3:46"},"nodeType":"YulFunctionCall","src":"61039:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"61033:5:46"},"nodeType":"YulFunctionCall","src":"61033:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"61017:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"61103:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61121:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"61126:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61117:3:46"},"nodeType":"YulFunctionCall","src":"61117:14:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address","nodeType":"YulIdentifier","src":"61069:33:46"},"nodeType":"YulFunctionCall","src":"61069:63:46"},"nodeType":"YulExpressionStatement","src":"61069:63:46"}]},{"nodeType":"YulBlock","src":"61152:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"61192:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"61222:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"61229:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61218:3:46"},"nodeType":"YulFunctionCall","src":"61218:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"61212:5:46"},"nodeType":"YulFunctionCall","src":"61212:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"61196:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"61282:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61300:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"61305:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61296:3:46"},"nodeType":"YulFunctionCall","src":"61296:14:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulIdentifier","src":"61248:33:46"},"nodeType":"YulFunctionCall","src":"61248:63:46"},"nodeType":"YulExpressionStatement","src":"61248:63:46"}]},{"nodeType":"YulBlock","src":"61331:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"61370:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"61400:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"61407:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61396:3:46"},"nodeType":"YulFunctionCall","src":"61396:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"61390:5:46"},"nodeType":"YulFunctionCall","src":"61390:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"61374:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"61460:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61478:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"61483:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61474:3:46"},"nodeType":"YulFunctionCall","src":"61474:14:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32","nodeType":"YulIdentifier","src":"61426:33:46"},"nodeType":"YulFunctionCall","src":"61426:63:46"},"nodeType":"YulExpressionStatement","src":"61426:63:46"}]},{"nodeType":"YulBlock","src":"61509:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"61549:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"61579:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"61586:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61575:3:46"},"nodeType":"YulFunctionCall","src":"61575:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"61569:5:46"},"nodeType":"YulFunctionCall","src":"61569:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"61553:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61617:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"61622:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61613:3:46"},"nodeType":"YulFunctionCall","src":"61613:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"61633:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"61639:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"61629:3:46"},"nodeType":"YulFunctionCall","src":"61629:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"61606:6:46"},"nodeType":"YulFunctionCall","src":"61606:38:46"},"nodeType":"YulExpressionStatement","src":"61606:38:46"},{"nodeType":"YulAssignment","src":"61657:79:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"61717:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"61731:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"61665:51:46"},"nodeType":"YulFunctionCall","src":"61665:71:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"61657:4:46"}]}]},{"nodeType":"YulAssignment","src":"61757:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"61764:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"61757:3:46"}]}]},"name":"abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"60907:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"60914:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"60923:3:46","type":""}],"src":"60812:962:46"},{"body":{"nodeType":"YulBlock","src":"61962:846:46","statements":[{"nodeType":"YulVariableDeclaration","src":"61972:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61988:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"61993:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"61984:3:46"},"nodeType":"YulFunctionCall","src":"61984:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"61976:4:46","type":""}]},{"nodeType":"YulBlock","src":"62008:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"62047:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"62077:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"62084:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62073:3:46"},"nodeType":"YulFunctionCall","src":"62073:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"62067:5:46"},"nodeType":"YulFunctionCall","src":"62067:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"62051:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"62137:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"62155:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"62160:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62151:3:46"},"nodeType":"YulFunctionCall","src":"62151:14:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address","nodeType":"YulIdentifier","src":"62103:33:46"},"nodeType":"YulFunctionCall","src":"62103:63:46"},"nodeType":"YulExpressionStatement","src":"62103:63:46"}]},{"nodeType":"YulBlock","src":"62186:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"62226:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"62256:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"62263:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62252:3:46"},"nodeType":"YulFunctionCall","src":"62252:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"62246:5:46"},"nodeType":"YulFunctionCall","src":"62246:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"62230:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"62316:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"62334:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"62339:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62330:3:46"},"nodeType":"YulFunctionCall","src":"62330:14:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulIdentifier","src":"62282:33:46"},"nodeType":"YulFunctionCall","src":"62282:63:46"},"nodeType":"YulExpressionStatement","src":"62282:63:46"}]},{"nodeType":"YulBlock","src":"62365:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"62404:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"62434:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"62441:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62430:3:46"},"nodeType":"YulFunctionCall","src":"62430:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"62424:5:46"},"nodeType":"YulFunctionCall","src":"62424:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"62408:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"62494:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"62512:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"62517:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62508:3:46"},"nodeType":"YulFunctionCall","src":"62508:14:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32","nodeType":"YulIdentifier","src":"62460:33:46"},"nodeType":"YulFunctionCall","src":"62460:63:46"},"nodeType":"YulExpressionStatement","src":"62460:63:46"}]},{"nodeType":"YulBlock","src":"62543:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"62583:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"62613:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"62620:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62609:3:46"},"nodeType":"YulFunctionCall","src":"62609:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"62603:5:46"},"nodeType":"YulFunctionCall","src":"62603:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"62587:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"62651:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"62656:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"62647:3:46"},"nodeType":"YulFunctionCall","src":"62647:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"62667:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"62673:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"62663:3:46"},"nodeType":"YulFunctionCall","src":"62663:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"62640:6:46"},"nodeType":"YulFunctionCall","src":"62640:38:46"},"nodeType":"YulExpressionStatement","src":"62640:38:46"},{"nodeType":"YulAssignment","src":"62691:79:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"62751:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"62765:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"62699:51:46"},"nodeType":"YulFunctionCall","src":"62699:71:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"62691:4:46"}]}]},{"nodeType":"YulAssignment","src":"62791:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"62798:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"62791:3:46"}]}]},"name":"abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"61941:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"61948:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"61957:3:46","type":""}],"src":"61836:972:46"},{"body":{"nodeType":"YulBlock","src":"62988:504:46","statements":[{"nodeType":"YulVariableDeclaration","src":"62998:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63014:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"63019:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63010:3:46"},"nodeType":"YulFunctionCall","src":"63010:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"63002:4:46","type":""}]},{"nodeType":"YulBlock","src":"63034:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"63072:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"63102:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"63109:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63098:3:46"},"nodeType":"YulFunctionCall","src":"63098:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"63092:5:46"},"nodeType":"YulFunctionCall","src":"63092:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"63076:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"63156:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63174:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"63179:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63170:3:46"},"nodeType":"YulFunctionCall","src":"63170:14:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool","nodeType":"YulIdentifier","src":"63128:27:46"},"nodeType":"YulFunctionCall","src":"63128:57:46"},"nodeType":"YulExpressionStatement","src":"63128:57:46"}]},{"nodeType":"YulBlock","src":"63205:260:46","statements":[{"nodeType":"YulVariableDeclaration","src":"63241:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"63271:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"63278:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63267:3:46"},"nodeType":"YulFunctionCall","src":"63267:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"63261:5:46"},"nodeType":"YulFunctionCall","src":"63261:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"63245:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63309:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"63314:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63305:3:46"},"nodeType":"YulFunctionCall","src":"63305:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"63325:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"63331:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"63321:3:46"},"nodeType":"YulFunctionCall","src":"63321:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"63298:6:46"},"nodeType":"YulFunctionCall","src":"63298:38:46"},"nodeType":"YulExpressionStatement","src":"63298:38:46"},{"nodeType":"YulAssignment","src":"63349:105:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"63435:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"63449:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"63357:77:46"},"nodeType":"YulFunctionCall","src":"63357:97:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"63349:4:46"}]}]},{"nodeType":"YulAssignment","src":"63475:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"63482:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"63475:3:46"}]}]},"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"62967:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"62974:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"62983:3:46","type":""}],"src":"62866:626:46"},{"body":{"nodeType":"YulBlock","src":"63680:520:46","statements":[{"nodeType":"YulVariableDeclaration","src":"63690:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63706:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"63711:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63702:3:46"},"nodeType":"YulFunctionCall","src":"63702:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"63694:4:46","type":""}]},{"nodeType":"YulBlock","src":"63726:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"63764:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"63794:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"63801:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63790:3:46"},"nodeType":"YulFunctionCall","src":"63790:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"63784:5:46"},"nodeType":"YulFunctionCall","src":"63784:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"63768:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"63856:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63874:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"63879:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63870:3:46"},"nodeType":"YulFunctionCall","src":"63870:14:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_library","nodeType":"YulIdentifier","src":"63820:35:46"},"nodeType":"YulFunctionCall","src":"63820:65:46"},"nodeType":"YulExpressionStatement","src":"63820:65:46"}]},{"nodeType":"YulBlock","src":"63905:268:46","statements":[{"nodeType":"YulVariableDeclaration","src":"63941:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"63971:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"63978:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"63967:3:46"},"nodeType":"YulFunctionCall","src":"63967:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"63961:5:46"},"nodeType":"YulFunctionCall","src":"63961:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"63945:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64009:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"64014:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"64005:3:46"},"nodeType":"YulFunctionCall","src":"64005:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"64025:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"64031:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"64021:3:46"},"nodeType":"YulFunctionCall","src":"64021:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"63998:6:46"},"nodeType":"YulFunctionCall","src":"63998:38:46"},"nodeType":"YulExpressionStatement","src":"63998:38:46"},{"nodeType":"YulAssignment","src":"64049:113:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"64143:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"64157:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library","nodeType":"YulIdentifier","src":"64057:85:46"},"nodeType":"YulFunctionCall","src":"64057:105:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"64049:4:46"}]}]},{"nodeType":"YulAssignment","src":"64183:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"64190:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"64183:3:46"}]}]},"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"63659:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"63666:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"63675:3:46","type":""}],"src":"63550:650:46"},{"body":{"nodeType":"YulBlock","src":"64261:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64278:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"64301:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"64283:17:46"},"nodeType":"YulFunctionCall","src":"64283:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64271:6:46"},"nodeType":"YulFunctionCall","src":"64271:37:46"},"nodeType":"YulExpressionStatement","src":"64271:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64249:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64256:3:46","type":""}],"src":"64206:108:46"},{"body":{"nodeType":"YulBlock","src":"64385:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64402:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"64425:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"64407:17:46"},"nodeType":"YulFunctionCall","src":"64407:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64395:6:46"},"nodeType":"YulFunctionCall","src":"64395:37:46"},"nodeType":"YulExpressionStatement","src":"64395:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64373:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64380:3:46","type":""}],"src":"64320:118:46"},{"body":{"nodeType":"YulBlock","src":"64497:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64514:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"64536:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"64519:16:46"},"nodeType":"YulFunctionCall","src":"64519:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64507:6:46"},"nodeType":"YulFunctionCall","src":"64507:36:46"},"nodeType":"YulExpressionStatement","src":"64507:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64485:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64492:3:46","type":""}],"src":"64444:105:46"},{"body":{"nodeType":"YulBlock","src":"64616:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64633:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"64655:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"64638:16:46"},"nodeType":"YulFunctionCall","src":"64638:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64626:6:46"},"nodeType":"YulFunctionCall","src":"64626:36:46"},"nodeType":"YulExpressionStatement","src":"64626:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64604:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64611:3:46","type":""}],"src":"64555:113:46"},{"body":{"nodeType":"YulBlock","src":"64727:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64744:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"64766:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"64749:16:46"},"nodeType":"YulFunctionCall","src":"64749:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64737:6:46"},"nodeType":"YulFunctionCall","src":"64737:36:46"},"nodeType":"YulExpressionStatement","src":"64737:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64715:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64722:3:46","type":""}],"src":"64674:105:46"},{"body":{"nodeType":"YulBlock","src":"64848:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64865:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"64887:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"64870:16:46"},"nodeType":"YulFunctionCall","src":"64870:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64858:6:46"},"nodeType":"YulFunctionCall","src":"64858:36:46"},"nodeType":"YulExpressionStatement","src":"64858:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64836:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64843:3:46","type":""}],"src":"64785:115:46"},{"body":{"nodeType":"YulBlock","src":"64967:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64984:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"65006:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"64989:16:46"},"nodeType":"YulFunctionCall","src":"64989:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64977:6:46"},"nodeType":"YulFunctionCall","src":"64977:36:46"},"nodeType":"YulExpressionStatement","src":"64977:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"64955:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"64962:3:46","type":""}],"src":"64906:113:46"},{"body":{"nodeType":"YulBlock","src":"65076:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"65093:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"65114:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"65098:15:46"},"nodeType":"YulFunctionCall","src":"65098:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"65086:6:46"},"nodeType":"YulFunctionCall","src":"65086:35:46"},"nodeType":"YulExpressionStatement","src":"65086:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"65064:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"65071:3:46","type":""}],"src":"65025:102:46"},{"body":{"nodeType":"YulBlock","src":"65192:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"65209:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"65230:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"65214:15:46"},"nodeType":"YulFunctionCall","src":"65214:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"65202:6:46"},"nodeType":"YulFunctionCall","src":"65202:35:46"},"nodeType":"YulExpressionStatement","src":"65202:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"65180:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"65187:3:46","type":""}],"src":"65133:110:46"},{"body":{"nodeType":"YulBlock","src":"65383:137:46","statements":[{"nodeType":"YulAssignment","src":"65394:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"65481:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"65490:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"65401:79:46"},"nodeType":"YulFunctionCall","src":"65401:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"65394:3:46"}]},{"nodeType":"YulAssignment","src":"65504:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"65511:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"65504:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"65362:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"65368:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"65379:3:46","type":""}],"src":"65249:271:46"},{"body":{"nodeType":"YulBlock","src":"65624:124:46","statements":[{"nodeType":"YulAssignment","src":"65634:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65646:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65657:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65642:3:46"},"nodeType":"YulFunctionCall","src":"65642:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65634:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"65714:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65727:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65738:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65723:3:46"},"nodeType":"YulFunctionCall","src":"65723:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"65670:43:46"},"nodeType":"YulFunctionCall","src":"65670:71:46"},"nodeType":"YulExpressionStatement","src":"65670:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"65596:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"65608:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"65619:4:46","type":""}],"src":"65526:222:46"},{"body":{"nodeType":"YulBlock","src":"65902:225:46","statements":[{"nodeType":"YulAssignment","src":"65912:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65924:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65935:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65920:3:46"},"nodeType":"YulFunctionCall","src":"65920:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65912:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65959:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65970:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65955:3:46"},"nodeType":"YulFunctionCall","src":"65955:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"65978:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"65984:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"65974:3:46"},"nodeType":"YulFunctionCall","src":"65974:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"65948:6:46"},"nodeType":"YulFunctionCall","src":"65948:47:46"},"nodeType":"YulExpressionStatement","src":"65948:47:46"},{"nodeType":"YulAssignment","src":"66004:116:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66106:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"66115:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"66012:93:46"},"nodeType":"YulFunctionCall","src":"66012:108:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66004:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"65874:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"65886:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"65897:4:46","type":""}],"src":"65754:373:46"},{"body":{"nodeType":"YulBlock","src":"66279:223:46","statements":[{"nodeType":"YulAssignment","src":"66289:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66301:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66312:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66297:3:46"},"nodeType":"YulFunctionCall","src":"66297:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66289:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66336:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66347:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66332:3:46"},"nodeType":"YulFunctionCall","src":"66332:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"66355:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"66361:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"66351:3:46"},"nodeType":"YulFunctionCall","src":"66351:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"66325:6:46"},"nodeType":"YulFunctionCall","src":"66325:47:46"},"nodeType":"YulExpressionStatement","src":"66325:47:46"},{"nodeType":"YulAssignment","src":"66381:114:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66481:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"66490:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"66389:91:46"},"nodeType":"YulFunctionCall","src":"66389:106:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66381:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"66251:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"66263:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"66274:4:46","type":""}],"src":"66133:369:46"},{"body":{"nodeType":"YulBlock","src":"66652:221:46","statements":[{"nodeType":"YulAssignment","src":"66662:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66674:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66685:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66670:3:46"},"nodeType":"YulFunctionCall","src":"66670:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66662:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66709:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66720:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66705:3:46"},"nodeType":"YulFunctionCall","src":"66705:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"66728:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"66734:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"66724:3:46"},"nodeType":"YulFunctionCall","src":"66724:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"66698:6:46"},"nodeType":"YulFunctionCall","src":"66698:47:46"},"nodeType":"YulExpressionStatement","src":"66698:47:46"},{"nodeType":"YulAssignment","src":"66754:112:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66852:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"66861:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"66762:89:46"},"nodeType":"YulFunctionCall","src":"66762:104:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66754:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"66624:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"66636:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"66647:4:46","type":""}],"src":"66508:365:46"},{"body":{"nodeType":"YulBlock","src":"67047:245:46","statements":[{"nodeType":"YulAssignment","src":"67057:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67069:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67080:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67065:3:46"},"nodeType":"YulFunctionCall","src":"67065:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67057:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67104:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67115:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67100:3:46"},"nodeType":"YulFunctionCall","src":"67100:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"67123:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"67129:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"67119:3:46"},"nodeType":"YulFunctionCall","src":"67119:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"67093:6:46"},"nodeType":"YulFunctionCall","src":"67093:47:46"},"nodeType":"YulExpressionStatement","src":"67093:47:46"},{"nodeType":"YulAssignment","src":"67149:136:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"67271:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"67280:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"67157:113:46"},"nodeType":"YulFunctionCall","src":"67157:128:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67149:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67019:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67031:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67042:4:46","type":""}],"src":"66879:413:46"},{"body":{"nodeType":"YulBlock","src":"67444:223:46","statements":[{"nodeType":"YulAssignment","src":"67454:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67466:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67477:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67462:3:46"},"nodeType":"YulFunctionCall","src":"67462:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67454:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67501:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67512:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67497:3:46"},"nodeType":"YulFunctionCall","src":"67497:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"67520:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"67526:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"67516:3:46"},"nodeType":"YulFunctionCall","src":"67516:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"67490:6:46"},"nodeType":"YulFunctionCall","src":"67490:47:46"},"nodeType":"YulExpressionStatement","src":"67490:47:46"},{"nodeType":"YulAssignment","src":"67546:114:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"67646:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"67655:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"67554:91:46"},"nodeType":"YulFunctionCall","src":"67554:106:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67546:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67416:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67428:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67439:4:46","type":""}],"src":"67298:369:46"},{"body":{"nodeType":"YulBlock","src":"67765:118:46","statements":[{"nodeType":"YulAssignment","src":"67775:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67787:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67798:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67783:3:46"},"nodeType":"YulFunctionCall","src":"67783:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67775:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"67849:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67862:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67873:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67858:3:46"},"nodeType":"YulFunctionCall","src":"67858:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulIdentifier","src":"67811:37:46"},"nodeType":"YulFunctionCall","src":"67811:65:46"},"nodeType":"YulExpressionStatement","src":"67811:65:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67737:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67749:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67760:4:46","type":""}],"src":"67673:210:46"},{"body":{"nodeType":"YulBlock","src":"67987:124:46","statements":[{"nodeType":"YulAssignment","src":"67997:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68009:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68020:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68005:3:46"},"nodeType":"YulFunctionCall","src":"68005:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67997:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"68077:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68090:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68101:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68086:3:46"},"nodeType":"YulFunctionCall","src":"68086:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"68033:43:46"},"nodeType":"YulFunctionCall","src":"68033:71:46"},"nodeType":"YulExpressionStatement","src":"68033:71:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67959:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67971:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67982:4:46","type":""}],"src":"67889:222:46"},{"body":{"nodeType":"YulBlock","src":"68241:201:46","statements":[{"nodeType":"YulAssignment","src":"68251:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68263:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68274:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68259:3:46"},"nodeType":"YulFunctionCall","src":"68259:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68251:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68298:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68309:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68294:3:46"},"nodeType":"YulFunctionCall","src":"68294:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68317:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"68323:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"68313:3:46"},"nodeType":"YulFunctionCall","src":"68313:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"68287:6:46"},"nodeType":"YulFunctionCall","src":"68287:47:46"},"nodeType":"YulExpressionStatement","src":"68287:47:46"},{"nodeType":"YulAssignment","src":"68343:92:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"68421:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"68430:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"68351:69:46"},"nodeType":"YulFunctionCall","src":"68351:84:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68343:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"68213:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"68225:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"68236:4:46","type":""}],"src":"68117:325:46"},{"body":{"nodeType":"YulBlock","src":"68564:193:46","statements":[{"nodeType":"YulAssignment","src":"68574:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68586:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68597:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68582:3:46"},"nodeType":"YulFunctionCall","src":"68582:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68574:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68621:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68632:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68617:3:46"},"nodeType":"YulFunctionCall","src":"68617:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68640:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"68646:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"68636:3:46"},"nodeType":"YulFunctionCall","src":"68636:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"68610:6:46"},"nodeType":"YulFunctionCall","src":"68610:47:46"},"nodeType":"YulExpressionStatement","src":"68610:47:46"},{"nodeType":"YulAssignment","src":"68666:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"68736:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"68745:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"68674:61:46"},"nodeType":"YulFunctionCall","src":"68674:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68666:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"68536:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"68548:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"68559:4:46","type":""}],"src":"68448:309:46"},{"body":{"nodeType":"YulBlock","src":"68884:198:46","statements":[{"nodeType":"YulAssignment","src":"68894:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68906:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68917:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68902:3:46"},"nodeType":"YulFunctionCall","src":"68902:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68894:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68941:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68952:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68937:3:46"},"nodeType":"YulFunctionCall","src":"68937:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68960:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"68966:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"68956:3:46"},"nodeType":"YulFunctionCall","src":"68956:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"68930:6:46"},"nodeType":"YulFunctionCall","src":"68930:47:46"},"nodeType":"YulExpressionStatement","src":"68930:47:46"},{"nodeType":"YulAssignment","src":"68986:89:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"69061:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"69070:4:46"}],"functionName":{"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"68994:66:46"},"nodeType":"YulFunctionCall","src":"68994:81:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68986:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_storage__to_t_bytes_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"68856:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"68868:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"68879:4:46","type":""}],"src":"68763:319:46"},{"body":{"nodeType":"YulBlock","src":"69201:139:46","statements":[{"nodeType":"YulAssignment","src":"69211:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69223:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69234:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69219:3:46"},"nodeType":"YulFunctionCall","src":"69219:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69211:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"69306:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69319:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69330:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69315:3:46"},"nodeType":"YulFunctionCall","src":"69315:17:46"}],"functionName":{"name":"abi_encode_t_contract$_IERC20_$3611_to_t_address_fromStack","nodeType":"YulIdentifier","src":"69247:58:46"},"nodeType":"YulFunctionCall","src":"69247:86:46"},"nodeType":"YulExpressionStatement","src":"69247:86:46"}]},"name":"abi_encode_tuple_t_contract$_IERC20_$3611__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"69173:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"69185:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"69196:4:46","type":""}],"src":"69088:252:46"},{"body":{"nodeType":"YulBlock","src":"69457:137:46","statements":[{"nodeType":"YulAssignment","src":"69467:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69479:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69490:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69475:3:46"},"nodeType":"YulFunctionCall","src":"69475:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69467:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"69560:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69573:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69584:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69569:3:46"},"nodeType":"YulFunctionCall","src":"69569:17:46"}],"functionName":{"name":"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"69503:56:46"},"nodeType":"YulFunctionCall","src":"69503:84:46"},"nodeType":"YulExpressionStatement","src":"69503:84:46"}]},"name":"abi_encode_tuple_t_enum$_ErrorCodes_$4618__to_t_uint8__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"69429:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"69441:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"69452:4:46","type":""}],"src":"69346:248:46"},{"body":{"nodeType":"YulBlock","src":"69759:290:46","statements":[{"nodeType":"YulAssignment","src":"69769:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69781:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69792:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69777:3:46"},"nodeType":"YulFunctionCall","src":"69777:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69769:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"69862:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69875:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69886:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69871:3:46"},"nodeType":"YulFunctionCall","src":"69871:17:46"}],"functionName":{"name":"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"69805:56:46"},"nodeType":"YulFunctionCall","src":"69805:84:46"},"nodeType":"YulExpressionStatement","src":"69805:84:46"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69910:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69921:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69906:3:46"},"nodeType":"YulFunctionCall","src":"69906:18:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"69930:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"69936:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"69926:3:46"},"nodeType":"YulFunctionCall","src":"69926:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"69899:6:46"},"nodeType":"YulFunctionCall","src":"69899:48:46"},"nodeType":"YulExpressionStatement","src":"69899:48:46"},{"nodeType":"YulAssignment","src":"69956:86:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"70028:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"70037:4:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"69964:63:46"},"nodeType":"YulFunctionCall","src":"69964:78:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69956:4:46"}]}]},"name":"abi_encode_tuple_t_enum$_ErrorCodes_$4618_t_string_memory_ptr__to_t_uint8_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"69723:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"69735:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"69743:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"69754:4:46","type":""}],"src":"69600:449:46"},{"body":{"nodeType":"YulBlock","src":"70167:138:46","statements":[{"nodeType":"YulAssignment","src":"70177:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70189:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70200:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70185:3:46"},"nodeType":"YulFunctionCall","src":"70185:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70177:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"70271:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70284:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70295:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70280:3:46"},"nodeType":"YulFunctionCall","src":"70280:17:46"}],"functionName":{"name":"abi_encode_t_enum$_QueryStatus_$4315_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"70213:57:46"},"nodeType":"YulFunctionCall","src":"70213:85:46"},"nodeType":"YulExpressionStatement","src":"70213:85:46"}]},"name":"abi_encode_tuple_t_enum$_QueryStatus_$4315__to_t_uint8__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70139:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"70151:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70162:4:46","type":""}],"src":"70055:250:46"},{"body":{"nodeType":"YulBlock","src":"70407:122:46","statements":[{"nodeType":"YulAssignment","src":"70417:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70429:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70440:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70425:3:46"},"nodeType":"YulFunctionCall","src":"70425:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70417:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"70495:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70508:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70519:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70504:3:46"},"nodeType":"YulFunctionCall","src":"70504:17:46"}],"functionName":{"name":"abi_encode_t_int128_to_t_int128_fromStack","nodeType":"YulIdentifier","src":"70453:41:46"},"nodeType":"YulFunctionCall","src":"70453:69:46"},"nodeType":"YulExpressionStatement","src":"70453:69:46"}]},"name":"abi_encode_tuple_t_int128__to_t_int128__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70379:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"70391:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70402:4:46","type":""}],"src":"70311:218:46"},{"body":{"nodeType":"YulBlock","src":"70629:120:46","statements":[{"nodeType":"YulAssignment","src":"70639:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70651:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70662:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70647:3:46"},"nodeType":"YulFunctionCall","src":"70647:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70639:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"70715:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70728:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70739:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70724:3:46"},"nodeType":"YulFunctionCall","src":"70724:17:46"}],"functionName":{"name":"abi_encode_t_int32_to_t_int32_fromStack","nodeType":"YulIdentifier","src":"70675:39:46"},"nodeType":"YulFunctionCall","src":"70675:67:46"},"nodeType":"YulExpressionStatement","src":"70675:67:46"}]},"name":"abi_encode_tuple_t_int32__to_t_int32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70601:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"70613:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70624:4:46","type":""}],"src":"70535:214:46"},{"body":{"nodeType":"YulBlock","src":"70873:195:46","statements":[{"nodeType":"YulAssignment","src":"70883:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70895:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70906:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70891:3:46"},"nodeType":"YulFunctionCall","src":"70891:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70883:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70930:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70941:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70926:3:46"},"nodeType":"YulFunctionCall","src":"70926:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"70949:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"70955:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"70945:3:46"},"nodeType":"YulFunctionCall","src":"70945:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"70919:6:46"},"nodeType":"YulFunctionCall","src":"70919:47:46"},"nodeType":"YulExpressionStatement","src":"70919:47:46"},{"nodeType":"YulAssignment","src":"70975:86:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"71047:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"71056:4:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"70983:63:46"},"nodeType":"YulFunctionCall","src":"70983:78:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70975:4:46"}]}]},"name":"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70845:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"70857:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70868:4:46","type":""}],"src":"70755:313:46"},{"body":{"nodeType":"YulBlock","src":"71245:248:46","statements":[{"nodeType":"YulAssignment","src":"71255:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71267:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71278:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71263:3:46"},"nodeType":"YulFunctionCall","src":"71263:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71255:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71302:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71313:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71298:3:46"},"nodeType":"YulFunctionCall","src":"71298:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71321:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"71327:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"71317:3:46"},"nodeType":"YulFunctionCall","src":"71317:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"71291:6:46"},"nodeType":"YulFunctionCall","src":"71291:47:46"},"nodeType":"YulExpressionStatement","src":"71291:47:46"},{"nodeType":"YulAssignment","src":"71347:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71481:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"71355:124:46"},"nodeType":"YulFunctionCall","src":"71355:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71347:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"71225:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"71240:4:46","type":""}],"src":"71074:419:46"},{"body":{"nodeType":"YulBlock","src":"71670:248:46","statements":[{"nodeType":"YulAssignment","src":"71680:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71692:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71703:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71688:3:46"},"nodeType":"YulFunctionCall","src":"71688:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71680:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71727:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71738:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71723:3:46"},"nodeType":"YulFunctionCall","src":"71723:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71746:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"71752:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"71742:3:46"},"nodeType":"YulFunctionCall","src":"71742:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"71716:6:46"},"nodeType":"YulFunctionCall","src":"71716:47:46"},"nodeType":"YulExpressionStatement","src":"71716:47:46"},{"nodeType":"YulAssignment","src":"71772:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71906:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"71780:124:46"},"nodeType":"YulFunctionCall","src":"71780:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71772:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"71650:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"71665:4:46","type":""}],"src":"71499:419:46"},{"body":{"nodeType":"YulBlock","src":"72095:248:46","statements":[{"nodeType":"YulAssignment","src":"72105:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72117:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72128:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72113:3:46"},"nodeType":"YulFunctionCall","src":"72113:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72105:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72152:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72163:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72148:3:46"},"nodeType":"YulFunctionCall","src":"72148:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72171:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"72177:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"72167:3:46"},"nodeType":"YulFunctionCall","src":"72167:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"72141:6:46"},"nodeType":"YulFunctionCall","src":"72141:47:46"},"nodeType":"YulExpressionStatement","src":"72141:47:46"},{"nodeType":"YulAssignment","src":"72197:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72331:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"72205:124:46"},"nodeType":"YulFunctionCall","src":"72205:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72197:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"72075:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"72090:4:46","type":""}],"src":"71924:419:46"},{"body":{"nodeType":"YulBlock","src":"72520:248:46","statements":[{"nodeType":"YulAssignment","src":"72530:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72542:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72553:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72538:3:46"},"nodeType":"YulFunctionCall","src":"72538:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72530:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72577:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72588:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72573:3:46"},"nodeType":"YulFunctionCall","src":"72573:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72596:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"72602:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"72592:3:46"},"nodeType":"YulFunctionCall","src":"72592:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"72566:6:46"},"nodeType":"YulFunctionCall","src":"72566:47:46"},"nodeType":"YulExpressionStatement","src":"72566:47:46"},{"nodeType":"YulAssignment","src":"72622:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72756:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"72630:124:46"},"nodeType":"YulFunctionCall","src":"72630:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72622:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"72500:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"72515:4:46","type":""}],"src":"72349:419:46"},{"body":{"nodeType":"YulBlock","src":"72945:248:46","statements":[{"nodeType":"YulAssignment","src":"72955:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72967:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72978:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72963:3:46"},"nodeType":"YulFunctionCall","src":"72963:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72955:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73002:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73013:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72998:3:46"},"nodeType":"YulFunctionCall","src":"72998:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73021:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"73027:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"73017:3:46"},"nodeType":"YulFunctionCall","src":"73017:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"72991:6:46"},"nodeType":"YulFunctionCall","src":"72991:47:46"},"nodeType":"YulExpressionStatement","src":"72991:47:46"},{"nodeType":"YulAssignment","src":"73047:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73181:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"73055:124:46"},"nodeType":"YulFunctionCall","src":"73055:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73047:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"72925:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"72940:4:46","type":""}],"src":"72774:419:46"},{"body":{"nodeType":"YulBlock","src":"73370:248:46","statements":[{"nodeType":"YulAssignment","src":"73380:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73392:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73403:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73388:3:46"},"nodeType":"YulFunctionCall","src":"73388:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73380:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73427:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73438:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73423:3:46"},"nodeType":"YulFunctionCall","src":"73423:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73446:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"73452:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"73442:3:46"},"nodeType":"YulFunctionCall","src":"73442:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"73416:6:46"},"nodeType":"YulFunctionCall","src":"73416:47:46"},"nodeType":"YulExpressionStatement","src":"73416:47:46"},{"nodeType":"YulAssignment","src":"73472:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73606:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"73480:124:46"},"nodeType":"YulFunctionCall","src":"73480:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73472:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"73350:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"73365:4:46","type":""}],"src":"73199:419:46"},{"body":{"nodeType":"YulBlock","src":"73795:248:46","statements":[{"nodeType":"YulAssignment","src":"73805:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73817:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73828:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73813:3:46"},"nodeType":"YulFunctionCall","src":"73813:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73805:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73852:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73863:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73848:3:46"},"nodeType":"YulFunctionCall","src":"73848:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73871:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"73877:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"73867:3:46"},"nodeType":"YulFunctionCall","src":"73867:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"73841:6:46"},"nodeType":"YulFunctionCall","src":"73841:47:46"},"nodeType":"YulExpressionStatement","src":"73841:47:46"},{"nodeType":"YulAssignment","src":"73897:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"74031:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"73905:124:46"},"nodeType":"YulFunctionCall","src":"73905:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73897:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"73775:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"73790:4:46","type":""}],"src":"73624:419:46"},{"body":{"nodeType":"YulBlock","src":"74220:248:46","statements":[{"nodeType":"YulAssignment","src":"74230:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"74242:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"74253:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74238:3:46"},"nodeType":"YulFunctionCall","src":"74238:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"74230:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"74277:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"74288:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74273:3:46"},"nodeType":"YulFunctionCall","src":"74273:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"74296:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"74302:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"74292:3:46"},"nodeType":"YulFunctionCall","src":"74292:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"74266:6:46"},"nodeType":"YulFunctionCall","src":"74266:47:46"},"nodeType":"YulExpressionStatement","src":"74266:47:46"},{"nodeType":"YulAssignment","src":"74322:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"74456:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"74330:124:46"},"nodeType":"YulFunctionCall","src":"74330:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"74322:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"74200:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"74215:4:46","type":""}],"src":"74049:419:46"},{"body":{"nodeType":"YulBlock","src":"74645:248:46","statements":[{"nodeType":"YulAssignment","src":"74655:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"74667:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"74678:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74663:3:46"},"nodeType":"YulFunctionCall","src":"74663:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"74655:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"74702:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"74713:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74698:3:46"},"nodeType":"YulFunctionCall","src":"74698:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"74721:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"74727:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"74717:3:46"},"nodeType":"YulFunctionCall","src":"74717:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"74691:6:46"},"nodeType":"YulFunctionCall","src":"74691:47:46"},"nodeType":"YulExpressionStatement","src":"74691:47:46"},{"nodeType":"YulAssignment","src":"74747:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"74881:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"74755:124:46"},"nodeType":"YulFunctionCall","src":"74755:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"74747:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"74625:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"74640:4:46","type":""}],"src":"74474:419:46"},{"body":{"nodeType":"YulBlock","src":"75070:248:46","statements":[{"nodeType":"YulAssignment","src":"75080:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"75092:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"75103:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75088:3:46"},"nodeType":"YulFunctionCall","src":"75088:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"75080:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"75127:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"75138:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75123:3:46"},"nodeType":"YulFunctionCall","src":"75123:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"75146:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"75152:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"75142:3:46"},"nodeType":"YulFunctionCall","src":"75142:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"75116:6:46"},"nodeType":"YulFunctionCall","src":"75116:47:46"},"nodeType":"YulExpressionStatement","src":"75116:47:46"},{"nodeType":"YulAssignment","src":"75172:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"75306:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"75180:124:46"},"nodeType":"YulFunctionCall","src":"75180:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"75172:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"75050:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"75065:4:46","type":""}],"src":"74899:419:46"},{"body":{"nodeType":"YulBlock","src":"75495:248:46","statements":[{"nodeType":"YulAssignment","src":"75505:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"75517:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"75528:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75513:3:46"},"nodeType":"YulFunctionCall","src":"75513:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"75505:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"75552:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"75563:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75548:3:46"},"nodeType":"YulFunctionCall","src":"75548:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"75571:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"75577:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"75567:3:46"},"nodeType":"YulFunctionCall","src":"75567:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"75541:6:46"},"nodeType":"YulFunctionCall","src":"75541:47:46"},"nodeType":"YulExpressionStatement","src":"75541:47:46"},{"nodeType":"YulAssignment","src":"75597:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"75731:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"75605:124:46"},"nodeType":"YulFunctionCall","src":"75605:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"75597:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"75475:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"75490:4:46","type":""}],"src":"75324:419:46"},{"body":{"nodeType":"YulBlock","src":"75920:248:46","statements":[{"nodeType":"YulAssignment","src":"75930:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"75942:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"75953:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75938:3:46"},"nodeType":"YulFunctionCall","src":"75938:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"75930:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"75977:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"75988:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75973:3:46"},"nodeType":"YulFunctionCall","src":"75973:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"75996:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"76002:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"75992:3:46"},"nodeType":"YulFunctionCall","src":"75992:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"75966:6:46"},"nodeType":"YulFunctionCall","src":"75966:47:46"},"nodeType":"YulExpressionStatement","src":"75966:47:46"},{"nodeType":"YulAssignment","src":"76022:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"76156:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"76030:124:46"},"nodeType":"YulFunctionCall","src":"76030:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"76022:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"75900:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"75915:4:46","type":""}],"src":"75749:419:46"},{"body":{"nodeType":"YulBlock","src":"76345:248:46","statements":[{"nodeType":"YulAssignment","src":"76355:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"76367:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"76378:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76363:3:46"},"nodeType":"YulFunctionCall","src":"76363:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"76355:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"76402:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"76413:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76398:3:46"},"nodeType":"YulFunctionCall","src":"76398:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"76421:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"76427:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"76417:3:46"},"nodeType":"YulFunctionCall","src":"76417:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"76391:6:46"},"nodeType":"YulFunctionCall","src":"76391:47:46"},"nodeType":"YulExpressionStatement","src":"76391:47:46"},{"nodeType":"YulAssignment","src":"76447:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"76581:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"76455:124:46"},"nodeType":"YulFunctionCall","src":"76455:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"76447:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"76325:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"76340:4:46","type":""}],"src":"76174:419:46"},{"body":{"nodeType":"YulBlock","src":"76770:248:46","statements":[{"nodeType":"YulAssignment","src":"76780:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"76792:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"76803:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76788:3:46"},"nodeType":"YulFunctionCall","src":"76788:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"76780:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"76827:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"76838:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76823:3:46"},"nodeType":"YulFunctionCall","src":"76823:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"76846:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"76852:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"76842:3:46"},"nodeType":"YulFunctionCall","src":"76842:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"76816:6:46"},"nodeType":"YulFunctionCall","src":"76816:47:46"},"nodeType":"YulExpressionStatement","src":"76816:47:46"},{"nodeType":"YulAssignment","src":"76872:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"77006:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"76880:124:46"},"nodeType":"YulFunctionCall","src":"76880:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"76872:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"76750:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"76765:4:46","type":""}],"src":"76599:419:46"},{"body":{"nodeType":"YulBlock","src":"77195:248:46","statements":[{"nodeType":"YulAssignment","src":"77205:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"77217:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"77228:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77213:3:46"},"nodeType":"YulFunctionCall","src":"77213:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"77205:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"77252:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"77263:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77248:3:46"},"nodeType":"YulFunctionCall","src":"77248:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"77271:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"77277:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"77267:3:46"},"nodeType":"YulFunctionCall","src":"77267:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"77241:6:46"},"nodeType":"YulFunctionCall","src":"77241:47:46"},"nodeType":"YulExpressionStatement","src":"77241:47:46"},{"nodeType":"YulAssignment","src":"77297:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"77431:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"77305:124:46"},"nodeType":"YulFunctionCall","src":"77305:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"77297:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"77175:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"77190:4:46","type":""}],"src":"77024:419:46"},{"body":{"nodeType":"YulBlock","src":"77599:227:46","statements":[{"nodeType":"YulAssignment","src":"77609:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"77621:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"77632:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77617:3:46"},"nodeType":"YulFunctionCall","src":"77617:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"77609:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"77656:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"77667:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77652:3:46"},"nodeType":"YulFunctionCall","src":"77652:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"77675:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"77681:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"77671:3:46"},"nodeType":"YulFunctionCall","src":"77671:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"77645:6:46"},"nodeType":"YulFunctionCall","src":"77645:47:46"},"nodeType":"YulExpressionStatement","src":"77645:47:46"},{"nodeType":"YulAssignment","src":"77701:118:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"77805:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"77814:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"77709:95:46"},"nodeType":"YulFunctionCall","src":"77709:110:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"77701:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"77571:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"77583:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"77594:4:46","type":""}],"src":"77449:377:46"},{"body":{"nodeType":"YulBlock","src":"77976:221:46","statements":[{"nodeType":"YulAssignment","src":"77986:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"77998:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"78009:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77994:3:46"},"nodeType":"YulFunctionCall","src":"77994:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"77986:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"78033:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"78044:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78029:3:46"},"nodeType":"YulFunctionCall","src":"78029:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"78052:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"78058:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"78048:3:46"},"nodeType":"YulFunctionCall","src":"78048:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"78022:6:46"},"nodeType":"YulFunctionCall","src":"78022:47:46"},"nodeType":"YulExpressionStatement","src":"78022:47:46"},{"nodeType":"YulAssignment","src":"78078:112:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"78176:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"78185:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Query_$4310_memory_ptr_to_t_struct$_Query_$4310_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"78086:89:46"},"nodeType":"YulFunctionCall","src":"78086:104:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"78078:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_Query_$4310_memory_ptr__to_t_struct$_Query_$4310_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"77948:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"77960:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"77971:4:46","type":""}],"src":"77832:365:46"},{"body":{"nodeType":"YulBlock","src":"78351:175:46","statements":[{"nodeType":"YulAssignment","src":"78361:27:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"78373:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"78384:3:46","type":"","value":"160"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78369:3:46"},"nodeType":"YulFunctionCall","src":"78369:19:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"78361:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"78492:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"78505:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"78516:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78501:3:46"},"nodeType":"YulFunctionCall","src":"78501:17:46"}],"functionName":{"name":"abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"78398:93:46"},"nodeType":"YulFunctionCall","src":"78398:121:46"},"nodeType":"YulExpressionStatement","src":"78398:121:46"}]},"name":"abi_encode_tuple_t_struct$_Request_$4327_memory_ptr__to_t_struct$_Request_$4327_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"78323:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"78335:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"78346:4:46","type":""}],"src":"78203:323:46"},{"body":{"nodeType":"YulBlock","src":"78682:227:46","statements":[{"nodeType":"YulAssignment","src":"78692:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"78704:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"78715:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78700:3:46"},"nodeType":"YulFunctionCall","src":"78700:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"78692:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"78739:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"78750:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78735:3:46"},"nodeType":"YulFunctionCall","src":"78735:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"78758:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"78764:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"78754:3:46"},"nodeType":"YulFunctionCall","src":"78754:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"78728:6:46"},"nodeType":"YulFunctionCall","src":"78728:47:46"},"nodeType":"YulExpressionStatement","src":"78728:47:46"},{"nodeType":"YulAssignment","src":"78784:118:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"78888:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"78897:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"78792:95:46"},"nodeType":"YulFunctionCall","src":"78792:110:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"78784:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_Response_$4336_memory_ptr__to_t_struct$_Response_$4336_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"78654:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"78666:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"78677:4:46","type":""}],"src":"78532:377:46"},{"body":{"nodeType":"YulBlock","src":"79069:231:46","statements":[{"nodeType":"YulAssignment","src":"79079:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"79091:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"79102:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79087:3:46"},"nodeType":"YulFunctionCall","src":"79087:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"79079:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"79126:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"79137:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79122:3:46"},"nodeType":"YulFunctionCall","src":"79122:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"79145:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"79151:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"79141:3:46"},"nodeType":"YulFunctionCall","src":"79141:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79115:6:46"},"nodeType":"YulFunctionCall","src":"79115:47:46"},"nodeType":"YulExpressionStatement","src":"79115:47:46"},{"nodeType":"YulAssignment","src":"79171:122:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"79279:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"79288:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"79179:99:46"},"nodeType":"YulFunctionCall","src":"79179:114:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"79171:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"79041:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"79053:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"79064:4:46","type":""}],"src":"78915:385:46"},{"body":{"nodeType":"YulBlock","src":"79452:223:46","statements":[{"nodeType":"YulAssignment","src":"79462:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"79474:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"79485:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79470:3:46"},"nodeType":"YulFunctionCall","src":"79470:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"79462:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"79509:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"79520:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79505:3:46"},"nodeType":"YulFunctionCall","src":"79505:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"79528:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"79534:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"79524:3:46"},"nodeType":"YulFunctionCall","src":"79524:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79498:6:46"},"nodeType":"YulFunctionCall","src":"79498:47:46"},"nodeType":"YulExpressionStatement","src":"79498:47:46"},{"nodeType":"YulAssignment","src":"79554:114:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"79654:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"79663:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"79562:91:46"},"nodeType":"YulFunctionCall","src":"79562:106:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"79554:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"79424:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"79436:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"79447:4:46","type":""}],"src":"79306:369:46"},{"body":{"nodeType":"YulBlock","src":"79779:124:46","statements":[{"nodeType":"YulAssignment","src":"79789:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"79801:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"79812:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79797:3:46"},"nodeType":"YulFunctionCall","src":"79797:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"79789:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"79869:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"79882:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"79893:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79878:3:46"},"nodeType":"YulFunctionCall","src":"79878:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"79825:43:46"},"nodeType":"YulFunctionCall","src":"79825:71:46"},"nodeType":"YulExpressionStatement","src":"79825:71:46"}]},"name":"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"79751:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"79763:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"79774:4:46","type":""}],"src":"79681:222:46"},{"body":{"nodeType":"YulBlock","src":"80035:206:46","statements":[{"nodeType":"YulAssignment","src":"80045:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"80057:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"80068:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80053:3:46"},"nodeType":"YulFunctionCall","src":"80053:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"80045:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"80125:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"80138:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"80149:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80134:3:46"},"nodeType":"YulFunctionCall","src":"80134:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"80081:43:46"},"nodeType":"YulFunctionCall","src":"80081:71:46"},"nodeType":"YulExpressionStatement","src":"80081:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"80206:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"80219:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"80230:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80215:3:46"},"nodeType":"YulFunctionCall","src":"80215:18:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"80162:43:46"},"nodeType":"YulFunctionCall","src":"80162:72:46"},"nodeType":"YulExpressionStatement","src":"80162:72:46"}]},"name":"abi_encode_tuple_t_uint256_t_address__to_t_uint256_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"79999:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"80011:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"80019:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"80030:4:46","type":""}],"src":"79909:332:46"},{"body":{"nodeType":"YulBlock","src":"80446:330:46","statements":[{"nodeType":"YulAssignment","src":"80456:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"80468:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"80479:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80464:3:46"},"nodeType":"YulFunctionCall","src":"80464:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"80456:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"80536:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"80549:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"80560:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80545:3:46"},"nodeType":"YulFunctionCall","src":"80545:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"80492:43:46"},"nodeType":"YulFunctionCall","src":"80492:71:46"},"nodeType":"YulExpressionStatement","src":"80492:71:46"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"80584:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"80595:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80580:3:46"},"nodeType":"YulFunctionCall","src":"80580:18:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"80604:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"80610:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"80600:3:46"},"nodeType":"YulFunctionCall","src":"80600:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"80573:6:46"},"nodeType":"YulFunctionCall","src":"80573:48:46"},"nodeType":"YulExpressionStatement","src":"80573:48:46"},{"nodeType":"YulAssignment","src":"80630:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"80764:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"80638:124:46"},"nodeType":"YulFunctionCall","src":"80638:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"80630:4:46"}]}]},"name":"abi_encode_tuple_t_uint256_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b__to_t_uint256_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"80418:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"80430:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"80441:4:46","type":""}],"src":"80247:529:46"},{"body":{"nodeType":"YulBlock","src":"80981:330:46","statements":[{"nodeType":"YulAssignment","src":"80991:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"81003:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"81014:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80999:3:46"},"nodeType":"YulFunctionCall","src":"80999:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"80991:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"81071:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"81084:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"81095:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81080:3:46"},"nodeType":"YulFunctionCall","src":"81080:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"81027:43:46"},"nodeType":"YulFunctionCall","src":"81027:71:46"},"nodeType":"YulExpressionStatement","src":"81027:71:46"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"81119:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"81130:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81115:3:46"},"nodeType":"YulFunctionCall","src":"81115:18:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"81139:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"81145:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"81135:3:46"},"nodeType":"YulFunctionCall","src":"81135:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"81108:6:46"},"nodeType":"YulFunctionCall","src":"81108:48:46"},"nodeType":"YulExpressionStatement","src":"81108:48:46"},{"nodeType":"YulAssignment","src":"81165:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"81299:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"81173:124:46"},"nodeType":"YulFunctionCall","src":"81173:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"81165:4:46"}]}]},"name":"abi_encode_tuple_t_uint256_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e__to_t_uint256_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"80953:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"80965:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"80976:4:46","type":""}],"src":"80782:529:46"},{"body":{"nodeType":"YulBlock","src":"81516:330:46","statements":[{"nodeType":"YulAssignment","src":"81526:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"81538:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"81549:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81534:3:46"},"nodeType":"YulFunctionCall","src":"81534:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"81526:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"81606:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"81619:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"81630:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81615:3:46"},"nodeType":"YulFunctionCall","src":"81615:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"81562:43:46"},"nodeType":"YulFunctionCall","src":"81562:71:46"},"nodeType":"YulExpressionStatement","src":"81562:71:46"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"81654:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"81665:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81650:3:46"},"nodeType":"YulFunctionCall","src":"81650:18:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"81674:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"81680:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"81670:3:46"},"nodeType":"YulFunctionCall","src":"81670:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"81643:6:46"},"nodeType":"YulFunctionCall","src":"81643:48:46"},"nodeType":"YulExpressionStatement","src":"81643:48:46"},{"nodeType":"YulAssignment","src":"81700:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"81834:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"81708:124:46"},"nodeType":"YulFunctionCall","src":"81708:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"81700:4:46"}]}]},"name":"abi_encode_tuple_t_uint256_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801__to_t_uint256_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"81488:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"81500:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"81511:4:46","type":""}],"src":"81317:529:46"},{"body":{"nodeType":"YulBlock","src":"82051:330:46","statements":[{"nodeType":"YulAssignment","src":"82061:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"82073:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"82084:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"82069:3:46"},"nodeType":"YulFunctionCall","src":"82069:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"82061:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"82141:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"82154:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"82165:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"82150:3:46"},"nodeType":"YulFunctionCall","src":"82150:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"82097:43:46"},"nodeType":"YulFunctionCall","src":"82097:71:46"},"nodeType":"YulExpressionStatement","src":"82097:71:46"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"82189:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"82200:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"82185:3:46"},"nodeType":"YulFunctionCall","src":"82185:18:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"82209:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"82215:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"82205:3:46"},"nodeType":"YulFunctionCall","src":"82205:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82178:6:46"},"nodeType":"YulFunctionCall","src":"82178:48:46"},"nodeType":"YulExpressionStatement","src":"82178:48:46"},{"nodeType":"YulAssignment","src":"82235:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"82369:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"82243:124:46"},"nodeType":"YulFunctionCall","src":"82243:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"82235:4:46"}]}]},"name":"abi_encode_tuple_t_uint256_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847__to_t_uint256_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"82023:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"82035:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"82046:4:46","type":""}],"src":"81852:529:46"},{"body":{"nodeType":"YulBlock","src":"82483:122:46","statements":[{"nodeType":"YulAssignment","src":"82493:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"82505:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"82516:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"82501:3:46"},"nodeType":"YulFunctionCall","src":"82501:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"82493:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"82571:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"82584:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"82595:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"82580:3:46"},"nodeType":"YulFunctionCall","src":"82580:17:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"82529:41:46"},"nodeType":"YulFunctionCall","src":"82529:69:46"},"nodeType":"YulExpressionStatement","src":"82529:69:46"}]},"name":"abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"82455:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"82467:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"82478:4:46","type":""}],"src":"82387:218:46"},{"body":{"nodeType":"YulBlock","src":"82652:88:46","statements":[{"nodeType":"YulAssignment","src":"82662:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"82672:18:46"},"nodeType":"YulFunctionCall","src":"82672:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"82662:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"82721:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"82729:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"82701:19:46"},"nodeType":"YulFunctionCall","src":"82701:33:46"},"nodeType":"YulExpressionStatement","src":"82701:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"82636:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"82645:6:46","type":""}],"src":"82611:129:46"},{"body":{"nodeType":"YulBlock","src":"82786:35:46","statements":[{"nodeType":"YulAssignment","src":"82796:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82812:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"82806:5:46"},"nodeType":"YulFunctionCall","src":"82806:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"82796:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"82779:6:46","type":""}],"src":"82746:75:46"},{"body":{"nodeType":"YulBlock","src":"82909:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"83014:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"83016:16:46"},"nodeType":"YulFunctionCall","src":"83016:18:46"},"nodeType":"YulExpressionStatement","src":"83016:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"82986:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"82994:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"82983:2:46"},"nodeType":"YulFunctionCall","src":"82983:30:46"},"nodeType":"YulIf","src":"82980:56:46"},{"nodeType":"YulAssignment","src":"83046:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"83058:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"83066:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"83054:3:46"},"nodeType":"YulFunctionCall","src":"83054:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"83046:4:46"}]},{"nodeType":"YulAssignment","src":"83108:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"83120:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"83126:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"83116:3:46"},"nodeType":"YulFunctionCall","src":"83116:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"83108:4:46"}]}]},"name":"array_allocation_size_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"82893:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"82904:4:46","type":""}],"src":"82827:311:46"},{"body":{"nodeType":"YulBlock","src":"83225:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"83330:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"83332:16:46"},"nodeType":"YulFunctionCall","src":"83332:18:46"},"nodeType":"YulExpressionStatement","src":"83332:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"83302:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"83310:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"83299:2:46"},"nodeType":"YulFunctionCall","src":"83299:30:46"},"nodeType":"YulIf","src":"83296:56:46"},{"nodeType":"YulAssignment","src":"83362:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"83374:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"83382:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"83370:3:46"},"nodeType":"YulFunctionCall","src":"83370:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"83362:4:46"}]},{"nodeType":"YulAssignment","src":"83424:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"83436:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"83442:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"83432:3:46"},"nodeType":"YulFunctionCall","src":"83432:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"83424:4:46"}]}]},"name":"array_allocation_size_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"83209:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"83220:4:46","type":""}],"src":"83144:310:46"},{"body":{"nodeType":"YulBlock","src":"83540:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"83645:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"83647:16:46"},"nodeType":"YulFunctionCall","src":"83647:18:46"},"nodeType":"YulExpressionStatement","src":"83647:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"83617:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"83625:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"83614:2:46"},"nodeType":"YulFunctionCall","src":"83614:30:46"},"nodeType":"YulIf","src":"83611:56:46"},{"nodeType":"YulAssignment","src":"83677:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"83689:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"83697:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"83685:3:46"},"nodeType":"YulFunctionCall","src":"83685:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"83677:4:46"}]},{"nodeType":"YulAssignment","src":"83739:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"83751:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"83757:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"83747:3:46"},"nodeType":"YulFunctionCall","src":"83747:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"83739:4:46"}]}]},"name":"array_allocation_size_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"83524:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"83535:4:46","type":""}],"src":"83460:309:46"},{"body":{"nodeType":"YulBlock","src":"83867:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"83972:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"83974:16:46"},"nodeType":"YulFunctionCall","src":"83974:18:46"},"nodeType":"YulExpressionStatement","src":"83974:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"83944:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"83952:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"83941:2:46"},"nodeType":"YulFunctionCall","src":"83941:30:46"},"nodeType":"YulIf","src":"83938:56:46"},{"nodeType":"YulAssignment","src":"84004:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84016:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84024:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"84012:3:46"},"nodeType":"YulFunctionCall","src":"84012:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84004:4:46"}]},{"nodeType":"YulAssignment","src":"84066:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"84078:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"84084:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84074:3:46"},"nodeType":"YulFunctionCall","src":"84074:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84066:4:46"}]}]},"name":"array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"83851:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"83862:4:46","type":""}],"src":"83775:321:46"},{"body":{"nodeType":"YulBlock","src":"84213:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"84318:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"84320:16:46"},"nodeType":"YulFunctionCall","src":"84320:18:46"},"nodeType":"YulExpressionStatement","src":"84320:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84290:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84298:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"84287:2:46"},"nodeType":"YulFunctionCall","src":"84287:30:46"},"nodeType":"YulIf","src":"84284:56:46"},{"nodeType":"YulAssignment","src":"84350:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84362:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84370:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"84358:3:46"},"nodeType":"YulFunctionCall","src":"84358:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84350:4:46"}]},{"nodeType":"YulAssignment","src":"84412:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"84424:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"84430:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84420:3:46"},"nodeType":"YulFunctionCall","src":"84420:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84412:4:46"}]}]},"name":"array_allocation_size_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"84197:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"84208:4:46","type":""}],"src":"84102:340:46"},{"body":{"nodeType":"YulBlock","src":"84529:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"84634:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"84636:16:46"},"nodeType":"YulFunctionCall","src":"84636:18:46"},"nodeType":"YulExpressionStatement","src":"84636:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84606:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84614:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"84603:2:46"},"nodeType":"YulFunctionCall","src":"84603:30:46"},"nodeType":"YulIf","src":"84600:56:46"},{"nodeType":"YulAssignment","src":"84666:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84678:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84686:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"84674:3:46"},"nodeType":"YulFunctionCall","src":"84674:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84666:4:46"}]},{"nodeType":"YulAssignment","src":"84728:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"84740:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"84746:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84736:3:46"},"nodeType":"YulFunctionCall","src":"84736:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84728:4:46"}]}]},"name":"array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"84513:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"84524:4:46","type":""}],"src":"84448:310:46"},{"body":{"nodeType":"YulBlock","src":"84830:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"84935:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"84937:16:46"},"nodeType":"YulFunctionCall","src":"84937:18:46"},"nodeType":"YulExpressionStatement","src":"84937:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84907:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84915:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"84904:2:46"},"nodeType":"YulFunctionCall","src":"84904:30:46"},"nodeType":"YulIf","src":"84901:56:46"},{"nodeType":"YulAssignment","src":"84967:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"84997:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"84975:21:46"},"nodeType":"YulFunctionCall","src":"84975:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"84967:4:46"}]},{"nodeType":"YulAssignment","src":"85041:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"85053:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"85059:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85049:3:46"},"nodeType":"YulFunctionCall","src":"85049:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"85041:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"84814:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"84825:4:46","type":""}],"src":"84764:307:46"},{"body":{"nodeType":"YulBlock","src":"85144:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"85249:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"85251:16:46"},"nodeType":"YulFunctionCall","src":"85251:18:46"},"nodeType":"YulExpressionStatement","src":"85251:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"85221:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85229:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"85218:2:46"},"nodeType":"YulFunctionCall","src":"85218:30:46"},"nodeType":"YulIf","src":"85215:56:46"},{"nodeType":"YulAssignment","src":"85281:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"85311:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"85289:21:46"},"nodeType":"YulFunctionCall","src":"85289:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"85281:4:46"}]},{"nodeType":"YulAssignment","src":"85355:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"85367:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"85373:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85363:3:46"},"nodeType":"YulFunctionCall","src":"85363:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"85355:4:46"}]}]},"name":"array_allocation_size_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"85128:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"85139:4:46","type":""}],"src":"85077:308:46"},{"body":{"nodeType":"YulBlock","src":"85463:60:46","statements":[{"nodeType":"YulAssignment","src":"85473:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"85481:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85473:4:46"}]},{"nodeType":"YulAssignment","src":"85494:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"85506:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"85511:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85502:3:46"},"nodeType":"YulFunctionCall","src":"85502:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85494:4:46"}]}]},"name":"array_dataslot_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"85450:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"85458:4:46","type":""}],"src":"85391:132:46"},{"body":{"nodeType":"YulBlock","src":"85600:60:46","statements":[{"nodeType":"YulAssignment","src":"85610:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"85618:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85610:4:46"}]},{"nodeType":"YulAssignment","src":"85631:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"85643:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"85648:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85639:3:46"},"nodeType":"YulFunctionCall","src":"85639:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85631:4:46"}]}]},"name":"array_dataslot_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"85587:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"85595:4:46","type":""}],"src":"85529:131:46"},{"body":{"nodeType":"YulBlock","src":"85736:60:46","statements":[{"nodeType":"YulAssignment","src":"85746:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"85754:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85746:4:46"}]},{"nodeType":"YulAssignment","src":"85767:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"85779:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"85784:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85775:3:46"},"nodeType":"YulFunctionCall","src":"85775:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85767:4:46"}]}]},"name":"array_dataslot_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"85723:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"85731:4:46","type":""}],"src":"85666:130:46"},{"body":{"nodeType":"YulBlock","src":"85884:60:46","statements":[{"nodeType":"YulAssignment","src":"85894:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"85902:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85894:4:46"}]},{"nodeType":"YulAssignment","src":"85915:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"85927:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"85932:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85923:3:46"},"nodeType":"YulFunctionCall","src":"85923:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"85915:4:46"}]}]},"name":"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"85871:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"85879:4:46","type":""}],"src":"85802:142:46"},{"body":{"nodeType":"YulBlock","src":"86021:60:46","statements":[{"nodeType":"YulAssignment","src":"86031:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"86039:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"86031:4:46"}]},{"nodeType":"YulAssignment","src":"86052:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"86064:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"86069:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86060:3:46"},"nodeType":"YulFunctionCall","src":"86060:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"86052:4:46"}]}]},"name":"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"86008:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"86016:4:46","type":""}],"src":"85950:131:46"},{"body":{"nodeType":"YulBlock","src":"86140:87:46","statements":[{"nodeType":"YulAssignment","src":"86150:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"86158:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"86150:4:46"}]},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"86178:1:46","type":"","value":"0"},{"name":"ptr","nodeType":"YulIdentifier","src":"86181:3:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86171:6:46"},"nodeType":"YulFunctionCall","src":"86171:14:46"},"nodeType":"YulExpressionStatement","src":"86171:14:46"},{"nodeType":"YulAssignment","src":"86194:26:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"86212:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"86215:4:46","type":"","value":"0x20"}],"functionName":{"name":"keccak256","nodeType":"YulIdentifier","src":"86202:9:46"},"nodeType":"YulFunctionCall","src":"86202:18:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"86194:4:46"}]}]},"name":"array_dataslot_t_bytes_storage","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"86127:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"86135:4:46","type":""}],"src":"86087:140:46"},{"body":{"nodeType":"YulBlock","src":"86307:40:46","statements":[{"nodeType":"YulAssignment","src":"86318:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"86334:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86328:5:46"},"nodeType":"YulFunctionCall","src":"86328:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"86318:6:46"}]}]},"name":"array_length_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86290:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86300:6:46","type":""}],"src":"86233:114:46"},{"body":{"nodeType":"YulBlock","src":"86426:40:46","statements":[{"nodeType":"YulAssignment","src":"86437:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"86453:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86447:5:46"},"nodeType":"YulFunctionCall","src":"86447:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"86437:6:46"}]}]},"name":"array_length_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86409:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86419:6:46","type":""}],"src":"86353:113:46"},{"body":{"nodeType":"YulBlock","src":"86544:40:46","statements":[{"nodeType":"YulAssignment","src":"86555:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"86571:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86565:5:46"},"nodeType":"YulFunctionCall","src":"86565:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"86555:6:46"}]}]},"name":"array_length_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86527:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86537:6:46","type":""}],"src":"86472:112:46"},{"body":{"nodeType":"YulBlock","src":"86674:40:46","statements":[{"nodeType":"YulAssignment","src":"86685:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"86701:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86695:5:46"},"nodeType":"YulFunctionCall","src":"86695:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"86685:6:46"}]}]},"name":"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86657:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86667:6:46","type":""}],"src":"86590:124:46"},{"body":{"nodeType":"YulBlock","src":"86793:40:46","statements":[{"nodeType":"YulAssignment","src":"86804:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"86820:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86814:5:46"},"nodeType":"YulFunctionCall","src":"86814:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"86804:6:46"}]}]},"name":"array_length_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86776:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86786:6:46","type":""}],"src":"86720:113:46"},{"body":{"nodeType":"YulBlock","src":"86897:40:46","statements":[{"nodeType":"YulAssignment","src":"86908:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"86924:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"86918:5:46"},"nodeType":"YulFunctionCall","src":"86918:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"86908:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86880:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86890:6:46","type":""}],"src":"86839:98:46"},{"body":{"nodeType":"YulBlock","src":"87002:40:46","statements":[{"nodeType":"YulAssignment","src":"87013:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"87029:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"87023:5:46"},"nodeType":"YulFunctionCall","src":"87023:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"87013:6:46"}]}]},"name":"array_length_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"86985:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"86995:6:46","type":""}],"src":"86943:99:46"},{"body":{"nodeType":"YulBlock","src":"87123:38:46","statements":[{"nodeType":"YulAssignment","src":"87133:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"87145:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"87150:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87141:3:46"},"nodeType":"YulFunctionCall","src":"87141:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"87133:4:46"}]}]},"name":"array_nextElement_t_array$_t_address_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"87110:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"87118:4:46","type":""}],"src":"87048:113:46"},{"body":{"nodeType":"YulBlock","src":"87241:38:46","statements":[{"nodeType":"YulAssignment","src":"87251:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"87263:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"87268:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87259:3:46"},"nodeType":"YulFunctionCall","src":"87259:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"87251:4:46"}]}]},"name":"array_nextElement_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"87228:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"87236:4:46","type":""}],"src":"87167:112:46"},{"body":{"nodeType":"YulBlock","src":"87358:38:46","statements":[{"nodeType":"YulAssignment","src":"87368:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"87380:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"87385:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87376:3:46"},"nodeType":"YulFunctionCall","src":"87376:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"87368:4:46"}]}]},"name":"array_nextElement_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"87345:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"87353:4:46","type":""}],"src":"87285:111:46"},{"body":{"nodeType":"YulBlock","src":"87487:38:46","statements":[{"nodeType":"YulAssignment","src":"87497:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"87509:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"87514:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87505:3:46"},"nodeType":"YulFunctionCall","src":"87505:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"87497:4:46"}]}]},"name":"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"87474:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"87482:4:46","type":""}],"src":"87402:123:46"},{"body":{"nodeType":"YulBlock","src":"87605:38:46","statements":[{"nodeType":"YulAssignment","src":"87615:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"87627:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"87632:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87623:3:46"},"nodeType":"YulFunctionCall","src":"87623:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"87615:4:46"}]}]},"name":"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"87592:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"87600:4:46","type":""}],"src":"87531:112:46"},{"body":{"nodeType":"YulBlock","src":"87760:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"87777:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"87782:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87770:6:46"},"nodeType":"YulFunctionCall","src":"87770:19:46"},"nodeType":"YulExpressionStatement","src":"87770:19:46"},{"nodeType":"YulAssignment","src":"87798:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"87817:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"87822:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87813:3:46"},"nodeType":"YulFunctionCall","src":"87813:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"87798:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"87732:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"87737:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"87748:11:46","type":""}],"src":"87649:184:46"},{"body":{"nodeType":"YulBlock","src":"87949:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"87966:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"87971:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87959:6:46"},"nodeType":"YulFunctionCall","src":"87959:19:46"},"nodeType":"YulExpressionStatement","src":"87959:19:46"},{"nodeType":"YulAssignment","src":"87987:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88006:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"88011:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88002:3:46"},"nodeType":"YulFunctionCall","src":"88002:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"87987:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"87921:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"87926:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"87937:11:46","type":""}],"src":"87839:183:46"},{"body":{"nodeType":"YulBlock","src":"88137:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88154:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"88159:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88147:6:46"},"nodeType":"YulFunctionCall","src":"88147:19:46"},"nodeType":"YulExpressionStatement","src":"88147:19:46"},{"nodeType":"YulAssignment","src":"88175:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88194:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"88199:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88190:3:46"},"nodeType":"YulFunctionCall","src":"88190:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"88175:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"88109:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"88114:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"88125:11:46","type":""}],"src":"88028:182:46"},{"body":{"nodeType":"YulBlock","src":"88337:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88354:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"88359:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88347:6:46"},"nodeType":"YulFunctionCall","src":"88347:19:46"},"nodeType":"YulExpressionStatement","src":"88347:19:46"},{"nodeType":"YulAssignment","src":"88375:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88394:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"88399:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88390:3:46"},"nodeType":"YulFunctionCall","src":"88390:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"88375:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"88309:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"88314:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"88325:11:46","type":""}],"src":"88216:194:46"},{"body":{"nodeType":"YulBlock","src":"88526:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88543:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"88548:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88536:6:46"},"nodeType":"YulFunctionCall","src":"88536:19:46"},"nodeType":"YulExpressionStatement","src":"88536:19:46"},{"nodeType":"YulAssignment","src":"88564:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88583:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"88588:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88579:3:46"},"nodeType":"YulFunctionCall","src":"88579:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"88564:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"88498:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"88503:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"88514:11:46","type":""}],"src":"88416:183:46"},{"body":{"nodeType":"YulBlock","src":"88690:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88707:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"88712:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88700:6:46"},"nodeType":"YulFunctionCall","src":"88700:19:46"},"nodeType":"YulExpressionStatement","src":"88700:19:46"},{"nodeType":"YulAssignment","src":"88728:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88747:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"88752:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88743:3:46"},"nodeType":"YulFunctionCall","src":"88743:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"88728:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"88662:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"88667:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"88678:11:46","type":""}],"src":"88605:158:46"},{"body":{"nodeType":"YulBlock","src":"88864:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88881:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"88886:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88874:6:46"},"nodeType":"YulFunctionCall","src":"88874:19:46"},"nodeType":"YulExpressionStatement","src":"88874:19:46"},{"nodeType":"YulAssignment","src":"88902:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"88921:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"88926:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88917:3:46"},"nodeType":"YulFunctionCall","src":"88917:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"88902:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"88836:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"88841:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"88852:11:46","type":""}],"src":"88769:168:46"},{"body":{"nodeType":"YulBlock","src":"89046:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89063:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"89068:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89056:6:46"},"nodeType":"YulFunctionCall","src":"89056:19:46"},"nodeType":"YulExpressionStatement","src":"89056:19:46"},{"nodeType":"YulAssignment","src":"89084:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89103:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"89108:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89099:3:46"},"nodeType":"YulFunctionCall","src":"89099:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"89084:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"89018:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"89023:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"89034:11:46","type":""}],"src":"88943:176:46"},{"body":{"nodeType":"YulBlock","src":"89218:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89235:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"89240:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89228:6:46"},"nodeType":"YulFunctionCall","src":"89228:19:46"},"nodeType":"YulExpressionStatement","src":"89228:19:46"},{"nodeType":"YulAssignment","src":"89256:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89275:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"89280:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89271:3:46"},"nodeType":"YulFunctionCall","src":"89271:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"89256:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"89190:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"89195:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"89206:11:46","type":""}],"src":"89125:166:46"},{"body":{"nodeType":"YulBlock","src":"89410:34:46","statements":[{"nodeType":"YulAssignment","src":"89420:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"89435:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"89420:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"89382:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"89387:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"89398:11:46","type":""}],"src":"89297:147:46"},{"body":{"nodeType":"YulBlock","src":"89536:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89553:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"89558:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89546:6:46"},"nodeType":"YulFunctionCall","src":"89546:19:46"},"nodeType":"YulExpressionStatement","src":"89546:19:46"},{"nodeType":"YulAssignment","src":"89574:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89593:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"89598:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89589:3:46"},"nodeType":"YulFunctionCall","src":"89589:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"89574:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"89508:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"89513:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"89524:11:46","type":""}],"src":"89450:159:46"},{"body":{"nodeType":"YulBlock","src":"89711:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89728:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"89733:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89721:6:46"},"nodeType":"YulFunctionCall","src":"89721:19:46"},"nodeType":"YulExpressionStatement","src":"89721:19:46"},{"nodeType":"YulAssignment","src":"89749:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"89768:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"89773:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89764:3:46"},"nodeType":"YulFunctionCall","src":"89764:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"89749:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"89683:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"89688:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"89699:11:46","type":""}],"src":"89615:169:46"},{"body":{"nodeType":"YulBlock","src":"89834:261:46","statements":[{"nodeType":"YulAssignment","src":"89844:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"89867:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"89849:17:46"},"nodeType":"YulFunctionCall","src":"89849:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"89844:1:46"}]},{"nodeType":"YulAssignment","src":"89878:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"89901:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"89883:17:46"},"nodeType":"YulFunctionCall","src":"89883:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"89878:1:46"}]},{"body":{"nodeType":"YulBlock","src":"90041:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"90043:16:46"},"nodeType":"YulFunctionCall","src":"90043:18:46"},"nodeType":"YulExpressionStatement","src":"90043:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"89962:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"89969:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"90037:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"89965:3:46"},"nodeType":"YulFunctionCall","src":"89965:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"89959:2:46"},"nodeType":"YulFunctionCall","src":"89959:81:46"},"nodeType":"YulIf","src":"89956:107:46"},{"nodeType":"YulAssignment","src":"90073:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"90084:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"90087:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90080:3:46"},"nodeType":"YulFunctionCall","src":"90080:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"90073:3:46"}]}]},"name":"checked_add_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"89821:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"89824:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"89830:3:46","type":""}],"src":"89790:305:46"},{"body":{"nodeType":"YulBlock","src":"90149:300:46","statements":[{"nodeType":"YulAssignment","src":"90159:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"90182:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"90164:17:46"},"nodeType":"YulFunctionCall","src":"90164:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"90159:1:46"}]},{"nodeType":"YulAssignment","src":"90193:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"90216:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"90198:17:46"},"nodeType":"YulFunctionCall","src":"90198:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"90193:1:46"}]},{"body":{"nodeType":"YulBlock","src":"90391:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"90393:16:46"},"nodeType":"YulFunctionCall","src":"90393:18:46"},"nodeType":"YulExpressionStatement","src":"90393:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"90303:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"90296:6:46"},"nodeType":"YulFunctionCall","src":"90296:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"90289:6:46"},"nodeType":"YulFunctionCall","src":"90289:17:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"90311:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"90318:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"x","nodeType":"YulIdentifier","src":"90386:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"90314:3:46"},"nodeType":"YulFunctionCall","src":"90314:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"90308:2:46"},"nodeType":"YulFunctionCall","src":"90308:81:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"90285:3:46"},"nodeType":"YulFunctionCall","src":"90285:105:46"},"nodeType":"YulIf","src":"90282:131:46"},{"nodeType":"YulAssignment","src":"90423:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"90438:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"90441:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"90434:3:46"},"nodeType":"YulFunctionCall","src":"90434:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"90423:7:46"}]}]},"name":"checked_mul_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"90132:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"90135:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"90141:7:46","type":""}],"src":"90101:348:46"},{"body":{"nodeType":"YulBlock","src":"90500:51:46","statements":[{"nodeType":"YulAssignment","src":"90510:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"90539:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"90521:17:46"},"nodeType":"YulFunctionCall","src":"90521:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"90510:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"90482:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"90492:7:46","type":""}],"src":"90455:96:46"},{"body":{"nodeType":"YulBlock","src":"90599:48:46","statements":[{"nodeType":"YulAssignment","src":"90609:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"90634:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"90627:6:46"},"nodeType":"YulFunctionCall","src":"90627:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"90620:6:46"},"nodeType":"YulFunctionCall","src":"90620:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"90609:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"90581:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"90591:7:46","type":""}],"src":"90557:90:46"},{"body":{"nodeType":"YulBlock","src":"90698:32:46","statements":[{"nodeType":"YulAssignment","src":"90708:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"90719:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"90708:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"90680:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"90690:7:46","type":""}],"src":"90653:77:46"},{"body":{"nodeType":"YulBlock","src":"90804:51:46","statements":[{"nodeType":"YulAssignment","src":"90814:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"90843:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"90825:17:46"},"nodeType":"YulFunctionCall","src":"90825:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"90814:7:46"}]}]},"name":"cleanup_t_contract$_IWitnetRequest_$3829","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"90786:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"90796:7:46","type":""}],"src":"90736:119:46"},{"body":{"nodeType":"YulBlock","src":"90921:81:46","statements":[{"nodeType":"YulAssignment","src":"90931:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"90942:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"90931:7:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"90990:5:46"}],"functionName":{"name":"validator_assert_t_enum$_ErrorCodes_$4618","nodeType":"YulIdentifier","src":"90948:41:46"},"nodeType":"YulFunctionCall","src":"90948:48:46"},"nodeType":"YulExpressionStatement","src":"90948:48:46"}]},"name":"cleanup_t_enum$_ErrorCodes_$4618","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"90903:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"90913:7:46","type":""}],"src":"90861:141:46"},{"body":{"nodeType":"YulBlock","src":"91069:82:46","statements":[{"nodeType":"YulAssignment","src":"91079:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"91090:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91079:7:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"91139:5:46"}],"functionName":{"name":"validator_assert_t_enum$_QueryStatus_$4315","nodeType":"YulIdentifier","src":"91096:42:46"},"nodeType":"YulFunctionCall","src":"91096:49:46"},"nodeType":"YulExpressionStatement","src":"91096:49:46"}]},"name":"cleanup_t_enum$_QueryStatus_$4315","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91051:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91061:7:46","type":""}],"src":"91008:143:46"},{"body":{"nodeType":"YulBlock","src":"91201:48:46","statements":[{"nodeType":"YulAssignment","src":"91211:32:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"91233:2:46","type":"","value":"15"},{"name":"value","nodeType":"YulIdentifier","src":"91237:5:46"}],"functionName":{"name":"signextend","nodeType":"YulIdentifier","src":"91222:10:46"},"nodeType":"YulFunctionCall","src":"91222:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91211:7:46"}]}]},"name":"cleanup_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91183:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91193:7:46","type":""}],"src":"91157:92:46"},{"body":{"nodeType":"YulBlock","src":"91298:47:46","statements":[{"nodeType":"YulAssignment","src":"91308:31:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"91330:1:46","type":"","value":"3"},{"name":"value","nodeType":"YulIdentifier","src":"91333:5:46"}],"functionName":{"name":"signextend","nodeType":"YulIdentifier","src":"91319:10:46"},"nodeType":"YulFunctionCall","src":"91319:20:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91308:7:46"}]}]},"name":"cleanup_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91280:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91290:7:46","type":""}],"src":"91255:90:46"},{"body":{"nodeType":"YulBlock","src":"91396:81:46","statements":[{"nodeType":"YulAssignment","src":"91406:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"91421:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"91428:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"91417:3:46"},"nodeType":"YulFunctionCall","src":"91417:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91406:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91378:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91388:7:46","type":""}],"src":"91351:126:46"},{"body":{"nodeType":"YulBlock","src":"91528:32:46","statements":[{"nodeType":"YulAssignment","src":"91538:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"91549:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91538:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91510:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91520:7:46","type":""}],"src":"91483:77:46"},{"body":{"nodeType":"YulBlock","src":"91610:49:46","statements":[{"nodeType":"YulAssignment","src":"91620:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"91635:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"91642:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"91631:3:46"},"nodeType":"YulFunctionCall","src":"91631:22:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91620:7:46"}]}]},"name":"cleanup_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91592:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91602:7:46","type":""}],"src":"91566:93:46"},{"body":{"nodeType":"YulBlock","src":"91709:57:46","statements":[{"nodeType":"YulAssignment","src":"91719:41:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"91734:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"91741:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"91730:3:46"},"nodeType":"YulFunctionCall","src":"91730:30:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91719:7:46"}]}]},"name":"cleanup_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91691:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91701:7:46","type":""}],"src":"91665:101:46"},{"body":{"nodeType":"YulBlock","src":"91815:43:46","statements":[{"nodeType":"YulAssignment","src":"91825:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"91840:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"91847:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"91836:3:46"},"nodeType":"YulFunctionCall","src":"91836:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"91825:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91797:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"91807:7:46","type":""}],"src":"91772:86:46"},{"body":{"nodeType":"YulBlock","src":"91939:66:46","statements":[{"nodeType":"YulAssignment","src":"91949:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"91993:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"91962:30:46"},"nodeType":"YulFunctionCall","src":"91962:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"91949:9:46"}]}]},"name":"convert_t_contract$_IERC20_$3611_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"91919:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"91929:9:46","type":""}],"src":"91864:141:46"},{"body":{"nodeType":"YulBlock","src":"92094:66:46","statements":[{"nodeType":"YulAssignment","src":"92104:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92148:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"92117:30:46"},"nodeType":"YulFunctionCall","src":"92117:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"92104:9:46"}]}]},"name":"convert_t_contract$_IWitnetRequest_$3829_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92074:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"92084:9:46","type":""}],"src":"92011:149:46"},{"body":{"nodeType":"YulBlock","src":"92239:68:46","statements":[{"nodeType":"YulAssignment","src":"92249:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92295:5:46"}],"functionName":{"name":"cleanup_t_enum$_ErrorCodes_$4618","nodeType":"YulIdentifier","src":"92262:32:46"},"nodeType":"YulFunctionCall","src":"92262:39:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"92249:9:46"}]}]},"name":"convert_t_enum$_ErrorCodes_$4618_to_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92219:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"92229:9:46","type":""}],"src":"92166:141:46"},{"body":{"nodeType":"YulBlock","src":"92387:69:46","statements":[{"nodeType":"YulAssignment","src":"92397:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92444:5:46"}],"functionName":{"name":"cleanup_t_enum$_QueryStatus_$4315","nodeType":"YulIdentifier","src":"92410:33:46"},"nodeType":"YulFunctionCall","src":"92410:40:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"92397:9:46"}]}]},"name":"convert_t_enum$_QueryStatus_$4315_to_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92367:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"92377:9:46","type":""}],"src":"92313:143:46"},{"body":{"nodeType":"YulBlock","src":"92522:66:46","statements":[{"nodeType":"YulAssignment","src":"92532:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92576:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"92545:30:46"},"nodeType":"YulFunctionCall","src":"92545:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"92532:9:46"}]}]},"name":"convert_t_uint160_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92502:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"92512:9:46","type":""}],"src":"92462:126:46"},{"body":{"nodeType":"YulBlock","src":"92654:53:46","statements":[{"nodeType":"YulAssignment","src":"92664:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92695:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"92677:17:46"},"nodeType":"YulFunctionCall","src":"92677:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"92664:9:46"}]}]},"name":"convert_t_uint160_to_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92634:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"92644:9:46","type":""}],"src":"92594:113:46"},{"body":{"nodeType":"YulBlock","src":"92764:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"92787:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"92792:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"92797:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"92774:12:46"},"nodeType":"YulFunctionCall","src":"92774:30:46"},"nodeType":"YulExpressionStatement","src":"92774:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"92845:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"92850:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92841:3:46"},"nodeType":"YulFunctionCall","src":"92841:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"92859:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"92834:6:46"},"nodeType":"YulFunctionCall","src":"92834:27:46"},"nodeType":"YulExpressionStatement","src":"92834:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"92746:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"92751:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"92756:6:46","type":""}],"src":"92713:154:46"},{"body":{"nodeType":"YulBlock","src":"92922:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"92932:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"92941:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"92936:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"93001:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"93026:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"93031:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"93022:3:46"},"nodeType":"YulFunctionCall","src":"93022:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"93045:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"93050:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"93041:3:46"},"nodeType":"YulFunctionCall","src":"93041:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"93035:5:46"},"nodeType":"YulFunctionCall","src":"93035:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"93015:6:46"},"nodeType":"YulFunctionCall","src":"93015:39:46"},"nodeType":"YulExpressionStatement","src":"93015:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"92962:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"92965:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"92959:2:46"},"nodeType":"YulFunctionCall","src":"92959:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"92973:19:46","statements":[{"nodeType":"YulAssignment","src":"92975:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"92984:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"92987:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92980:3:46"},"nodeType":"YulFunctionCall","src":"92980:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"92975:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"92955:3:46","statements":[]},"src":"92951:113:46"},{"body":{"nodeType":"YulBlock","src":"93098:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"93148:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"93153:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"93144:3:46"},"nodeType":"YulFunctionCall","src":"93144:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"93162:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"93137:6:46"},"nodeType":"YulFunctionCall","src":"93137:27:46"},"nodeType":"YulExpressionStatement","src":"93137:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"93079:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"93082:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"93076:2:46"},"nodeType":"YulFunctionCall","src":"93076:13:46"},"nodeType":"YulIf","src":"93073:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"92904:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"92909:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"92914:6:46","type":""}],"src":"92873:307:46"},{"body":{"nodeType":"YulBlock","src":"93237:269:46","statements":[{"nodeType":"YulAssignment","src":"93247:22:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"93261:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"93267:1:46","type":"","value":"2"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"93257:3:46"},"nodeType":"YulFunctionCall","src":"93257:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"93247:6:46"}]},{"nodeType":"YulVariableDeclaration","src":"93278:38:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"93308:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"93314:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"93304:3:46"},"nodeType":"YulFunctionCall","src":"93304:12:46"},"variables":[{"name":"outOfPlaceEncoding","nodeType":"YulTypedName","src":"93282:18:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"93355:51:46","statements":[{"nodeType":"YulAssignment","src":"93369:27:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"93383:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"93391:4:46","type":"","value":"0x7f"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"93379:3:46"},"nodeType":"YulFunctionCall","src":"93379:17:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"93369:6:46"}]}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"93335:18:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93328:6:46"},"nodeType":"YulFunctionCall","src":"93328:26:46"},"nodeType":"YulIf","src":"93325:81:46"},{"body":{"nodeType":"YulBlock","src":"93458:42:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x22","nodeType":"YulIdentifier","src":"93472:16:46"},"nodeType":"YulFunctionCall","src":"93472:18:46"},"nodeType":"YulExpressionStatement","src":"93472:18:46"}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"93422:18:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"93445:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"93453:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"93442:2:46"},"nodeType":"YulFunctionCall","src":"93442:14:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93419:2:46"},"nodeType":"YulFunctionCall","src":"93419:38:46"},"nodeType":"YulIf","src":"93416:84:46"}]},"name":"extract_byte_array_length","nodeType":"YulFunctionDefinition","parameters":[{"name":"data","nodeType":"YulTypedName","src":"93221:4:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"93230:6:46","type":""}],"src":"93186:320:46"},{"body":{"nodeType":"YulBlock","src":"93555:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"93565:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"93587:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"93617:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"93595:21:46"},"nodeType":"YulFunctionCall","src":"93595:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"93583:3:46"},"nodeType":"YulFunctionCall","src":"93583:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"93569:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"93734:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"93736:16:46"},"nodeType":"YulFunctionCall","src":"93736:18:46"},"nodeType":"YulExpressionStatement","src":"93736:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"93677:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"93689:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"93674:2:46"},"nodeType":"YulFunctionCall","src":"93674:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"93713:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"93725:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"93710:2:46"},"nodeType":"YulFunctionCall","src":"93710:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"93671:2:46"},"nodeType":"YulFunctionCall","src":"93671:62:46"},"nodeType":"YulIf","src":"93668:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93772:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"93776:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"93765:6:46"},"nodeType":"YulFunctionCall","src":"93765:22:46"},"nodeType":"YulExpressionStatement","src":"93765:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"93541:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"93549:4:46","type":""}],"src":"93512:281:46"},{"body":{"nodeType":"YulBlock","src":"93842:190:46","statements":[{"nodeType":"YulAssignment","src":"93852:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93879:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"93861:17:46"},"nodeType":"YulFunctionCall","src":"93861:24:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"93852:5:46"}]},{"body":{"nodeType":"YulBlock","src":"93975:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"93977:16:46"},"nodeType":"YulFunctionCall","src":"93977:18:46"},"nodeType":"YulExpressionStatement","src":"93977:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93900:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"93907:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93897:2:46"},"nodeType":"YulFunctionCall","src":"93897:77:46"},"nodeType":"YulIf","src":"93894:103:46"},{"nodeType":"YulAssignment","src":"94006:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"94017:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"94024:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"94013:3:46"},"nodeType":"YulFunctionCall","src":"94013:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"94006:3:46"}]}]},"name":"increment_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93828:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"93838:3:46","type":""}],"src":"93799:233:46"},{"body":{"nodeType":"YulBlock","src":"94066:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94083:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94086:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94076:6:46"},"nodeType":"YulFunctionCall","src":"94076:88:46"},"nodeType":"YulExpressionStatement","src":"94076:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94180:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"94183:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94173:6:46"},"nodeType":"YulFunctionCall","src":"94173:15:46"},"nodeType":"YulExpressionStatement","src":"94173:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94204:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94207:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"94197:6:46"},"nodeType":"YulFunctionCall","src":"94197:15:46"},"nodeType":"YulExpressionStatement","src":"94197:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"94038:180:46"},{"body":{"nodeType":"YulBlock","src":"94252:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94269:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94272:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94262:6:46"},"nodeType":"YulFunctionCall","src":"94262:88:46"},"nodeType":"YulExpressionStatement","src":"94262:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94366:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"94369:4:46","type":"","value":"0x21"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94359:6:46"},"nodeType":"YulFunctionCall","src":"94359:15:46"},"nodeType":"YulExpressionStatement","src":"94359:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94390:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94393:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"94383:6:46"},"nodeType":"YulFunctionCall","src":"94383:15:46"},"nodeType":"YulExpressionStatement","src":"94383:15:46"}]},"name":"panic_error_0x21","nodeType":"YulFunctionDefinition","src":"94224:180:46"},{"body":{"nodeType":"YulBlock","src":"94438:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94455:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94458:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94448:6:46"},"nodeType":"YulFunctionCall","src":"94448:88:46"},"nodeType":"YulExpressionStatement","src":"94448:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94552:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"94555:4:46","type":"","value":"0x22"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94545:6:46"},"nodeType":"YulFunctionCall","src":"94545:15:46"},"nodeType":"YulExpressionStatement","src":"94545:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94576:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94579:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"94569:6:46"},"nodeType":"YulFunctionCall","src":"94569:15:46"},"nodeType":"YulExpressionStatement","src":"94569:15:46"}]},"name":"panic_error_0x22","nodeType":"YulFunctionDefinition","src":"94410:180:46"},{"body":{"nodeType":"YulBlock","src":"94624:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94641:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94644:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94634:6:46"},"nodeType":"YulFunctionCall","src":"94634:88:46"},"nodeType":"YulExpressionStatement","src":"94634:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94738:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"94741:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94731:6:46"},"nodeType":"YulFunctionCall","src":"94731:15:46"},"nodeType":"YulExpressionStatement","src":"94731:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94762:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94765:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"94755:6:46"},"nodeType":"YulFunctionCall","src":"94755:15:46"},"nodeType":"YulExpressionStatement","src":"94755:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"94596:180:46"},{"body":{"nodeType":"YulBlock","src":"94810:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94827:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94830:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94820:6:46"},"nodeType":"YulFunctionCall","src":"94820:88:46"},"nodeType":"YulExpressionStatement","src":"94820:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94924:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"94927:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"94917:6:46"},"nodeType":"YulFunctionCall","src":"94917:15:46"},"nodeType":"YulExpressionStatement","src":"94917:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"94948:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"94951:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"94941:6:46"},"nodeType":"YulFunctionCall","src":"94941:15:46"},"nodeType":"YulExpressionStatement","src":"94941:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"94782:180:46"},{"body":{"nodeType":"YulBlock","src":"95007:144:46","statements":[{"body":{"nodeType":"YulBlock","src":"95044:101:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95073:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95076:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95079:1:46","type":"","value":"4"}],"functionName":{"name":"returndatacopy","nodeType":"YulIdentifier","src":"95058:14:46"},"nodeType":"YulFunctionCall","src":"95058:23:46"},"nodeType":"YulExpressionStatement","src":"95058:23:46"},{"nodeType":"YulAssignment","src":"95094:41:46","value":{"arguments":[{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95132:1:46","type":"","value":"0"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"95126:5:46"},"nodeType":"YulFunctionCall","src":"95126:8:46"}],"functionName":{"name":"shift_right_224_unsigned","nodeType":"YulIdentifier","src":"95101:24:46"},"nodeType":"YulFunctionCall","src":"95101:34:46"},"variableNames":[{"name":"sig","nodeType":"YulIdentifier","src":"95094:3:46"}]}]},"condition":{"arguments":[{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"95023:14:46"},"nodeType":"YulFunctionCall","src":"95023:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"95041:1:46","type":"","value":"3"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"95020:2:46"},"nodeType":"YulFunctionCall","src":"95020:23:46"},"nodeType":"YulIf","src":"95017:128:46"}]},"name":"return_data_selector","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"sig","nodeType":"YulTypedName","src":"95003:3:46","type":""}],"src":"94968:183:46"},{"body":{"nodeType":"YulBlock","src":"95246:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95263:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95266:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95256:6:46"},"nodeType":"YulFunctionCall","src":"95256:12:46"},"nodeType":"YulExpressionStatement","src":"95256:12:46"}]},"name":"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490","nodeType":"YulFunctionDefinition","src":"95157:117:46"},{"body":{"nodeType":"YulBlock","src":"95369:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95386:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95389:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95379:6:46"},"nodeType":"YulFunctionCall","src":"95379:12:46"},"nodeType":"YulExpressionStatement","src":"95379:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"95280:117:46"},{"body":{"nodeType":"YulBlock","src":"95492:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95509:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95512:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95502:6:46"},"nodeType":"YulFunctionCall","src":"95502:12:46"},"nodeType":"YulExpressionStatement","src":"95502:12:46"}]},"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulFunctionDefinition","src":"95403:117:46"},{"body":{"nodeType":"YulBlock","src":"95615:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95632:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95635:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95625:6:46"},"nodeType":"YulFunctionCall","src":"95625:12:46"},"nodeType":"YulExpressionStatement","src":"95625:12:46"}]},"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulFunctionDefinition","src":"95526:117:46"},{"body":{"nodeType":"YulBlock","src":"95738:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95755:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95758:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95748:6:46"},"nodeType":"YulFunctionCall","src":"95748:12:46"},"nodeType":"YulExpressionStatement","src":"95748:12:46"}]},"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulFunctionDefinition","src":"95649:117:46"},{"body":{"nodeType":"YulBlock","src":"95861:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"95878:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"95881:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95871:6:46"},"nodeType":"YulFunctionCall","src":"95871:12:46"},"nodeType":"YulExpressionStatement","src":"95871:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"95772:117:46"},{"body":{"nodeType":"YulBlock","src":"95984:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"96001:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"96004:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"95994:6:46"},"nodeType":"YulFunctionCall","src":"95994:12:46"},"nodeType":"YulExpressionStatement","src":"95994:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"95895:117:46"},{"body":{"nodeType":"YulBlock","src":"96107:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"96124:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"96127:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"96117:6:46"},"nodeType":"YulFunctionCall","src":"96117:12:46"},"nodeType":"YulExpressionStatement","src":"96117:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"96018:117:46"},{"body":{"nodeType":"YulBlock","src":"96189:54:46","statements":[{"nodeType":"YulAssignment","src":"96199:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"96217:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"96224:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"96213:3:46"},"nodeType":"YulFunctionCall","src":"96213:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"96233:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"96229:3:46"},"nodeType":"YulFunctionCall","src":"96229:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"96209:3:46"},"nodeType":"YulFunctionCall","src":"96209:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"96199:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"96172:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"96182:6:46","type":""}],"src":"96141:102:46"},{"body":{"nodeType":"YulBlock","src":"96302:53:46","statements":[{"nodeType":"YulAssignment","src":"96312:36:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"96337:3:46","type":"","value":"224"},{"name":"value","nodeType":"YulIdentifier","src":"96342:5:46"}],"functionName":{"name":"shr","nodeType":"YulIdentifier","src":"96333:3:46"},"nodeType":"YulFunctionCall","src":"96333:15:46"},"variableNames":[{"name":"newValue","nodeType":"YulIdentifier","src":"96312:8:46"}]}]},"name":"shift_right_224_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"96283:5:46","type":""}],"returnVariables":[{"name":"newValue","nodeType":"YulTypedName","src":"96293:8:46","type":""}],"src":"96249:106:46"},{"body":{"nodeType":"YulBlock","src":"96467:125:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"96489:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"96497:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"96485:3:46"},"nodeType":"YulFunctionCall","src":"96485:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"96501:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"96478:6:46"},"nodeType":"YulFunctionCall","src":"96478:58:46"},"nodeType":"YulExpressionStatement","src":"96478:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"96557:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"96565:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"96553:3:46"},"nodeType":"YulFunctionCall","src":"96553:15:46"},{"hexValue":"206e756c6c20736372697074","kind":"string","nodeType":"YulLiteral","src":"96570:14:46","type":"","value":" null script"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"96546:6:46"},"nodeType":"YulFunctionCall","src":"96546:39:46"},"nodeType":"YulExpressionStatement","src":"96546:39:46"}]},"name":"store_literal_in_memory_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"96459:6:46","type":""}],"src":"96361:231:46"},{"body":{"nodeType":"YulBlock","src":"96704:122:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"96726:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"96734:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"96722:3:46"},"nodeType":"YulFunctionCall","src":"96722:14:46"},{"hexValue":"5769746e657452657175657374426f6172643a206e6f207472616e7366657273","kind":"string","nodeType":"YulLiteral","src":"96738:34:46","type":"","value":"WitnetRequestBoard: no transfers"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"96715:6:46"},"nodeType":"YulFunctionCall","src":"96715:58:46"},"nodeType":"YulExpressionStatement","src":"96715:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"96794:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"96802:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"96790:3:46"},"nodeType":"YulFunctionCall","src":"96790:15:46"},{"hexValue":"206163636570746564","kind":"string","nodeType":"YulLiteral","src":"96807:11:46","type":"","value":" accepted"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"96783:6:46"},"nodeType":"YulFunctionCall","src":"96783:36:46"},"nodeType":"YulExpressionStatement","src":"96783:36:46"}]},"name":"store_literal_in_memory_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"96696:6:46","type":""}],"src":"96598:228:46"},{"body":{"nodeType":"YulBlock","src":"96938:127:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"96960:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"96968:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"96956:3:46"},"nodeType":"YulFunctionCall","src":"96956:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"96972:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"96949:6:46"},"nodeType":"YulFunctionCall","src":"96949:58:46"},"nodeType":"YulExpressionStatement","src":"96949:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97028:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97036:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97024:3:46"},"nodeType":"YulFunctionCall","src":"97024:15:46"},{"hexValue":"206261642074696d657374616d70","kind":"string","nodeType":"YulLiteral","src":"97041:16:46","type":"","value":" bad timestamp"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97017:6:46"},"nodeType":"YulFunctionCall","src":"97017:41:46"},"nodeType":"YulExpressionStatement","src":"97017:41:46"}]},"name":"store_literal_in_memory_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"96930:6:46","type":""}],"src":"96832:233:46"},{"body":{"nodeType":"YulBlock","src":"97177:71:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97199:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97207:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97195:3:46"},"nodeType":"YulFunctionCall","src":"97195:14:46"},{"hexValue":"5769746e6574426f617264446174613a206f6e6c79206f776e6572","kind":"string","nodeType":"YulLiteral","src":"97211:29:46","type":"","value":"WitnetBoardData: only owner"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97188:6:46"},"nodeType":"YulFunctionCall","src":"97188:53:46"},"nodeType":"YulExpressionStatement","src":"97188:53:46"}]},"name":"store_literal_in_memory_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"97169:6:46","type":""}],"src":"97071:177:46"},{"body":{"nodeType":"YulBlock","src":"97360:130:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97382:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97390:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97378:3:46"},"nodeType":"YulFunctionCall","src":"97378:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c654465666175","kind":"string","nodeType":"YulLiteral","src":"97394:34:46","type":"","value":"WitnetRequestBoardTrustableDefau"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97371:6:46"},"nodeType":"YulFunctionCall","src":"97371:58:46"},"nodeType":"YulExpressionStatement","src":"97371:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97450:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97458:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97446:3:46"},"nodeType":"YulFunctionCall","src":"97446:15:46"},{"hexValue":"6c743a206261642074696d657374616d70","kind":"string","nodeType":"YulLiteral","src":"97463:19:46","type":"","value":"lt: bad timestamp"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97439:6:46"},"nodeType":"YulFunctionCall","src":"97439:44:46"},"nodeType":"YulExpressionStatement","src":"97439:44:46"}]},"name":"store_literal_in_memory_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"97352:6:46","type":""}],"src":"97254:236:46"},{"body":{"nodeType":"YulBlock","src":"97602:125:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97624:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97632:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97620:3:46"},"nodeType":"YulFunctionCall","src":"97620:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"97636:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97613:6:46"},"nodeType":"YulFunctionCall","src":"97613:58:46"},"nodeType":"YulExpressionStatement","src":"97613:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97692:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97700:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97688:3:46"},"nodeType":"YulFunctionCall","src":"97688:15:46"},{"hexValue":"206261642071756572794964","kind":"string","nodeType":"YulLiteral","src":"97705:14:46","type":"","value":" bad queryId"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97681:6:46"},"nodeType":"YulFunctionCall","src":"97681:39:46"},"nodeType":"YulExpressionStatement","src":"97681:39:46"}]},"name":"store_literal_in_memory_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"97594:6:46","type":""}],"src":"97496:231:46"},{"body":{"nodeType":"YulBlock","src":"97839:126:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97861:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97869:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97857:3:46"},"nodeType":"YulFunctionCall","src":"97857:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"97873:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97850:6:46"},"nodeType":"YulFunctionCall","src":"97850:58:46"},"nodeType":"YulExpressionStatement","src":"97850:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"97929:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"97937:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"97925:3:46"},"nodeType":"YulFunctionCall","src":"97925:15:46"},{"hexValue":"20656d70747920736372697074","kind":"string","nodeType":"YulLiteral","src":"97942:15:46","type":"","value":" empty script"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"97918:6:46"},"nodeType":"YulFunctionCall","src":"97918:40:46"},"nodeType":"YulExpressionStatement","src":"97918:40:46"}]},"name":"store_literal_in_memory_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"97831:6:46","type":""}],"src":"97733:232:46"},{"body":{"nodeType":"YulBlock","src":"98077:128:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98099:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98107:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98095:3:46"},"nodeType":"YulFunctionCall","src":"98095:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"98111:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98088:6:46"},"nodeType":"YulFunctionCall","src":"98088:58:46"},"nodeType":"YulExpressionStatement","src":"98088:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98167:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98175:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98163:3:46"},"nodeType":"YulFunctionCall","src":"98163:15:46"},{"hexValue":"206f6e6c7920726571756573746572","kind":"string","nodeType":"YulLiteral","src":"98180:17:46","type":"","value":" only requester"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98156:6:46"},"nodeType":"YulFunctionCall","src":"98156:42:46"},"nodeType":"YulExpressionStatement","src":"98156:42:46"}]},"name":"store_literal_in_memory_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"98069:6:46","type":""}],"src":"97971:234:46"},{"body":{"nodeType":"YulBlock","src":"98317:128:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98339:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98347:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98335:3:46"},"nodeType":"YulFunctionCall","src":"98335:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"98351:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98328:6:46"},"nodeType":"YulFunctionCall","src":"98328:58:46"},"nodeType":"YulExpressionStatement","src":"98328:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98407:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98415:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98403:3:46"},"nodeType":"YulFunctionCall","src":"98403:15:46"},{"hexValue":"2072657761726420746f6f206c6f77","kind":"string","nodeType":"YulLiteral","src":"98420:17:46","type":"","value":" reward too low"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98396:6:46"},"nodeType":"YulFunctionCall","src":"98396:42:46"},"nodeType":"YulExpressionStatement","src":"98396:42:46"}]},"name":"store_literal_in_memory_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"98309:6:46","type":""}],"src":"98211:234:46"},{"body":{"nodeType":"YulBlock","src":"98557:144:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98579:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98587:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98575:3:46"},"nodeType":"YulFunctionCall","src":"98575:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"98591:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98568:6:46"},"nodeType":"YulFunctionCall","src":"98568:58:46"},"nodeType":"YulExpressionStatement","src":"98568:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98647:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98655:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98643:3:46"},"nodeType":"YulFunctionCall","src":"98643:15:46"},{"hexValue":"2062797465636f6465206368616e67656420616674657220706f7374696e67","kind":"string","nodeType":"YulLiteral","src":"98660:33:46","type":"","value":" bytecode changed after posting"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98636:6:46"},"nodeType":"YulFunctionCall","src":"98636:58:46"},"nodeType":"YulExpressionStatement","src":"98636:58:46"}]},"name":"store_literal_in_memory_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"98549:6:46","type":""}],"src":"98451:250:46"},{"body":{"nodeType":"YulBlock","src":"98813:184:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98835:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98843:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98831:3:46"},"nodeType":"YulFunctionCall","src":"98831:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c654465666175","kind":"string","nodeType":"YulLiteral","src":"98847:34:46","type":"","value":"WitnetRequestBoardTrustableDefau"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98824:6:46"},"nodeType":"YulFunctionCall","src":"98824:58:46"},"nodeType":"YulExpressionStatement","src":"98824:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98903:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98911:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98899:3:46"},"nodeType":"YulFunctionCall","src":"98899:15:46"},{"hexValue":"6c743a205769746e65742064725478486173682063616e6e6f74206265207a65","kind":"string","nodeType":"YulLiteral","src":"98916:34:46","type":"","value":"lt: Witnet drTxHash cannot be ze"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98892:6:46"},"nodeType":"YulFunctionCall","src":"98892:59:46"},"nodeType":"YulExpressionStatement","src":"98892:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"98972:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"98980:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"98968:3:46"},"nodeType":"YulFunctionCall","src":"98968:15:46"},{"hexValue":"726f","kind":"string","nodeType":"YulLiteral","src":"98985:4:46","type":"","value":"ro"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"98961:6:46"},"nodeType":"YulFunctionCall","src":"98961:29:46"},"nodeType":"YulExpressionStatement","src":"98961:29:46"}]},"name":"store_literal_in_memory_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"98805:6:46","type":""}],"src":"98707:290:46"},{"body":{"nodeType":"YulBlock","src":"99109:123:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99131:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99139:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99127:3:46"},"nodeType":"YulFunctionCall","src":"99127:14:46"},{"hexValue":"5769746e6574426f6172644461746141434c733a20756e617574686f72697a65","kind":"string","nodeType":"YulLiteral","src":"99143:34:46","type":"","value":"WitnetBoardDataACLs: unauthorize"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99120:6:46"},"nodeType":"YulFunctionCall","src":"99120:58:46"},"nodeType":"YulExpressionStatement","src":"99120:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99199:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99207:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99195:3:46"},"nodeType":"YulFunctionCall","src":"99195:15:46"},{"hexValue":"64207265706f72746572","kind":"string","nodeType":"YulLiteral","src":"99212:12:46","type":"","value":"d reporter"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99188:6:46"},"nodeType":"YulFunctionCall","src":"99188:37:46"},"nodeType":"YulExpressionStatement","src":"99188:37:46"}]},"name":"store_literal_in_memory_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"99101:6:46","type":""}],"src":"99003:229:46"},{"body":{"nodeType":"YulBlock","src":"99344:126:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99366:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99374:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99362:3:46"},"nodeType":"YulFunctionCall","src":"99362:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"99378:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99355:6:46"},"nodeType":"YulFunctionCall","src":"99355:58:46"},"nodeType":"YulExpressionStatement","src":"99355:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99434:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99442:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99430:3:46"},"nodeType":"YulFunctionCall","src":"99430:15:46"},{"hexValue":"20626164206472547848617368","kind":"string","nodeType":"YulLiteral","src":"99447:15:46","type":"","value":" bad drTxHash"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99423:6:46"},"nodeType":"YulFunctionCall","src":"99423:40:46"},"nodeType":"YulExpressionStatement","src":"99423:40:46"}]},"name":"store_literal_in_memory_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"99336:6:46","type":""}],"src":"99238:232:46"},{"body":{"nodeType":"YulBlock","src":"99582:139:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99604:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99612:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99600:3:46"},"nodeType":"YulFunctionCall","src":"99600:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c654465666175","kind":"string","nodeType":"YulLiteral","src":"99616:34:46","type":"","value":"WitnetRequestBoardTrustableDefau"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99593:6:46"},"nodeType":"YulFunctionCall","src":"99593:58:46"},"nodeType":"YulExpressionStatement","src":"99593:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99672:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99680:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99668:3:46"},"nodeType":"YulFunctionCall","src":"99668:15:46"},{"hexValue":"6c743a20726573756c742063616e6e6f7420626520656d707479","kind":"string","nodeType":"YulLiteral","src":"99685:28:46","type":"","value":"lt: result cannot be empty"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99661:6:46"},"nodeType":"YulFunctionCall","src":"99661:53:46"},"nodeType":"YulExpressionStatement","src":"99661:53:46"}]},"name":"store_literal_in_memory_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"99574:6:46","type":""}],"src":"99476:245:46"},{"body":{"nodeType":"YulBlock","src":"99833:133:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99855:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99863:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99851:3:46"},"nodeType":"YulFunctionCall","src":"99851:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"99867:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99844:6:46"},"nodeType":"YulFunctionCall","src":"99844:58:46"},"nodeType":"YulExpressionStatement","src":"99844:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"99923:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"99931:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"99919:3:46"},"nodeType":"YulFunctionCall","src":"99919:15:46"},{"hexValue":"20616c726561647920696e697469616c697a6564","kind":"string","nodeType":"YulLiteral","src":"99936:22:46","type":"","value":" already initialized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"99912:6:46"},"nodeType":"YulFunctionCall","src":"99912:47:46"},"nodeType":"YulExpressionStatement","src":"99912:47:46"}]},"name":"store_literal_in_memory_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"99825:6:46","type":""}],"src":"99727:239:46"},{"body":{"nodeType":"YulBlock","src":"100078:124:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100100:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100108:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100096:3:46"},"nodeType":"YulFunctionCall","src":"100096:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"100112:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100089:6:46"},"nodeType":"YulFunctionCall","src":"100089:58:46"},"nodeType":"YulExpressionStatement","src":"100089:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100168:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100176:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100164:3:46"},"nodeType":"YulFunctionCall","src":"100164:15:46"},{"hexValue":"206f6e6c79206f776e6572","kind":"string","nodeType":"YulLiteral","src":"100181:13:46","type":"","value":" only owner"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100157:6:46"},"nodeType":"YulFunctionCall","src":"100157:38:46"},"nodeType":"YulExpressionStatement","src":"100157:38:46"}]},"name":"store_literal_in_memory_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"100070:6:46","type":""}],"src":"99972:230:46"},{"body":{"nodeType":"YulBlock","src":"100314:127:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100336:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100344:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100332:3:46"},"nodeType":"YulFunctionCall","src":"100332:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"100348:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100325:6:46"},"nodeType":"YulFunctionCall","src":"100325:58:46"},"nodeType":"YulExpressionStatement","src":"100325:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100404:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100412:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100400:3:46"},"nodeType":"YulFunctionCall","src":"100400:15:46"},{"hexValue":"206261642063626f724279746573","kind":"string","nodeType":"YulLiteral","src":"100417:16:46","type":"","value":" bad cborBytes"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100393:6:46"},"nodeType":"YulFunctionCall","src":"100393:41:46"},"nodeType":"YulExpressionStatement","src":"100393:41:46"}]},"name":"store_literal_in_memory_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"100306:6:46","type":""}],"src":"100208:233:46"},{"body":{"nodeType":"YulBlock","src":"100553:128:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100575:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100583:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100571:3:46"},"nodeType":"YulFunctionCall","src":"100571:14:46"},{"hexValue":"5769746e657452657175657374426f617264547275737461626c65426173653a","kind":"string","nodeType":"YulLiteral","src":"100587:34:46","type":"","value":"WitnetRequestBoardTrustableBase:"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100564:6:46"},"nodeType":"YulFunctionCall","src":"100564:58:46"},"nodeType":"YulExpressionStatement","src":"100564:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100643:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100651:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100639:3:46"},"nodeType":"YulFunctionCall","src":"100639:15:46"},{"hexValue":"206e6f742079657420706f73746564","kind":"string","nodeType":"YulLiteral","src":"100656:17:46","type":"","value":" not yet posted"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100632:6:46"},"nodeType":"YulFunctionCall","src":"100632:42:46"},"nodeType":"YulExpressionStatement","src":"100632:42:46"}]},"name":"store_literal_in_memory_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"100545:6:46","type":""}],"src":"100447:234:46"},{"body":{"nodeType":"YulBlock","src":"100793:130:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100815:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100823:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100811:3:46"},"nodeType":"YulFunctionCall","src":"100811:14:46"},{"hexValue":"5769746e657452657175657374426f61726455706772616461626c6542617365","kind":"string","nodeType":"YulLiteral","src":"100827:34:46","type":"","value":"WitnetRequestBoardUpgradableBase"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100804:6:46"},"nodeType":"YulFunctionCall","src":"100804:58:46"},"nodeType":"YulExpressionStatement","src":"100804:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"100883:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"100891:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"100879:3:46"},"nodeType":"YulFunctionCall","src":"100879:15:46"},{"hexValue":"3a206e6f7420696d706c656d656e746564","kind":"string","nodeType":"YulLiteral","src":"100896:19:46","type":"","value":": not implemented"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"100872:6:46"},"nodeType":"YulFunctionCall","src":"100872:44:46"},"nodeType":"YulExpressionStatement","src":"100872:44:46"}]},"name":"store_literal_in_memory_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"100785:6:46","type":""}],"src":"100687:236:46"},{"body":{"nodeType":"YulBlock","src":"100972:668:46","statements":[{"body":{"nodeType":"YulBlock","src":"101012:9:46","statements":[{"nodeType":"YulLeave","src":"101014:5:46"}]},"condition":{"arguments":[{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"100988:14:46"},"nodeType":"YulFunctionCall","src":"100988:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"101006:4:46","type":"","value":"0x44"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"100985:2:46"},"nodeType":"YulFunctionCall","src":"100985:26:46"},"nodeType":"YulIf","src":"100982:39:46"},{"nodeType":"YulVariableDeclaration","src":"101031:32:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"101043:18:46"},"nodeType":"YulFunctionCall","src":"101043:20:46"},"variables":[{"name":"data","nodeType":"YulTypedName","src":"101035:4:46","type":""}]},{"expression":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"101087:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"101093:1:46","type":"","value":"4"},{"arguments":[{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"101100:14:46"},"nodeType":"YulFunctionCall","src":"101100:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"101118:1:46","type":"","value":"4"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"101096:3:46"},"nodeType":"YulFunctionCall","src":"101096:24:46"}],"functionName":{"name":"returndatacopy","nodeType":"YulIdentifier","src":"101072:14:46"},"nodeType":"YulFunctionCall","src":"101072:49:46"},"nodeType":"YulExpressionStatement","src":"101072:49:46"},{"nodeType":"YulVariableDeclaration","src":"101131:25:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"101151:4:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"101145:5:46"},"nodeType":"YulFunctionCall","src":"101145:11:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"101135:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"101282:29:46","statements":[{"nodeType":"YulLeave","src":"101296:5:46"}]},"condition":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"101187:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"101195:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"101184:2:46"},"nodeType":"YulFunctionCall","src":"101184:30:46"},{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"101235:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"101243:4:46","type":"","value":"0x24"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101231:3:46"},"nodeType":"YulFunctionCall","src":"101231:17:46"},{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"101250:14:46"},"nodeType":"YulFunctionCall","src":"101250:16:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"101228:2:46"},"nodeType":"YulFunctionCall","src":"101228:39:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"101168:2:46"},"nodeType":"YulFunctionCall","src":"101168:113:46"},"nodeType":"YulIf","src":"101165:146:46"},{"nodeType":"YulVariableDeclaration","src":"101321:28:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"101336:4:46"},{"name":"offset","nodeType":"YulIdentifier","src":"101342:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101332:3:46"},"nodeType":"YulFunctionCall","src":"101332:17:46"},"variables":[{"name":"msg","nodeType":"YulTypedName","src":"101325:3:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"101358:24:46","value":{"arguments":[{"name":"msg","nodeType":"YulIdentifier","src":"101378:3:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"101372:5:46"},"nodeType":"YulFunctionCall","src":"101372:10:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"101362:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"101425:9:46","statements":[{"nodeType":"YulLeave","src":"101427:5:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"101397:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"101405:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"101394:2:46"},"nodeType":"YulFunctionCall","src":"101394:30:46"},"nodeType":"YulIf","src":"101391:43:46"},{"nodeType":"YulVariableDeclaration","src":"101444:38:46","value":{"arguments":[{"arguments":[{"name":"msg","nodeType":"YulIdentifier","src":"101463:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"101468:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101459:3:46"},"nodeType":"YulFunctionCall","src":"101459:14:46"},{"name":"length","nodeType":"YulIdentifier","src":"101475:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101455:3:46"},"nodeType":"YulFunctionCall","src":"101455:27:46"},"variables":[{"name":"end","nodeType":"YulTypedName","src":"101448:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"101539:9:46","statements":[{"nodeType":"YulLeave","src":"101541:5:46"}]},"condition":{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"101497:3:46"},{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"101506:4:46"},{"arguments":[{"arguments":[],"functionName":{"name":"returndatasize","nodeType":"YulIdentifier","src":"101516:14:46"},"nodeType":"YulFunctionCall","src":"101516:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"101534:1:46","type":"","value":"4"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"101512:3:46"},"nodeType":"YulFunctionCall","src":"101512:24:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101502:3:46"},"nodeType":"YulFunctionCall","src":"101502:35:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"101494:2:46"},"nodeType":"YulFunctionCall","src":"101494:44:46"},"nodeType":"YulIf","src":"101491:57:46"},{"expression":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"101578:4:46"},{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"101588:6:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"101600:4:46","type":"","value":"0x20"},{"name":"length","nodeType":"YulIdentifier","src":"101606:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101596:3:46"},"nodeType":"YulFunctionCall","src":"101596:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"101584:3:46"},"nodeType":"YulFunctionCall","src":"101584:30:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"101558:19:46"},"nodeType":"YulFunctionCall","src":"101558:57:46"},"nodeType":"YulExpressionStatement","src":"101558:57:46"},{"nodeType":"YulAssignment","src":"101624:10:46","value":{"name":"msg","nodeType":"YulIdentifier","src":"101631:3:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"101624:3:46"}]}]},"name":"try_decode_error_message","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"100968:3:46","type":""}],"src":"100929:711:46"},{"body":{"nodeType":"YulBlock","src":"101704:64:46","statements":[{"body":{"nodeType":"YulBlock","src":"101740:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x21","nodeType":"YulIdentifier","src":"101742:16:46"},"nodeType":"YulFunctionCall","src":"101742:18:46"},"nodeType":"YulExpressionStatement","src":"101742:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"101727:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"101734:3:46","type":"","value":"256"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"101724:2:46"},"nodeType":"YulFunctionCall","src":"101724:14:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"101717:6:46"},"nodeType":"YulFunctionCall","src":"101717:22:46"},"nodeType":"YulIf","src":"101714:48:46"}]},"name":"validator_assert_t_enum$_ErrorCodes_$4618","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"101697:5:46","type":""}],"src":"101646:122:46"},{"body":{"nodeType":"YulBlock","src":"101833:62:46","statements":[{"body":{"nodeType":"YulBlock","src":"101867:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x21","nodeType":"YulIdentifier","src":"101869:16:46"},"nodeType":"YulFunctionCall","src":"101869:18:46"},"nodeType":"YulExpressionStatement","src":"101869:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"101856:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"101863:1:46","type":"","value":"4"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"101853:2:46"},"nodeType":"YulFunctionCall","src":"101853:12:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"101846:6:46"},"nodeType":"YulFunctionCall","src":"101846:20:46"},"nodeType":"YulIf","src":"101843:46:46"}]},"name":"validator_assert_t_enum$_QueryStatus_$4315","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"101826:5:46","type":""}],"src":"101774:121:46"},{"body":{"nodeType":"YulBlock","src":"101944:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"102001:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102010:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102013:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102003:6:46"},"nodeType":"YulFunctionCall","src":"102003:12:46"},"nodeType":"YulExpressionStatement","src":"102003:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"101967:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"101992:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"101974:17:46"},"nodeType":"YulFunctionCall","src":"101974:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"101964:2:46"},"nodeType":"YulFunctionCall","src":"101964:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"101957:6:46"},"nodeType":"YulFunctionCall","src":"101957:43:46"},"nodeType":"YulIf","src":"101954:63:46"}]},"name":"validator_revert_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"101937:5:46","type":""}],"src":"101901:122:46"},{"body":{"nodeType":"YulBlock","src":"102069:76:46","statements":[{"body":{"nodeType":"YulBlock","src":"102123:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102132:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102135:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102125:6:46"},"nodeType":"YulFunctionCall","src":"102125:12:46"},"nodeType":"YulExpressionStatement","src":"102125:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102092:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102114:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"102099:14:46"},"nodeType":"YulFunctionCall","src":"102099:21:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"102089:2:46"},"nodeType":"YulFunctionCall","src":"102089:32:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102082:6:46"},"nodeType":"YulFunctionCall","src":"102082:40:46"},"nodeType":"YulIf","src":"102079:60:46"}]},"name":"validator_revert_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102062:5:46","type":""}],"src":"102029:116:46"},{"body":{"nodeType":"YulBlock","src":"102194:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"102251:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102260:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102263:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102253:6:46"},"nodeType":"YulFunctionCall","src":"102253:12:46"},"nodeType":"YulExpressionStatement","src":"102253:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102217:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102242:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"102224:17:46"},"nodeType":"YulFunctionCall","src":"102224:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"102214:2:46"},"nodeType":"YulFunctionCall","src":"102214:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102207:6:46"},"nodeType":"YulFunctionCall","src":"102207:43:46"},"nodeType":"YulIf","src":"102204:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102187:5:46","type":""}],"src":"102151:122:46"},{"body":{"nodeType":"YulBlock","src":"102345:102:46","statements":[{"body":{"nodeType":"YulBlock","src":"102425:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102434:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102437:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102427:6:46"},"nodeType":"YulFunctionCall","src":"102427:12:46"},"nodeType":"YulExpressionStatement","src":"102427:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102368:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102416:5:46"}],"functionName":{"name":"cleanup_t_contract$_IWitnetRequest_$3829","nodeType":"YulIdentifier","src":"102375:40:46"},"nodeType":"YulFunctionCall","src":"102375:47:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"102365:2:46"},"nodeType":"YulFunctionCall","src":"102365:58:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102358:6:46"},"nodeType":"YulFunctionCall","src":"102358:66:46"},"nodeType":"YulIf","src":"102355:86:46"}]},"name":"validator_revert_t_contract$_IWitnetRequest_$3829","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102338:5:46","type":""}],"src":"102279:168:46"},{"body":{"nodeType":"YulBlock","src":"102511:58:46","statements":[{"body":{"nodeType":"YulBlock","src":"102547:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102556:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102559:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102549:6:46"},"nodeType":"YulFunctionCall","src":"102549:12:46"},"nodeType":"YulExpressionStatement","src":"102549:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102534:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"102541:3:46","type":"","value":"256"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"102531:2:46"},"nodeType":"YulFunctionCall","src":"102531:14:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102524:6:46"},"nodeType":"YulFunctionCall","src":"102524:22:46"},"nodeType":"YulIf","src":"102521:42:46"}]},"name":"validator_revert_t_enum$_ErrorCodes_$4618","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102504:5:46","type":""}],"src":"102453:116:46"},{"body":{"nodeType":"YulBlock","src":"102617:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"102673:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102682:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102685:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102675:6:46"},"nodeType":"YulFunctionCall","src":"102675:12:46"},"nodeType":"YulExpressionStatement","src":"102675:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102640:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102664:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"102647:16:46"},"nodeType":"YulFunctionCall","src":"102647:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"102637:2:46"},"nodeType":"YulFunctionCall","src":"102637:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102630:6:46"},"nodeType":"YulFunctionCall","src":"102630:42:46"},"nodeType":"YulIf","src":"102627:62:46"}]},"name":"validator_revert_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102610:5:46","type":""}],"src":"102575:120:46"},{"body":{"nodeType":"YulBlock","src":"102742:77:46","statements":[{"body":{"nodeType":"YulBlock","src":"102797:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102806:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102809:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102799:6:46"},"nodeType":"YulFunctionCall","src":"102799:12:46"},"nodeType":"YulExpressionStatement","src":"102799:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102765:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102788:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"102772:15:46"},"nodeType":"YulFunctionCall","src":"102772:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"102762:2:46"},"nodeType":"YulFunctionCall","src":"102762:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102755:6:46"},"nodeType":"YulFunctionCall","src":"102755:41:46"},"nodeType":"YulIf","src":"102752:61:46"}]},"name":"validator_revert_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102735:5:46","type":""}],"src":"102701:118:46"},{"body":{"nodeType":"YulBlock","src":"102868:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"102925:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"102934:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"102937:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"102927:6:46"},"nodeType":"YulFunctionCall","src":"102927:12:46"},"nodeType":"YulExpressionStatement","src":"102927:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102891:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"102916:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"102898:17:46"},"nodeType":"YulFunctionCall","src":"102898:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"102888:2:46"},"nodeType":"YulFunctionCall","src":"102888:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"102881:6:46"},"nodeType":"YulFunctionCall","src":"102881:43:46"},"nodeType":"YulIf","src":"102878:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102861:5:46","type":""}],"src":"102825:122:46"},{"body":{"nodeType":"YulBlock","src":"102995:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"103051:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"103060:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"103063:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"103053:6:46"},"nodeType":"YulFunctionCall","src":"103053:12:46"},"nodeType":"YulExpressionStatement","src":"103053:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"103018:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"103042:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"103025:16:46"},"nodeType":"YulFunctionCall","src":"103025:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"103015:2:46"},"nodeType":"YulFunctionCall","src":"103015:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"103008:6:46"},"nodeType":"YulFunctionCall","src":"103008:42:46"},"nodeType":"YulIf","src":"103005:62:46"}]},"name":"validator_revert_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"102988:5:46","type":""}],"src":"102953:120:46"},{"body":{"nodeType":"YulBlock","src":"103121:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"103177:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"103186:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"103189:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"103179:6:46"},"nodeType":"YulFunctionCall","src":"103179:12:46"},"nodeType":"YulExpressionStatement","src":"103179:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"103144:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"103168:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"103151:16:46"},"nodeType":"YulFunctionCall","src":"103151:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"103141:2:46"},"nodeType":"YulFunctionCall","src":"103141:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"103134:6:46"},"nodeType":"YulFunctionCall","src":"103134:42:46"},"nodeType":"YulIf","src":"103131:62:46"}]},"name":"validator_revert_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"103114:5:46","type":""}],"src":"103079:120:46"},{"body":{"nodeType":"YulBlock","src":"103246:77:46","statements":[{"body":{"nodeType":"YulBlock","src":"103301:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"103310:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"103313:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"103303:6:46"},"nodeType":"YulFunctionCall","src":"103303:12:46"},"nodeType":"YulExpressionStatement","src":"103303:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"103269:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"103292:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"103276:15:46"},"nodeType":"YulFunctionCall","src":"103276:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"103266:2:46"},"nodeType":"YulFunctionCall","src":"103266:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"103259:6:46"},"nodeType":"YulFunctionCall","src":"103259:41:46"},"nodeType":"YulIf","src":"103256:61:46"}]},"name":"validator_revert_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"103239:5:46","type":""}],"src":"103205:118:46"}]},"contents":"{\n\n    // address[]\n    function abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_address_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_address(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // address[]\n    function abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_address_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_address_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // int128[]\n    function abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_int128_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_int128_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // int32[]\n    function abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_int32_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_int32_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // string[]\n    function abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let innerOffset := mload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n            let elementPos := add(offset, innerOffset)\n\n            mstore(dst, abi_decode_t_string_memory_ptr_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // struct IWitnetRequestBoardReporter.BatchResult[]\n    function abi_decode_available_length_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let innerOffset := calldataload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n            let elementPos := add(offset, innerOffset)\n\n            mstore(dst, abi_decode_t_struct$_BatchResult_$3956_memory_ptr(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // uint64[]\n    function abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_uint64_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(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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_memory_to_memory(src, dst, length)\n    }\n\n    function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n        mstore(array, length)\n        let dst := add(array, 0x20)\n        if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_memory_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_address_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_address(value)\n    }\n\n    // address[]\n    function abi_decode_t_array$_t_address_$dyn_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr(add(offset, 0x20), length, end)\n    }\n\n    // address[]\n    function abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_address_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // int128[]\n    function abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // int32[]\n    function abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // string[]\n    function abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // struct IWitnetRequestBoardReporter.BatchResult[]\n    function abi_decode_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr(add(offset, 0x20), length, end)\n    }\n\n    // uint64[]\n    function abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    function abi_decode_t_bool(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_bool(value)\n    }\n\n    function abi_decode_t_bool_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bool(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    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(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_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        length := calldataload(offset)\n        if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n        arrayPos := add(offset, 0x20)\n        if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\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_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_contract$_IWitnetRequest_$3829(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_contract$_IWitnetRequest_$3829(value)\n    }\n\n    function abi_decode_t_enum$_ErrorCodes_$4618_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_enum$_ErrorCodes_$4618(value)\n    }\n\n    function abi_decode_t_int128_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_int128(value)\n    }\n\n    function abi_decode_t_int32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_int32(value)\n    }\n\n    // string\n    function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // struct IWitnetRequestBoardReporter.BatchResult\n    function abi_decode_t_struct$_BatchResult_$3956_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x80) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x80)\n\n        {\n            // queryId\n\n            let offset := 0\n\n            mstore(add(value, 0x00), abi_decode_t_uint256(add(headStart, offset), end))\n\n        }\n\n        {\n            // timestamp\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint256(add(headStart, offset), end))\n\n        }\n\n        {\n            // drTxHash\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_bytes32(add(headStart, offset), end))\n\n        }\n\n        {\n            // cborBytes\n\n            let offset := calldataload(add(headStart, 96))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x60), abi_decode_t_bytes_memory_ptr(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Buffer\n    function abi_decode_t_struct$_Buffer_$4361_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // data\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr(add(headStart, offset), end))\n\n        }\n\n        {\n            // cursor\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint32(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Buffer\n    function abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // data\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // cursor\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint32_fromMemory(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.CBOR\n    function abi_decode_t_struct$_CBOR_$4356_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0xc0)\n\n        {\n            // buffer\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_struct$_Buffer_$4361_memory_ptr(add(headStart, offset), end))\n\n        }\n\n        {\n            // initialByte\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // majorType\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // additionalInformation\n\n            let offset := 96\n\n            mstore(add(value, 0x60), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // len\n\n            let offset := 128\n\n            mstore(add(value, 0x80), abi_decode_t_uint64(add(headStart, offset), end))\n\n        }\n\n        {\n            // tag\n\n            let offset := 160\n\n            mstore(add(value, 0xa0), abi_decode_t_uint64(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.CBOR\n    function abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0xc0)\n\n        {\n            // buffer\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // initialByte\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // majorType\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // additionalInformation\n\n            let offset := 96\n\n            mstore(add(value, 0x60), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // len\n\n            let offset := 128\n\n            mstore(add(value, 0x80), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // tag\n\n            let offset := 160\n\n            mstore(add(value, 0xa0), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Result\n    function abi_decode_t_struct$_Result_$4342_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // success\n\n            let offset := 0\n\n            mstore(add(value, 0x00), abi_decode_t_bool(add(headStart, offset), end))\n\n        }\n\n        {\n            // value\n\n            let offset := calldataload(add(headStart, 32))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x20), abi_decode_t_struct$_CBOR_$4356_memory_ptr(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Result\n    function abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // success\n\n            let offset := 0\n\n            mstore(add(value, 0x00), abi_decode_t_bool_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // value\n\n            let offset := mload(add(headStart, 32))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x20), abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\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_uint32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint64(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint64_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint8(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_t_uint8_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_address_$dyn_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_address_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_address_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_address_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_int128_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_int32_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptrt_bool(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_struct$_BatchResult_$3956_memory_ptr_$dyn_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_contract$_IWitnetRequest_$3829(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_contract$_IWitnetRequest_$3829(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_enum$_ErrorCodes_$4618_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_enum$_ErrorCodes_$4618_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_enum$_ErrorCodes_$4618t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_enum$_ErrorCodes_$4618_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := mload(add(headStart, 32))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value1 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_int128_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_int128_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_int32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_int32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_CBOR_$4356_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_Result_$4342_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_Result_$4342_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_Result_$4342_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_Result_$4342_memory_ptr_fromMemory(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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint256t_bytes32t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := calldataload(add(headStart, 64))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value2, value3 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint256t_uint256t_bytes32t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n        if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 64\n\n            value2 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := calldataload(add(headStart, 96))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value3, value4 := abi_decode_t_bytes_calldata_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint64_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint64_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encodeUpdatedPos_t_address_to_t_address(value0, pos) -> updatedPos {\n        abi_encode_t_address_to_t_address(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_int128_to_t_int128(value0, pos) -> updatedPos {\n        abi_encode_t_int128_to_t_int128(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_int32_to_t_int32(value0, pos) -> updatedPos {\n        abi_encode_t_int32_to_t_int32(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr(value0, pos) -> updatedPos {\n        updatedPos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value0, pos)\n    }\n\n    function abi_encodeUpdatedPos_t_uint64_to_t_uint64(value0, pos) -> updatedPos {\n        abi_encode_t_uint64_to_t_uint64(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encode_t_address_to_t_address(value, pos) {\n        mstore(pos, cleanup_t_address(value))\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\n    }\n\n    // address[] -> address[]\n    function abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack(value, pos)  -> end  {\n        let length := array_length_t_array$_t_address_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack(pos, length)\n        let baseRef := array_dataslot_t_array$_t_address_$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_address_to_t_address(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_address_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // int128[] -> int128[]\n    function abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack(value, pos)  -> end  {\n        let length := array_length_t_array$_t_int128_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack(pos, length)\n        let baseRef := array_dataslot_t_array$_t_int128_$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_int128_to_t_int128(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_int128_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // int32[] -> int32[]\n    function abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack(value, pos)  -> end  {\n        let length := array_length_t_array$_t_int32_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack(pos, length)\n        let baseRef := array_dataslot_t_array$_t_int32_$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_int32_to_t_int32(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_int32_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // string[] -> string[]\n    function abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(value, pos)  -> end  {\n        let length := array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n        let headStart := pos\n        let tail := add(pos, mul(length, 0x20))\n        let baseRef := array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n        let srcPtr := baseRef\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, sub(tail, headStart))\n            let elementValue0 := mload(srcPtr)\n            tail := abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr(elementValue0, tail)\n            srcPtr := array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(srcPtr)\n            pos := add(pos, 0x20)\n        }\n        pos := tail\n        end := pos\n    }\n\n    // uint64[] -> uint64[]\n    function abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack(value, pos)  -> end  {\n        let length := array_length_t_array$_t_uint64_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack(pos, length)\n        let baseRef := array_dataslot_t_array$_t_uint64_$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_uint64_to_t_uint64(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_uint64_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    function abi_encode_t_bool_to_t_bool(value, pos) {\n        mstore(pos, cleanup_t_bool(value))\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_bool_to_t_bool_library(value, pos) {\n        mstore(pos, cleanup_t_bool(value))\n    }\n\n    function abi_encode_t_bytes32_to_t_bytes32(value, pos) {\n        mstore(pos, cleanup_t_bytes32(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_bytes_memory_ptr_to_t_bytes_memory_ptr(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr(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_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_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(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_bytes_memory_ptr_to_t_bytes_memory_ptr_library(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_library(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_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    // bytes -> bytes\n    function abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> ret {\n        let slotValue := sload(value)\n        let length := extract_byte_array_length(slotValue)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(pos, length)\n        switch and(slotValue, 1)\n        case 0 {\n            // short byte array\n            mstore(pos, and(slotValue, not(0xff)))\n            ret := add(pos, 0x20)\n        }\n        case 1 {\n            // long byte array\n            let dataPos := array_dataslot_t_bytes_storage(value)\n            let i := 0\n            for { } lt(i, length) { i := add(i, 0x20) } {\n                mstore(add(pos, i), sload(dataPos))\n                dataPos := add(dataPos, 1)\n            }\n            ret := add(pos, i)\n        }\n    }\n\n    function abi_encode_t_contract$_IERC20_$3611_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_IERC20_$3611_to_t_address(value))\n    }\n\n    function abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address(value, pos) {\n        mstore(pos, convert_t_contract$_IWitnetRequest_$3829_to_t_address(value))\n    }\n\n    function abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack(value, pos) {\n        mstore(pos, convert_t_enum$_ErrorCodes_$4618_to_t_uint8(value))\n    }\n\n    function abi_encode_t_enum$_QueryStatus_$4315_to_t_uint8_fromStack(value, pos) {\n        mstore(pos, convert_t_enum$_QueryStatus_$4315_to_t_uint8(value))\n    }\n\n    function abi_encode_t_int128_to_t_int128(value, pos) {\n        mstore(pos, cleanup_t_int128(value))\n    }\n\n    function abi_encode_t_int128_to_t_int128_fromStack(value, pos) {\n        mstore(pos, cleanup_t_int128(value))\n    }\n\n    function abi_encode_t_int32_to_t_int32(value, pos) {\n        mstore(pos, cleanup_t_int32(value))\n    }\n\n    function abi_encode_t_int32_to_t_int32_fromStack(value, pos) {\n        mstore(pos, cleanup_t_int32(value))\n    }\n\n    function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value, pos) -> end {\n        let length := array_length_t_string_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_string_memory_ptr(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_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n        store_literal_in_memory_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n        store_literal_in_memory_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 46)\n        store_literal_in_memory_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 27)\n        store_literal_in_memory_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 49)\n        store_literal_in_memory_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 44)\n        store_literal_in_memory_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n        store_literal_in_memory_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n        store_literal_in_memory_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n        store_literal_in_memory_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 63)\n        store_literal_in_memory_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 66)\n        store_literal_in_memory_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 42)\n        store_literal_in_memory_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 45)\n        store_literal_in_memory_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 58)\n        store_literal_in_memory_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 52)\n        store_literal_in_memory_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n        store_literal_in_memory_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 46)\n        store_literal_in_memory_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n        store_literal_in_memory_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 49)\n        store_literal_in_memory_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094(pos)\n        end := add(pos, 64)\n    }\n\n    // struct Witnet.Buffer -> struct Witnet.Buffer\n    function abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // data\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(memberValue0, tail)\n\n        }\n\n        {\n            // cursor\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint32_to_t_uint32(memberValue0, add(pos, 0x20))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Buffer -> struct Witnet.Buffer\n    function abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // data\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // cursor\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint32_to_t_uint32_library(memberValue0, add(pos, 0x20))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Query -> struct Witnet.Query\n    function abi_encode_t_struct$_Query_$4310_memory_ptr_to_t_struct$_Query_$4310_memory_ptr_fromStack(value, pos)  -> end  {\n        let tail := add(pos, 0xe0)\n\n        {\n            // request\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // response\n\n            let memberValue0 := mload(add(value, 0x20))\n\n            mstore(add(pos, 0xa0), sub(tail, pos))\n            tail := abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr(memberValue0, tail)\n\n        }\n\n        {\n            // from\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_address_to_t_address(memberValue0, add(pos, 0xc0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Request -> struct Witnet.Request\n    function abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr(value, pos)  {\n        let tail := add(pos, 0xa0)\n\n        {\n            // addr\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // requester\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // hash\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_bytes32_to_t_bytes32(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // gasprice\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // reward\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x80))\n        }\n\n    }\n\n    // struct Witnet.Request -> struct Witnet.Request\n    function abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr_fromStack(value, pos)  {\n        let tail := add(pos, 0xa0)\n\n        {\n            // addr\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_contract$_IWitnetRequest_$3829_to_t_address(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // requester\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // hash\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_bytes32_to_t_bytes32(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // gasprice\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // reward\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x80))\n        }\n\n    }\n\n    // struct Witnet.Response -> struct Witnet.Response\n    function abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr(value, pos)  -> end  {\n        let tail := add(pos, 0x80)\n\n        {\n            // reporter\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // timestamp\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // drTxHash\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_bytes32_to_t_bytes32(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // cborBytes\n\n            let memberValue0 := mload(add(value, 0x60))\n\n            mstore(add(pos, 0x60), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(memberValue0, tail)\n\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Response -> struct Witnet.Response\n    function abi_encode_t_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr_fromStack(value, pos)  -> end  {\n        let tail := add(pos, 0x80)\n\n        {\n            // reporter\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // timestamp\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // drTxHash\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_bytes32_to_t_bytes32(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // cborBytes\n\n            let memberValue0 := mload(add(value, 0x60))\n\n            mstore(add(pos, 0x60), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr(memberValue0, tail)\n\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Result -> struct Witnet.Result\n    function abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // success\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // value\n\n            let memberValue0 := mload(add(value, 0x20))\n\n            mstore(add(pos, 0x20), sub(tail, pos))\n            tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr(memberValue0, tail)\n\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Result -> struct Witnet.Result\n    function abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // success\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_bool_to_t_bool_library(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // value\n\n            let memberValue0 := mload(add(value, 0x20))\n\n            mstore(add(pos, 0x20), sub(tail, pos))\n            tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        end := tail\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_uint32_to_t_uint32(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_t_uint32_to_t_uint32_library(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_library(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8(value, pos) {\n        mstore(pos, cleanup_t_uint8(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8_library(value, pos) {\n        mstore(pos, cleanup_t_uint8(value))\n    }\n\n    function abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\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_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$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_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$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_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$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_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$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_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$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_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$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__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_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_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_library(value0,  tail)\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_bytes_storage__to_t_bytes_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        mstore(add(headStart, 0), sub(tail, headStart))\n        tail := abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_contract$_IERC20_$3611__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_IERC20_$3611_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_enum$_ErrorCodes_$4618__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_enum$_ErrorCodes_$4618_t_string_memory_ptr__to_t_uint8_t_string_memory_ptr__fromStack_reversed(headStart , value1, value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack(value0,  add(headStart, 0))\n\n        mstore(add(headStart, 32), sub(tail, headStart))\n        tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack(value1,  tail)\n\n    }\n\n    function abi_encode_tuple_t_enum$_QueryStatus_$4315__to_t_uint8__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_enum$_QueryStatus_$4315_to_t_uint8_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_int128__to_t_int128__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int128_to_t_int128_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_int32__to_t_int32__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int32_to_t_int32_fromStack(value0,  add(headStart, 0))\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_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4__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_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150__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_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d__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_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f__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_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c__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_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee__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_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a__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_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce__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_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb__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_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1__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_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84__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_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b__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_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d__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_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6__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_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094__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_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        mstore(add(headStart, 0), sub(tail, headStart))\n        tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_Query_$4310_memory_ptr__to_t_struct$_Query_$4310_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_struct$_Query_$4310_memory_ptr_to_t_struct$_Query_$4310_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_Request_$4327_memory_ptr__to_t_struct$_Request_$4327_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 160)\n\n        abi_encode_t_struct$_Request_$4327_memory_ptr_to_t_struct$_Request_$4327_memory_ptr_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_struct$_Response_$4336_memory_ptr__to_t_struct$_Response_$4336_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_struct$_Response_$4336_memory_ptr_to_t_struct$_Response_$4336_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        mstore(add(headStart, 0), sub(tail, headStart))\n        tail := abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_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_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack(value0,  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_address__to_t_uint256_t_address__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_address_to_t_address_fromStack(value1,  add(headStart, 32))\n\n    }\n\n    function abi_encode_tuple_t_uint256_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b__to_t_uint256_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_uint256_to_t_uint256_fromStack(value0,  add(headStart, 0))\n\n        mstore(add(headStart, 32), sub(tail, headStart))\n        tail := abi_encode_t_stringliteral_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_uint256_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e__to_t_uint256_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_uint256_to_t_uint256_fromStack(value0,  add(headStart, 0))\n\n        mstore(add(headStart, 32), sub(tail, headStart))\n        tail := abi_encode_t_stringliteral_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_uint256_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801__to_t_uint256_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_uint256_to_t_uint256_fromStack(value0,  add(headStart, 0))\n\n        mstore(add(headStart, 32), sub(tail, headStart))\n        tail := abi_encode_t_stringliteral_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_uint256_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847__to_t_uint256_t_string_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_uint256_to_t_uint256_fromStack(value0,  add(headStart, 0))\n\n        mstore(add(headStart, 32), sub(tail, headStart))\n        tail := abi_encode_t_stringliteral_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint64_to_t_uint64_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_address_$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_array$_t_int128_$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_array$_t_int32_$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_array$_t_string_memory_ptr_$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_array$_t_struct$_BatchResult_$3956_memory_ptr_$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_array$_t_uint64_$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_allocation_size_t_string_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_address_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_int128_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_int32_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_uint64_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_bytes_storage(ptr) -> data {\n        data := ptr\n\n        mstore(0, ptr)\n        data := keccak256(0, 0x20)\n\n    }\n\n    function array_length_t_array$_t_address_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_int128_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_int32_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_uint64_$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_address_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_int128_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_int32_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_uint64_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_address_$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_array$_t_int128_$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_array$_t_int32_$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_array$_t_string_memory_ptr_$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_array$_t_uint64_$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(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_bytes_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_bytes_memory_ptr_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\n    }\n\n    function array_storeLengthForEncoding_t_string_memory_ptr(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_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 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_contract$_IWitnetRequest_$3829(value) -> cleaned {\n        cleaned := cleanup_t_address(value)\n    }\n\n    function cleanup_t_enum$_ErrorCodes_$4618(value) -> cleaned {\n        cleaned := value validator_assert_t_enum$_ErrorCodes_$4618(value)\n    }\n\n    function cleanup_t_enum$_QueryStatus_$4315(value) -> cleaned {\n        cleaned := value validator_assert_t_enum$_QueryStatus_$4315(value)\n    }\n\n    function cleanup_t_int128(value) -> cleaned {\n        cleaned := signextend(15, value)\n    }\n\n    function cleanup_t_int32(value) -> cleaned {\n        cleaned := signextend(3, 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_uint32(value) -> cleaned {\n        cleaned := and(value, 0xffffffff)\n    }\n\n    function cleanup_t_uint64(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffff)\n    }\n\n    function cleanup_t_uint8(value) -> cleaned {\n        cleaned := and(value, 0xff)\n    }\n\n    function convert_t_contract$_IERC20_$3611_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_contract$_IWitnetRequest_$3829_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_enum$_ErrorCodes_$4618_to_t_uint8(value) -> converted {\n        converted := cleanup_t_enum$_ErrorCodes_$4618(value)\n    }\n\n    function convert_t_enum$_QueryStatus_$4315_to_t_uint8(value) -> converted {\n        converted := cleanup_t_enum$_QueryStatus_$4315(value)\n    }\n\n    function convert_t_uint160_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_uint160(value) -> converted {\n        converted := cleanup_t_uint160(value)\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 panic_error_0x11() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x11)\n        revert(0, 0x24)\n    }\n\n    function panic_error_0x21() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x21)\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_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 return_data_selector() -> sig {\n        if gt(returndatasize(), 3) {\n            returndatacopy(0, 0, 4)\n            sig := shift_right_224_unsigned(mload(0))\n        }\n    }\n\n    function revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n        revert(0, 0)\n    }\n\n    function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() {\n        revert(0, 0)\n    }\n\n    function revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() {\n        revert(0, 0)\n    }\n\n    function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function shift_right_224_unsigned(value) -> newValue {\n        newValue :=\n\n        shr(224, value)\n\n    }\n\n    function store_literal_in_memory_0be555820c60b6124cd4a527104e7ed2ef896a14c9cdf1f4d0c1a79561ea22c4(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" null script\")\n\n    }\n\n    function store_literal_in_memory_0d0f3639c50be0afccc47d7224de7d8f86286c512c889d59db02617fd5eda150(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoard: no transfers\")\n\n        mstore(add(memPtr, 32), \" accepted\")\n\n    }\n\n    function store_literal_in_memory_1581ae06fefdfc841abacd4b63952c567c2edc2bc8c7899a32661f6a801e746b(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" bad timestamp\")\n\n    }\n\n    function store_literal_in_memory_1f8274dcdd937f970d48bf777d3a3d5fbcf9897829d796148c2d8edcd419ec5d(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBoardData: only owner\")\n\n    }\n\n    function store_literal_in_memory_33e565b65d8aa6e9990eec2cc32f99865d7f76bbee3771b62789ab97e5a37d7f(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableDefau\")\n\n        mstore(add(memPtr, 32), \"lt: bad timestamp\")\n\n    }\n\n    function store_literal_in_memory_3b4bb84f4a99e05df33e41f62f5366e4016b4735b6f76082d73cf5d8831faa3e(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" bad queryId\")\n\n    }\n\n    function store_literal_in_memory_3d43510da44c3e08f6dfef5e320d0e99d425bf23f74114ae066f5af47319ad5c(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" empty script\")\n\n    }\n\n    function store_literal_in_memory_4425c56dbfedfa02467de27608a6ff1e4faacad72797eafb38bb660bf95f7eee(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" only requester\")\n\n    }\n\n    function store_literal_in_memory_48f3e667c3593a2e92c7dce9bfc9484f97112384c1450711c71171e05fb5759a(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" reward too low\")\n\n    }\n\n    function store_literal_in_memory_58fe038ba911826a5f966fdd037e315cc531824afa5103a4407b08d95d19ddce(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" bytecode changed after posting\")\n\n    }\n\n    function store_literal_in_memory_5fa4f20d3b547b43c3b49de4f5c62b8d87a47a9169c1a1db0d172150993aa1eb(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableDefau\")\n\n        mstore(add(memPtr, 32), \"lt: Witnet drTxHash cannot be ze\")\n\n        mstore(add(memPtr, 64), \"ro\")\n\n    }\n\n    function store_literal_in_memory_72b1f434e16ac1cf02aa4ce2f0f63ef536c0a2e88f68b1067ef152351f0087f1(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBoardDataACLs: unauthorize\")\n\n        mstore(add(memPtr, 32), \"d reporter\")\n\n    }\n\n    function store_literal_in_memory_8e0ffa273c001ae051d701178ac5c710a5b4d9fec98205577ebc7425e417a801(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" bad drTxHash\")\n\n    }\n\n    function store_literal_in_memory_9fa14ac89471826c5bc72b75de3388cdde56a33fbf6bb575f16de2cc5916ce84(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableDefau\")\n\n        mstore(add(memPtr, 32), \"lt: result cannot be empty\")\n\n    }\n\n    function store_literal_in_memory_aac6109e25b977a3666829c5faa653ddebecef9c73e0dbd918342867acf0b90b(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" already initialized\")\n\n    }\n\n    function store_literal_in_memory_ba6ce338a8b77b4309b1dcba6abb75801c6b8961785823dfa406357c96ccf60d(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" only owner\")\n\n    }\n\n    function store_literal_in_memory_e251d84e62e5492f0ae8601bf0b4d92f0e11ae4eb6623c0c4134c63f7dd56847(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" bad cborBytes\")\n\n    }\n\n    function store_literal_in_memory_ea4580d893291eb488d1f84e08baa4c835b386770db72420b713c9cfcfc0dfb6(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardTrustableBase:\")\n\n        mstore(add(memPtr, 32), \" not yet posted\")\n\n    }\n\n    function store_literal_in_memory_ebdfd38fe21ca0808fdb840ac4bd9b3f5d98f2e7880341f5272855af32dcb094(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestBoardUpgradableBase\")\n\n        mstore(add(memPtr, 32), \": not implemented\")\n\n    }\n\n    function try_decode_error_message() -> ret {\n        if lt(returndatasize(), 0x44) { leave }\n\n        let data := allocate_unbounded()\n        returndatacopy(data, 4, sub(returndatasize(), 4))\n\n        let offset := mload(data)\n        if or(\n            gt(offset, 0xffffffffffffffff),\n            gt(add(offset, 0x24), returndatasize())\n            ) {\n            leave\n        }\n\n        let msg := add(data, offset)\n        let length := mload(msg)\n        if gt(length, 0xffffffffffffffff) { leave }\n\n        let end := add(add(msg, 0x20), length)\n        if gt(end, add(data, sub(returndatasize(), 4))) { leave }\n\n        finalize_allocation(data, add(offset, add(0x20, length)))\n        ret := msg\n    }\n\n    function validator_assert_t_enum$_ErrorCodes_$4618(value) {\n        if iszero(lt(value, 256)) { panic_error_0x21() }\n    }\n\n    function validator_assert_t_enum$_QueryStatus_$4315(value) {\n        if iszero(lt(value, 4)) { panic_error_0x21() }\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_bool(value) {\n        if iszero(eq(value, cleanup_t_bool(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_contract$_IWitnetRequest_$3829(value) {\n        if iszero(eq(value, cleanup_t_contract$_IWitnetRequest_$3829(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_enum$_ErrorCodes_$4618(value) {\n        if iszero(lt(value, 256)) { revert(0, 0) }\n    }\n\n    function validator_revert_t_int128(value) {\n        if iszero(eq(value, cleanup_t_int128(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_int32(value) {\n        if iszero(eq(value, cleanup_t_int32(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint32(value) {\n        if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint64(value) {\n        if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint8(value) {\n        if iszero(eq(value, cleanup_t_uint8(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"1832":[{"length":32,"start":7553}],"3428":[{"length":32,"start":14589}],"8106":[{"length":32,"start":15679}],"8170":[{"length":32,"start":7430}],"8172":[{"length":32,"start":11775}],"8174":[{"length":32,"start":7513}]},"linkReferences":{"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol":{"WitnetParserLib":[{"length":20,"start":3711},{"length":20,"start":3862},{"length":20,"start":4013},{"length":20,"start":4484},{"length":20,"start":4635},{"length":20,"start":5335},{"length":20,"start":7280},{"length":20,"start":9011},{"length":20,"start":11630},{"length":20,"start":11816},{"length":20,"start":12695},{"length":20,"start":13475},{"length":20,"start":13657},{"length":20,"start":14444},{"length":20,"start":14643},{"length":20,"start":14932},{"length":20,"start":15090},{"length":20,"start":15387},{"length":20,"start":15723}]}},"object":"6080604052600436106102e85760003560e01c80637780cde111610190578063c805dd0f116100dc578063d4da69ac11610095578063dc3c71cd1161006f578063dc3c71cd14610d4d578063e5a6b10f14610d8a578063e99e47f314610db5578063f2fde38b14610df257610328565b8063d4da69ac14610c95578063d74803be14610cd2578063db04f16d14610d1057610328565b8063c805dd0f14610b4d578063c87d969e14610b78578063c8f5cdd514610bb5578063cf62d11514610bde578063d2e8756114610c1b578063d4ced13214610c5857610328565b8063a8604c1a11610149578063b281a7bd11610123578063b281a7bd14610a66578063bc7e25ff14610a96578063c2485ebd14610ad3578063c683b46514610b1057610328565b8063a8604c1a146109c1578063a9e954b9146109fe578063b076832814610a2957610328565b80637780cde1146108795780637c1fbda3146108b657806381a398b5146108f35780638da5cb5b1461091c57806399f65804146109475780639d96fced1461098457610328565b80633b885f2a1161024f5780635479d9401161020857806366bfdc75116101e257806366bfdc75146107a65780636b58960a146107c25780636f07abcc146107ff578063754e5bea1461083c57610328565b80635479d9401461072757806354fd4d50146107525780636280bce81461077d57610328565b80633b885f2a14610605578063439fab91146106425780634c9f72e31461066b5780634dcffaf3146106945780635001f3b5146106d157806352d1902d146106fc57610328565b80632241f2db116102a15780632241f2db146104d15780632565082b1461050e57806328a78d9b1461054b5780632b68b9c6146105745780632b905fbb1461058b5780633ae97295146105c857610328565b8063044ad7be1461036357806307e66852146103a05780630f572d2c146103dd578063109a0e3c1461041a5780631dd27daf1461045757806320f9241e1461049457610328565b36610328576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161031f906167c2565b60405180910390fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161035a90616962565b60405180910390fd5b34801561036f57600080fd5b5061038a600480360381019061038591906151be565b610e1b565b604051610397919061662d565b60405180910390f35b3480156103ac57600080fd5b506103c760048036038101906103c2919061568b565b610e7a565b6040516103d491906165a5565b60405180910390f35b3480156103e957600080fd5b5061040460048036038101906103ff919061568b565b610f11565b60405161041191906165c7565b60405180910390f35b34801561042657600080fd5b50610441600480360381019061043c919061568b565b610fa8565b60405161044e9190616780565b60405180910390f35b34801561046357600080fd5b5061047e6004803603810190610479919061571d565b61103f565b60405161048b9190616a47565b60405180910390f35b3480156104a057600080fd5b506104bb60048036038101906104b6919061571d565b6110ea565b6040516104c89190616a47565b60405180910390f35b3480156104dd57600080fd5b506104f860048036038101906104f3919061568b565b61117f565b6040516105059190616765565b60405180910390f35b34801561051a57600080fd5b5061053560048036038101906105309190615642565b611211565b6040516105429190616a25565b60405180910390f35b34801561055757600080fd5b50610572600480360381019061056d91906151eb565b6112ac565b005b34801561058057600080fd5b50610589611420565b005b34801561059757600080fd5b506105b260048036038101906105ad919061568b565b6114d2565b6040516105bf919061674a565b60405180910390f35b3480156105d457600080fd5b506105ef60048036038101906105ea919061571d565b611564565b6040516105fc9190616a47565b60405180910390f35b34801561061157600080fd5b5061062c6004803603810190610627919061571d565b61160f565b6040516106399190616685565b60405180910390f35b34801561064e57600080fd5b5061066960048036038101906106649190615457565b6117e4565b005b34801561067757600080fd5b50610692600480360381019061068d91906151eb565b611af7565b005b3480156106a057600080fd5b506106bb60048036038101906106b6919061568b565b611c6b565b6040516106c8919061660b565b60405180910390f35b3480156106dd57600080fd5b506106e6611d02565b6040516106f39190616568565b60405180910390f35b34801561070857600080fd5b50610711611d2a565b60405161071e9190616648565b60405180910390f35b34801561073357600080fd5b5061073c611d55565b604051610749919061662d565b60405180910390f35b34801561075e57600080fd5b50610767611d7d565b6040516107749190616648565b60405180910390f35b34801561078957600080fd5b506107a4600480360381019061079f919061574a565b611da5565b005b6107c060048036038101906107bb919061571d565b611fdd565b005b3480156107ce57600080fd5b506107e960048036038101906107e491906151be565b612106565b6040516107f6919061662d565b60405180910390f35b34801561080b57600080fd5b506108266004803603810190610821919061571d565b61217e565b604051610833919061672f565b60405180910390f35b34801561084857600080fd5b50610863600480360381019061085e919061571d565b612190565b60405161087091906169e1565b60405180910390f35b34801561088557600080fd5b506108a0600480360381019061089b919061568b565b61232e565b6040516108ad919061662d565b60405180910390f35b3480156108c257600080fd5b506108dd60048036038101906108d8919061571d565b6123c0565b6040516108ea91906169e1565b60405180910390f35b3480156108ff57600080fd5b5061091a60048036038101906109159190615358565b612746565b005b34801561092857600080fd5b50610931612a44565b60405161093e9190616568565b60405180910390f35b34801561095357600080fd5b5061096e6004803603810190610969919061571d565b612a77565b60405161097b91906169c6565b60405180910390f35b34801561099057600080fd5b506109ab60048036038101906109a6919061571d565b612cb4565b6040516109b89190616568565b60405180910390f35b3480156109cd57600080fd5b506109e860048036038101906109e3919061568b565b612d69565b6040516109f5919061662d565b60405180910390f35b348015610a0a57600080fd5b50610a13612dfb565b604051610a209190616648565b60405180910390f35b348015610a3557600080fd5b50610a506004803603810190610a4b919061568b565b612e23565b604051610a5d919061660b565b60405180910390f35b610a806004803603810190610a7b91906154e9565b612eba565b604051610a8d9190616a47565b60405180910390f35b348015610aa257600080fd5b50610abd6004803603810190610ab8919061568b565b613192565b604051610aca9190616b43565b60405180910390f35b348015610adf57600080fd5b50610afa6004803603810190610af5919061571d565b613224565b604051610b0791906169a4565b60405180910390f35b348015610b1c57600080fd5b50610b376004803603810190610b32919061568b565b61349e565b604051610b449190616685565b60405180910390f35b348015610b5957600080fd5b50610b62613535565b604051610b6f9190616a47565b60405180910390f35b348015610b8457600080fd5b50610b9f6004803603810190610b9a919061568b565b613554565b604051610bac91906165e9565b60405180910390f35b348015610bc157600080fd5b50610bdc6004803603810190610bd791906157be565b6135eb565b005b348015610bea57600080fd5b50610c056004803603810190610c00919061568b565b613867565b604051610c129190616648565b60405180910390f35b348015610c2757600080fd5b50610c426004803603810190610c3d919061571d565b6138f9565b604051610c4f9190616a47565b60405180910390f35b348015610c6457600080fd5b50610c7f6004803603810190610c7a919061568b565b61392e565b604051610c8c919061662d565b60405180910390f35b348015610ca157600080fd5b50610cbc6004803603810190610cb7919061571d565b6139c0565b604051610cc99190616a25565b60405180910390f35b348015610cde57600080fd5b50610cf96004803603810190610cf4919061568b565b613aeb565b604051610d079291906166ff565b60405180910390f35b348015610d1c57600080fd5b50610d376004803603810190610d32919061568b565b613c16565b604051610d4491906166e4565b60405180910390f35b348015610d5957600080fd5b50610d746004803603810190610d6f919061571d565b613ca8565b604051610d819190616648565b60405180910390f35b348015610d9657600080fd5b50610d9f613d3d565b604051610dac91906166c9565b60405180910390f35b348015610dc157600080fd5b50610ddc6004803603810190610dd79190615457565b613d61565b604051610de99190616a25565b60405180910390f35b348015610dfe57600080fd5b50610e196004803603810190610e1491906151be565b613dfc565b005b6000610e25613fa1565b60000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__63fc853c3790916040518263ffffffff1660e01b8152600401610eb59190616a03565b60006040518083038186803b158015610ecd57600080fd5b505af4158015610ee1573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610f0a919061527d565b9050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__6308efc09790916040518263ffffffff1660e01b8152600401610f4c9190616a03565b60006040518083038186803b158015610f6457600080fd5b505af4158015610f78573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190610fa191906152c6565b9050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__63f417daf590916040518263ffffffff1660e01b8152600401610fe39190616a03565b60006040518083038186803b158015610ffb57600080fd5b505af415801561100f573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061103891906155f9565b9050919050565b6000816001806003811115611057576110566171b4565b5b61106083613fc9565b6003811115611072576110716171b4565b5b1461107c82614099565b906110bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b49190616780565b60405180910390fd5b506110c66141bf565b60030160008581526020019081526020016000206000016004015492505050919050565b6000816002806003811115611102576111016171b4565b5b61110b83613fc9565b600381111561111d5761111c6171b4565b5b1461112782614099565b90611168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115f9190616780565b60405180910390fd5b50611172846141e7565b6001015492505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63d8868db690916040518263ffffffff1660e01b81526004016111ba9190616a03565b60206040518083038186803b1580156111d257600080fd5b505af41580156111e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061120a91906155cc565b9050919050565b611219614409565b73__$2872872f739c245a20da3eaa995328fa91$__63130283ee836040518263ffffffff1660e01b81526004016112509190616982565b60006040518083038186803b15801561126857600080fd5b505af415801561127c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906112a591906156d4565b9050919050565b6112b46141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611345576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161133c906167e2565b60405180910390fd5b60005b81518110156113e557600082828151811061136657611365617212565b5b60200260200101519050600061137a613fa1565b60000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505080806113dd9061713c565b915050611348565b507f646436560d9757cb3c0f01da0f62642c6040b00c9a80685f94ef1a7725cad5f1816040516114159190616583565b60405180910390a150565b6114286141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114b0906167e2565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b60008173__$2872872f739c245a20da3eaa995328fa91$__63c71db52190916040518263ffffffff1660e01b815260040161150d9190616a03565b60206040518083038186803b15801561152557600080fd5b505af4158015611539573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061155d919061559f565b9050919050565b600081600180600381111561157c5761157b6171b4565b5b61158583613fc9565b6003811115611597576115966171b4565b5b146115a182614099565b906115e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d99190616780565b60405180910390fd5b506115eb6141bf565b60030160008581526020019081526020016000206000016003015492505050919050565b606060006003811115611625576116246171b4565b5b61162e83613fc9565b60038111156116405761163f6171b4565b5b1415611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161167890616942565b60405180910390fd5b600061168c8361420f565b9050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117de578060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f09400026040518163ffffffff1660e01b815260040160006040518083038186803b15801561175057600080fd5b505afa158015611764573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061178d91906154a0565b9150806002015461179d83614237565b146117dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d490616882565b60405180910390fd5b5b50919050565b60006117ee6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561189b57339050806118556141bf565b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061190a565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611909576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190090616922565b60405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff1661192a6141bf565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a0b57611971611d02565b73ffffffffffffffffffffffffffffffffffffffff1661198f6141bf565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611a0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0190616902565b60405180910390fd5b5b611a13611d02565b611a1b6141bf565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611a64612dfb565b611a6c611d02565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f72d4b00d8e35b3717e384aef5f900256a106d6a423d88935a11579981333ba20611ac2611d7d565b604051611acf9190616648565b60405180910390a4611af382806020019051810190611aee9190615234565b611af7565b5050565b611aff6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b87906167e2565b60405180910390fd5b60005b8151811015611c30576000828281518110611bb157611bb0617212565b5b602002602001015190506001611bc5613fa1565b60000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550508080611c289061713c565b915050611b93565b507f4d570ee36dec878006609360d34ac8d6a0b68d521871ae15a407b6340877ca0181604051611c609190616583565b60405180910390a150565b60608173__$2872872f739c245a20da3eaa995328fa91$__63147e5c8f90916040518263ffffffff1660e01b8152600401611ca69190616a03565b60006040518083038186803b158015611cbe57600080fd5b505af4158015611cd2573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611cfb91906153b4565b9050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a101860001b905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b611dad613fa1565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611e3a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e31906168c2565b60405180910390fd5b836001806003811115611e5057611e4f6171b4565b5b611e5983613fc9565b6003811115611e6b57611e6a6171b4565b5b14611e7582614099565b90611eb6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ead9190616780565b60405180910390fd5b506000801b851415611efd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef4906168a2565b60405180910390fd5b6000848490501415611f44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3b906168e2565b60405180910390fd5b611f9d33611f9888428989898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050614290565b6143ae565b7ee9413c6321ec446a267b7ebf5bb108663f2ef58b35c4f6e18905ac8f205cb28633604051611fcd929190616a62565b60405180910390a1505050505050565b806001806003811115611ff357611ff26171b4565b5b611ffc83613fc9565b600381111561200e5761200d6171b4565b5b1461201882614099565b90612059576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120509190616780565b60405180910390fd5b5060006120658461420f565b905060006120716143f9565b82600401546120809190616ea6565b9050600061208c614401565b905082600301548111156120f55760006120a5826138f9565b9050808310156120ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120e190616862565b60405180910390fd5b818460030181905550505b818360040181905550505050505050565b6000806121116141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905061213f611d55565b801561217657508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b915050919050565b600061218982613fc9565b9050919050565b61219861442b565b8160028060038111156121ae576121ad6171b4565b5b6121b783613fc9565b60038111156121c9576121c86171b4565b5b146121d382614099565b90612214576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161220b9190616780565b60405180910390fd5b5061221e846141e7565b6040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201548152602001600282015481526020016003820180546122a3906170d9565b80601f01602080910402602001604051908101604052809291908181526020018280546122cf906170d9565b801561231c5780601f106122f15761010080835404028352916020019161231c565b820191906000526020600020905b8154815290600101906020018083116122ff57829003601f168201915b50505050508152505092505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63a1d45d5690916040518263ffffffff1660e01b81526004016123699190616a03565b60206040518083038186803b15801561238157600080fd5b505af4158015612395573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123b991906153fd565b9050919050565b6123c861442b565b8160028060038111156123de576123dd6171b4565b5b6123e783613fc9565b60038111156123f9576123f86171b4565b5b1461240382614099565b90612444576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161243b9190616780565b60405180910390fd5b50600061244f6141bf565b600301600086815260200190815260200160002090508060090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124ee90616842565b60405180910390fd5b806005016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152602001600382018054612580906170d9565b80601f01602080910402602001604051908101604052809291908181526020018280546125ac906170d9565b80156125f95780601f106125ce576101008083540402835291602001916125f9565b820191906000526020600020905b8154815290600101906020018083116125dc57829003601f168201915b505050505081525050935061260c6141bf565b60030160008681526020019081526020016000206000808201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600282016000905560038201600090556004820160009055505060058201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000905560028201600090556003820160006126da919061446c565b50506009820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550507fdec847db058c9c012e0f3dbe2b99e05cfa4c693f61a7d8bc64652a68913cbfff8533604051612736929190616a62565b60405180910390a1505050919050565b61274e613fa1565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166127db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127d2906168c2565b60405180910390fd5b6000808351905060005b81811015612a2957600085828151811061280257612801617212565b5b60200260200101519050600160038111156128205761281f6171b4565b5b61282d8260000151613fc9565b600381111561283f5761283e6171b4565b5b1461288b578415612886577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f816000015160405161287d9190616ab9565b60405180910390a15b612a15565b6000801b816040015114156128e15784156128dc577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f81600001516040516128d39190616ae7565b60405180910390a15b612a14565b60008160600151511415612936578415612931577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f81600001516040516129289190616b15565b60405180910390a15b612a13565b6000816020015111801561294d5750428160200151115b15612999578415612994577f4df64445edc775fba59db44b8001852fb1b777eea88fd54f04572dd114e3ff7f816000015160405161298b9190616a8b565b60405180910390a15b612a12565b6129c8816000015160008360200151146129b75782602001516129b9565b425b83604001518460600151614290565b846129d39190616ea6565b93507ee9413c6321ec446a267b7ebf5bb108663f2ef58b35c4f6e18905ac8f205cb2816000015133604051612a09929190616a62565b60405180910390a15b5b5b5b508080612a219061713c565b9150506127e5565b506000821115612a3e57612a3d33836143ae565b5b50505050565b6000612a4e6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b612a7f6144ac565b816001806003811115612a9557612a946171b4565b5b612a9e83613fc9565b6003811115612ab057612aaf6171b4565b5b14612aba82614099565b90612afb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612af29190616780565b60405180910390fd5b506000612b066141bf565b60030160008681526020019081526020016000209050806000016040518060a00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160028201548152602001600382015481526020016004820154815250509350600073ffffffffffffffffffffffffffffffffffffffff168160090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612cac578060090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505b505050919050565b6000816002806003811115612ccc57612ccb6171b4565b5b612cd583613fc9565b6003811115612ce757612ce66171b4565b5b14612cf182614099565b90612d32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d299190616780565b60405180910390fd5b50612d3c846141e7565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__636646c11990916040518263ffffffff1660e01b8152600401612da49190616a03565b60206040518083038186803b158015612dbc57600080fd5b505af4158015612dd0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612df491906153fd565b9050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000905090565b60608173__$2872872f739c245a20da3eaa995328fa91$__630879730d90916040518263ffffffff1660e01b8152600401612e5e9190616a03565b60006040518083038186803b158015612e7657600080fd5b505af4158015612e8a573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190612eb391906153b4565b9050919050565b600080612ec56143f9565b90506000612ed1614401565b90506000612ede826138f9565b905080831015612f23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f1a90616862565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612f93576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f8a906167a2565b60405180910390fd5b60008573ffffffffffffffffffffffffffffffffffffffff1663f09400026040518163ffffffff1660e01b815260040160006040518083038186803b158015612fdb57600080fd5b505afa158015612fef573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061301891906154a0565b9050600081511161305e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161305590616822565b60405180910390fd5b6130666141bf565b600201600081546130769061713c565b9190508190559450336130876141bf565b600301600087815260200190815260200160002060090160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060006130e78661420f565b9050868160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061313582614237565b81600201819055508381600301819055508481600401819055507fcabaf9c102f83746b27ae932f638eebfaf5ea7d014edd20ab14dec3768a8f55c8633604051613180929190616a62565b60405180910390a15050505050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__638233f9b390916040518263ffffffff1660e01b81526004016131cd9190616a03565b60206040518083038186803b1580156131e557600080fd5b505af41580156131f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061321d9190615846565b9050919050565b61322c61450a565b6132346141bf565b6003016000838152602001908152602001600020604051806060016040529081600082016040518060a00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160028201548152602001600382015481526020016004820154815250508152602001600582016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201548152602001600282015481526020016003820180546133bb906170d9565b80601f01602080910402602001604051908101604052809291908181526020018280546133e7906170d9565b80156134345780601f1061340957610100808354040283529160200191613434565b820191906000526020600020905b81548152906001019060200180831161341757829003601f168201915b50505050508152505081526020016009820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815250509050919050565b60608173__$2872872f739c245a20da3eaa995328fa91$__63a1b9089190916040518263ffffffff1660e01b81526004016134d99190616a03565b60006040518083038186803b1580156134f157600080fd5b505af4158015613505573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061352e91906154a0565b9050919050565b600060016135416141bf565b6002015461354f9190616ea6565b905090565b60608173__$2872872f739c245a20da3eaa995328fa91$__632d26b9e290916040518263ffffffff1660e01b815260040161358f9190616a03565b60006040518083038186803b1580156135a757600080fd5b505af41580156135bb573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906135e4919061530f565b9050919050565b6135f3613fa1565b60000160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16613680576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613677906168c2565b60405180910390fd5b846001806003811115613696576136956171b4565b5b61369f83613fc9565b60038111156136b1576136b06171b4565b5b146136bb82614099565b906136fc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136f39190616780565b60405180910390fd5b5042861115613740576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161373790616802565b60405180910390fd5b6000801b851415613786576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161377d906168a2565b60405180910390fd5b60008484905014156137cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137c4906168e2565b60405180910390fd5b6138263361382189898989898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050614290565b6143ae565b7ee9413c6321ec446a267b7ebf5bb108663f2ef58b35c4f6e18905ac8f205cb28733604051613856929190616a62565b60405180910390a150505050505050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63a2e8765590916040518263ffffffff1660e01b81526004016138a29190616a03565b60206040518083038186803b1580156138ba57600080fd5b505af41580156138ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138f2919061542a565b9050919050565b60007f0000000000000000000000000000000000000000000000000000000000000000826139279190616efc565b9050919050565b60008173__$2872872f739c245a20da3eaa995328fa91$__63abf82f4c90916040518263ffffffff1660e01b81526004016139699190616a03565b60206040518083038186803b15801561398157600080fd5b505af4158015613995573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139b991906153fd565b9050919050565b6139c8614409565b8160028060038111156139de576139dd6171b4565b5b6139e783613fc9565b60038111156139f9576139f86171b4565b5b14613a0382614099565b90613a44576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a3b9190616780565b60405180910390fd5b506000613a50856141e7565b905073__$2872872f739c245a20da3eaa995328fa91$__63e99e47f3826003016040518263ffffffff1660e01b8152600401613a8c91906166a7565b60006040518083038186803b158015613aa457600080fd5b505af4158015613ab8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190613ae191906156d4565b9350505050919050565b600060608273__$2872872f739c245a20da3eaa995328fa91$__638cc5eb5490916040518263ffffffff1660e01b8152600401613b289190616a03565b60006040518083038186803b158015613b4057600080fd5b505af4925050508015613b7657506040513d6000823e3d601f19601f82011682018060405250810190613b739190615543565b60015b613c0857613b82617270565b806308c379a01415613baf5750613b976178b5565b80613ba25750613bb1565b6000819250925050613c11565b505b3d8060008114613bdd576040519150601f19603f3d011682016040523d82523d6000602084013e613be2565b606091505b5060ff6040518060600160405280602f8152602001617ade602f91399250925050613c11565b81819350935050505b915091565b60008173__$2872872f739c245a20da3eaa995328fa91$__63d45d097d90916040518263ffffffff1660e01b8152600401613c519190616a03565b60206040518083038186803b158015613c6957600080fd5b505af4158015613c7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ca19190615516565b9050919050565b6000816002806003811115613cc057613cbf6171b4565b5b613cc983613fc9565b6003811115613cdb57613cda6171b4565b5b14613ce582614099565b90613d26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613d1d9190616780565b60405180910390fd5b50613d30846141e7565b6002015492505050919050565b7f000000000000000000000000000000000000000000000000000000000000000081565b613d69614409565b73__$2872872f739c245a20da3eaa995328fa91$__63e99e47f3836040518263ffffffff1660e01b8152600401613da09190616663565b60006040518083038186803b158015613db857600080fd5b505af4158015613dcc573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190613df591906156d4565b9050919050565b613e046141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614613e95576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613e8c906167e2565b60405180910390fd5b6000613e9f6141bf565b60010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614613f9d5781613f016141bf565b60010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35b5050565b60007fa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd905090565b600080821480613fe35750613fdc6141bf565b6002015482115b15613ff15760009050614094565b6000613ffb6141bf565b600301600084815260200190815260200160002090506000801b81600501600201541461402c576002915050614094565b600073ffffffffffffffffffffffffffffffffffffffff168160090160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461408e576001915050614094565b60039150505b919050565b6060600160038111156140af576140ae6171b4565b5b8260038111156140c2576140c16171b4565b5b14156140e857604051806060016040528060258152602001617a926025913990506141ba565b600260038111156140fc576140fb6171b4565b5b82600381111561410f5761410e6171b4565b5b141561413557604051806060016040528060278152602001617ab76027913990506141ba565b600380811115614148576141476171b4565b5b82600381111561415b5761415a6171b4565b5b141561418157604051806060016040528060268152602001617a6c6026913990506141ba565b6040518060400160405280601981526020017f5769746e6574426f617264446174613a20626164206d6f6f640000000000000081525090505b919050565b60007ff595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183905090565b60006141f16141bf565b60030160008381526020019081526020016000206005019050919050565b60006142196141bf565b60030160008381526020019081526020016000206000019050919050565b60006002826040516142499190616551565b602060405180830381855afa158015614266573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190614289919061542a565b9050919050565b60008061429b6141bf565b6003016000878152602001908152602001600020905060008160000190506000826005019050868160010181905550858160020181905550338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508481600301908051906020019061432e92919061454d565b508160040154935082600001600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905560048201600090555050505050949350505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156143f4573d6000803e3d6000fd5b505050565b600034905090565b60003a905090565b60405180604001604052806000151581526020016144256145d3565b81525090565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020016000815260200160008019168152602001606081525090565b508054614478906170d9565b6000825580601f1061448a57506144a9565b601f0160209004906000526020600020908101906144a8919061462c565b5b50565b6040518060a00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000801916815260200160008152602001600081525090565b604051806060016040528061451d6144ac565b815260200161452a61442b565b8152602001600073ffffffffffffffffffffffffffffffffffffffff1681525090565b828054614559906170d9565b90600052602060002090601f01602090048101928261457b57600085556145c2565b82601f1061459457805160ff19168380011785556145c2565b828001600101855582156145c2579182015b828111156145c15782518255916020019190600101906145a6565b5b5090506145cf919061462c565b5090565b6040518060c001604052806145e6614649565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b5b8082111561464557600081600090555060010161462d565b5090565b604051806040016040528060608152602001600063ffffffff1681525090565b600061467c61467784616b83565b616b5e565b9050808382526020820190508285602086028201111561469f5761469e6172a6565b5b60005b858110156146cf57816146b58882614a7b565b8452602084019350602083019250506001810190506146a2565b5050509392505050565b60006146ec6146e784616b83565b616b5e565b9050808382526020820190508285602086028201111561470f5761470e6172a6565b5b60005b8581101561473f57816147258882614a90565b845260208401935060208301925050600181019050614712565b5050509392505050565b600061475c61475784616baf565b616b5e565b9050808382526020820190508285602086028201111561477f5761477e6172a6565b5b60005b858110156147af57816147958882614d17565b845260208401935060208301925050600181019050614782565b5050509392505050565b60006147cc6147c784616bdb565b616b5e565b905080838252602082019050828560208602820111156147ef576147ee6172a6565b5b60005b8581101561481f57816148058882614d2c565b8452602084019350602083019250506001810190506147f2565b5050509392505050565b600061483c61483784616c07565b616b5e565b9050808382526020820190508285602086028201111561485f5761485e6172a6565b5b60005b858110156148ad57815167ffffffffffffffff81111561488557614884617297565b5b8086016148928982614d41565b85526020850194506020840193505050600181019050614862565b5050509392505050565b60006148ca6148c584616c33565b616b5e565b905080838252602082019050828560208602820111156148ed576148ec6172a6565b5b60005b8581101561493b57813567ffffffffffffffff81111561491357614912617297565b5b8086016149208982614d6f565b855260208501945060208401935050506001810190506148f0565b5050509392505050565b600061495861495384616c5f565b616b5e565b9050808382526020820190508285602086028201111561497b5761497a6172a6565b5b60005b858110156149ab5781614991888261517f565b84526020840193506020830192505060018101905061497e565b5050509392505050565b60006149c86149c384616c8b565b616b5e565b9050828152602081018484840111156149e4576149e36172ab565b5b6149ef848285617097565b509392505050565b6000614a0a614a0584616c8b565b616b5e565b905082815260208101848484011115614a2657614a256172ab565b5b614a318482856170a6565b509392505050565b6000614a4c614a4784616cbc565b616b5e565b905082815260208101848484011115614a6857614a676172ab565b5b614a738482856170a6565b509392505050565b600081359050614a8a81617974565b92915050565b600081519050614a9f81617974565b92915050565b600082601f830112614aba57614ab9617297565b5b8135614aca848260208601614669565b91505092915050565b600082601f830112614ae857614ae7617297565b5b8151614af88482602086016146d9565b91505092915050565b600082601f830112614b1657614b15617297565b5b8151614b26848260208601614749565b91505092915050565b600082601f830112614b4457614b43617297565b5b8151614b548482602086016147b9565b91505092915050565b600082601f830112614b7257614b71617297565b5b8151614b82848260208601614829565b91505092915050565b600082601f830112614ba057614b9f617297565b5b8135614bb08482602086016148b7565b91505092915050565b600082601f830112614bce57614bcd617297565b5b8151614bde848260208601614945565b91505092915050565b600081359050614bf68161798b565b92915050565b600081519050614c0b8161798b565b92915050565b600081359050614c20816179a2565b92915050565b600081519050614c35816179a2565b92915050565b60008083601f840112614c5157614c50617297565b5b8235905067ffffffffffffffff811115614c6e57614c6d617292565b5b602083019150836001820283011115614c8a57614c896172a6565b5b9250929050565b600082601f830112614ca657614ca5617297565b5b8135614cb68482602086016149b5565b91505092915050565b600082601f830112614cd457614cd3617297565b5b8151614ce48482602086016149f7565b91505092915050565b600081359050614cfc816179b9565b92915050565b600081519050614d11816179d0565b92915050565b600081519050614d26816179e1565b92915050565b600081519050614d3b816179f8565b92915050565b600082601f830112614d5657614d55617297565b5b8151614d66848260208601614a39565b91505092915050565b600060808284031215614d8557614d8461729c565b5b614d8f6080616b5e565b90506000614d9f8482850161512b565b6000830152506020614db38482850161512b565b6020830152506040614dc784828501614c11565b604083015250606082013567ffffffffffffffff811115614deb57614dea6172a1565b5b614df784828501614c91565b60608301525092915050565b600060408284031215614e1957614e1861729c565b5b614e236040616b5e565b9050600082013567ffffffffffffffff811115614e4357614e426172a1565b5b614e4f84828501614c91565b6000830152506020614e6384828501615140565b60208301525092915050565b600060408284031215614e8557614e8461729c565b5b614e8f6040616b5e565b9050600082015167ffffffffffffffff811115614eaf57614eae6172a1565b5b614ebb84828501614cbf565b6000830152506020614ecf84828501615155565b60208301525092915050565b600060c08284031215614ef157614ef061729c565b5b614efb60c0616b5e565b9050600082013567ffffffffffffffff811115614f1b57614f1a6172a1565b5b614f2784828501614e03565b6000830152506020614f3b84828501615194565b6020830152506040614f4f84828501615194565b6040830152506060614f6384828501615194565b6060830152506080614f778482850161516a565b60808301525060a0614f8b8482850161516a565b60a08301525092915050565b600060c08284031215614fad57614fac61729c565b5b614fb760c0616b5e565b9050600082015167ffffffffffffffff811115614fd757614fd66172a1565b5b614fe384828501614e6f565b6000830152506020614ff7848285016151a9565b602083015250604061500b848285016151a9565b604083015250606061501f848285016151a9565b60608301525060806150338482850161517f565b60808301525060a06150478482850161517f565b60a08301525092915050565b6000604082840312156150695761506861729c565b5b6150736040616b5e565b9050600061508384828501614be7565b600083015250602082013567ffffffffffffffff8111156150a7576150a66172a1565b5b6150b384828501614edb565b60208301525092915050565b6000604082840312156150d5576150d461729c565b5b6150df6040616b5e565b905060006150ef84828501614bfc565b600083015250602082015167ffffffffffffffff811115615113576151126172a1565b5b61511f84828501614f97565b60208301525092915050565b60008135905061513a81617a0f565b92915050565b60008135905061514f81617a26565b92915050565b60008151905061516481617a26565b92915050565b60008135905061517981617a3d565b92915050565b60008151905061518e81617a3d565b92915050565b6000813590506151a381617a54565b92915050565b6000815190506151b881617a54565b92915050565b6000602082840312156151d4576151d36172b5565b5b60006151e284828501614a7b565b91505092915050565b600060208284031215615201576152006172b5565b5b600082013567ffffffffffffffff81111561521f5761521e6172b0565b5b61522b84828501614aa5565b91505092915050565b60006020828403121561524a576152496172b5565b5b600082015167ffffffffffffffff811115615268576152676172b0565b5b61527484828501614ad3565b91505092915050565b600060208284031215615293576152926172b5565b5b600082015167ffffffffffffffff8111156152b1576152b06172b0565b5b6152bd84828501614b01565b91505092915050565b6000602082840312156152dc576152db6172b5565b5b600082015167ffffffffffffffff8111156152fa576152f96172b0565b5b61530684828501614b2f565b91505092915050565b600060208284031215615325576153246172b5565b5b600082015167ffffffffffffffff811115615343576153426172b0565b5b61534f84828501614b5d565b91505092915050565b6000806040838503121561536f5761536e6172b5565b5b600083013567ffffffffffffffff81111561538d5761538c6172b0565b5b61539985828601614b8b565b92505060206153aa85828601614be7565b9150509250929050565b6000602082840312156153ca576153c96172b5565b5b600082015167ffffffffffffffff8111156153e8576153e76172b0565b5b6153f484828501614bb9565b91505092915050565b600060208284031215615413576154126172b5565b5b600061542184828501614bfc565b91505092915050565b6000602082840312156154405761543f6172b5565b5b600061544e84828501614c26565b91505092915050565b60006020828403121561546d5761546c6172b5565b5b600082013567ffffffffffffffff81111561548b5761548a6172b0565b5b61549784828501614c91565b91505092915050565b6000602082840312156154b6576154b56172b5565b5b600082015167ffffffffffffffff8111156154d4576154d36172b0565b5b6154e084828501614cbf565b91505092915050565b6000602082840312156154ff576154fe6172b5565b5b600061550d84828501614ced565b91505092915050565b60006020828403121561552c5761552b6172b5565b5b600061553a84828501614d02565b91505092915050565b6000806040838503121561555a576155596172b5565b5b600061556885828601614d02565b925050602083015167ffffffffffffffff811115615589576155886172b0565b5b61559585828601614d41565b9150509250929050565b6000602082840312156155b5576155b46172b5565b5b60006155c384828501614d17565b91505092915050565b6000602082840312156155e2576155e16172b5565b5b60006155f084828501614d2c565b91505092915050565b60006020828403121561560f5761560e6172b5565b5b600082015167ffffffffffffffff81111561562d5761562c6172b0565b5b61563984828501614d41565b91505092915050565b600060208284031215615658576156576172b5565b5b600082013567ffffffffffffffff811115615676576156756172b0565b5b61568284828501614edb565b91505092915050565b6000602082840312156156a1576156a06172b5565b5b600082013567ffffffffffffffff8111156156bf576156be6172b0565b5b6156cb84828501615053565b91505092915050565b6000602082840312156156ea576156e96172b5565b5b600082015167ffffffffffffffff811115615708576157076172b0565b5b615714848285016150bf565b91505092915050565b600060208284031215615733576157326172b5565b5b60006157418482850161512b565b91505092915050565b60008060008060608587031215615764576157636172b5565b5b60006157728782880161512b565b945050602061578387828801614c11565b935050604085013567ffffffffffffffff8111156157a4576157a36172b0565b5b6157b087828801614c3b565b925092505092959194509250565b6000806000806000608086880312156157da576157d96172b5565b5b60006157e88882890161512b565b95505060206157f98882890161512b565b945050604061580a88828901614c11565b935050606086013567ffffffffffffffff81111561582b5761582a6172b0565b5b61583788828901614c3b565b92509250509295509295909350565b60006020828403121561585c5761585b6172b5565b5b600061586a8482850161517f565b91505092915050565b600061587f83836158e7565b60208301905092915050565b60006158978383615d0e565b60208301905092915050565b60006158af8383615d2c565b60208301905092915050565b60006158c78383615d4a565b905092915050565b60006158db8383616506565b60208301905092915050565b6158f081616f56565b82525050565b6158ff81616f56565b82525050565b600061591082616d52565b61591a8185616de0565b935061592583616ced565b8060005b8381101561595657815161593d8882615873565b975061594883616d9f565b925050600181019050615929565b5085935050505092915050565b600061596e82616d5d565b6159788185616df1565b935061598383616cfd565b8060005b838110156159b457815161599b888261588b565b97506159a683616dac565b925050600181019050615987565b5085935050505092915050565b60006159cc82616d68565b6159d68185616e02565b93506159e183616d0d565b8060005b83811015615a125781516159f988826158a3565b9750615a0483616db9565b9250506001810190506159e5565b5085935050505092915050565b6000615a2a82616d73565b615a348185616e13565b935083602082028501615a4685616d1d565b8060005b85811015615a825784840389528151615a6385826158bb565b9450615a6e83616dc6565b925060208a01995050600181019050615a4a565b50829750879550505050505092915050565b6000615a9f82616d7e565b615aa98185616e24565b9350615ab483616d2d565b8060005b83811015615ae5578151615acc88826158cf565b9750615ad783616dd3565b925050600181019050615ab8565b5085935050505092915050565b615afb81616f68565b82525050565b615b0a81616f68565b82525050565b615b1981616f68565b82525050565b615b2881616f74565b82525050565b615b3781616f74565b82525050565b6000615b4882616d89565b615b528185616e35565b9350615b628185602086016170a6565b615b6b816172ba565b840191505092915050565b6000615b8182616d89565b615b8b8185616e46565b9350615b9b8185602086016170a6565b615ba4816172ba565b840191505092915050565b6000615bba82616d89565b615bc48185616e57565b9350615bd48185602086016170a6565b615bdd816172ba565b840191505092915050565b6000615bf382616d89565b615bfd8185616e68565b9350615c0d8185602086016170a6565b615c16816172ba565b840191505092915050565b6000615c2c82616d89565b615c368185616e79565b9350615c468185602086016170a6565b80840191505092915050565b60008154615c5f816170d9565b615c698186616e57565b94506001821660008114615c845760018114615c9657615cc9565b60ff1983168652602086019350615cc9565b615c9f85616d3d565b60005b83811015615cc157815481890152600182019150602081019050615ca2565b808801955050505b50505092915050565b615cdb8161702b565b82525050565b615cea8161703d565b82525050565b615cf98161704f565b82525050565b615d0881617061565b82525050565b615d1781616fb6565b82525050565b615d2681616fb6565b82525050565b615d3581616fc3565b82525050565b615d4481616fc3565b82525050565b6000615d5582616d94565b615d5f8185616e84565b9350615d6f8185602086016170a6565b615d78816172ba565b840191505092915050565b6000615d8e82616d94565b615d988185616e95565b9350615da88185602086016170a6565b615db1816172ba565b840191505092915050565b6000615dc9602c83616e95565b9150615dd4826172d8565b604082019050919050565b6000615dec602983616e95565b9150615df782617327565b604082019050919050565b6000615e0f602e83616e95565b9150615e1a82617376565b604082019050919050565b6000615e32601b83616e95565b9150615e3d826173c5565b602082019050919050565b6000615e55603183616e95565b9150615e60826173ee565b604082019050919050565b6000615e78602c83616e95565b9150615e838261743d565b604082019050919050565b6000615e9b602d83616e95565b9150615ea68261748c565b604082019050919050565b6000615ebe602f83616e95565b9150615ec9826174db565b604082019050919050565b6000615ee1602f83616e95565b9150615eec8261752a565b604082019050919050565b6000615f04603f83616e95565b9150615f0f82617579565b604082019050919050565b6000615f27604283616e95565b9150615f32826175c8565b606082019050919050565b6000615f4a602a83616e95565b9150615f558261763d565b604082019050919050565b6000615f6d602d83616e95565b9150615f788261768c565b604082019050919050565b6000615f90603a83616e95565b9150615f9b826176db565b604082019050919050565b6000615fb3603483616e95565b9150615fbe8261772a565b604082019050919050565b6000615fd6602b83616e95565b9150615fe182617779565b604082019050919050565b6000615ff9602e83616e95565b9150616004826177c8565b604082019050919050565b600061601c602f83616e95565b915061602782617817565b604082019050919050565b600061603f603183616e95565b915061604a82617866565b604082019050919050565b600060408301600083015184820360008601526160728282615b3d565b915050602083015161608760208601826164e8565b508091505092915050565b600060408301600083015184820360008601526160af8282615be8565b91505060208301516160c460208601826164f7565b508091505092915050565b600060c08301600083015184820360008601526160ec8282616055565b91505060208301516161016020860182616533565b5060408301516161146040860182616533565b5060608301516161276060860182616533565b50608083015161613a6080860182616506565b5060a083015161614d60a0860182616506565b508091505092915050565b600060c08301600083015184820360008601526161758282616092565b915050602083015161618a6020860182616542565b50604083015161619d6040860182616542565b5060608301516161b06060860182616542565b5060808301516161c36080860182616524565b5060a08301516161d660a0860182616524565b508091505092915050565b600060c08301600083015184820360008601526161fe8282616092565b91505060208301516162136020860182616542565b5060408301516162266040860182616542565b5060608301516162396060860182616542565b50608083015161624c6080860182616524565b5060a083015161625f60a0860182616524565b508091505092915050565b600060e08301600083015161628260008601826162ba565b50602083015184820360a086015261629a828261638a565b91505060408301516162af60c08601826158e7565b508091505092915050565b60a0820160008201516162d06000850182615ce1565b5060208201516162e360208501826158e7565b5060408201516162f66040850182615b1f565b50606082015161630960608501826164ca565b50608082015161631c60808501826164ca565b50505050565b60a0820160008201516163386000850182615ce1565b50602082015161634b60208501826158e7565b50604082015161635e6040850182615b1f565b50606082015161637160608501826164ca565b50608082015161638460808501826164ca565b50505050565b60006080830160008301516163a260008601826158e7565b5060208301516163b560208601826164ca565b5060408301516163c86040860182615b1f565b50606083015184820360608601526163e08282615b3d565b9150508091505092915050565b600060808301600083015161640560008601826158e7565b50602083015161641860208601826164ca565b50604083015161642b6040860182615b1f565b50606083015184820360608601526164438282615b3d565b9150508091505092915050565b60006040830160008301516164686000860182615af2565b506020830151848203602086015261648082826160cf565b9150508091505092915050565b60006040830160008301516164a56000860182615b10565b50602083015184820360208601526164bd82826161e1565b9150508091505092915050565b6164d381616ff0565b82525050565b6164e281616ff0565b82525050565b6164f181616ffa565b82525050565b61650081616ffa565b82525050565b61650f8161700a565b82525050565b61651e8161700a565b82525050565b61652d8161700a565b82525050565b61653c8161701e565b82525050565b61654b8161701e565b82525050565b600061655d8284615c21565b915081905092915050565b600060208201905061657d60008301846158f6565b92915050565b6000602082019050818103600083015261659d8184615905565b905092915050565b600060208201905081810360008301526165bf8184615963565b905092915050565b600060208201905081810360008301526165e181846159c1565b905092915050565b600060208201905081810360008301526166038184615a1f565b905092915050565b600060208201905081810360008301526166258184615a94565b905092915050565b60006020820190506166426000830184615b01565b92915050565b600060208201905061665d6000830184615b2e565b92915050565b6000602082019050818103600083015261667d8184615baf565b905092915050565b6000602082019050818103600083015261669f8184615b76565b905092915050565b600060208201905081810360008301526166c18184615c52565b905092915050565b60006020820190506166de6000830184615cd2565b92915050565b60006020820190506166f96000830184615cf0565b92915050565b60006040820190506167146000830185615cf0565b81810360208301526167268184615d83565b90509392505050565b60006020820190506167446000830184615cff565b92915050565b600060208201905061675f6000830184615d1d565b92915050565b600060208201905061677a6000830184615d3b565b92915050565b6000602082019050818103600083015261679a8184615d83565b905092915050565b600060208201905081810360008301526167bb81615dbc565b9050919050565b600060208201905081810360008301526167db81615ddf565b9050919050565b600060208201905081810360008301526167fb81615e25565b9050919050565b6000602082019050818103600083015261681b81615e48565b9050919050565b6000602082019050818103600083015261683b81615e8e565b9050919050565b6000602082019050818103600083015261685b81615eb1565b9050919050565b6000602082019050818103600083015261687b81615ed4565b9050919050565b6000602082019050818103600083015261689b81615ef7565b9050919050565b600060208201905081810360008301526168bb81615f1a565b9050919050565b600060208201905081810360008301526168db81615f3d565b9050919050565b600060208201905081810360008301526168fb81615f83565b9050919050565b6000602082019050818103600083015261691b81615fa6565b9050919050565b6000602082019050818103600083015261693b81615fc9565b9050919050565b6000602082019050818103600083015261695b8161600f565b9050919050565b6000602082019050818103600083015261697b81616032565b9050919050565b6000602082019050818103600083015261699c8184616158565b905092915050565b600060208201905081810360008301526169be818461626a565b905092915050565b600060a0820190506169db6000830184616322565b92915050565b600060208201905081810360008301526169fb81846163ed565b905092915050565b60006020820190508181036000830152616a1d818461648d565b905092915050565b60006020820190508181036000830152616a3f8184616450565b905092915050565b6000602082019050616a5c60008301846164d9565b92915050565b6000604082019050616a7760008301856164d9565b616a8460208301846158f6565b9392505050565b6000604082019050616aa060008301846164d9565b8181036020830152616ab181615e02565b905092915050565b6000604082019050616ace60008301846164d9565b8181036020830152616adf81615e6b565b905092915050565b6000604082019050616afc60008301846164d9565b8181036020830152616b0d81615f60565b905092915050565b6000604082019050616b2a60008301846164d9565b8181036020830152616b3b81615fec565b905092915050565b6000602082019050616b586000830184616515565b92915050565b6000616b68616b79565b9050616b74828261710b565b919050565b6000604051905090565b600067ffffffffffffffff821115616b9e57616b9d617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616bca57616bc9617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616bf657616bf5617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616c2257616c21617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616c4e57616c4d617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616c7a57616c79617241565b5b602082029050602081019050919050565b600067ffffffffffffffff821115616ca657616ca5617241565b5b616caf826172ba565b9050602081019050919050565b600067ffffffffffffffff821115616cd757616cd6617241565b5b616ce0826172ba565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000616eb182616ff0565b9150616ebc83616ff0565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115616ef157616ef0617185565b5b828201905092915050565b6000616f0782616ff0565b9150616f1283616ff0565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615616f4b57616f4a617185565b5b828202905092915050565b6000616f6182616fd0565b9050919050565b60008115159050919050565b6000819050919050565b6000616f8982616f56565b9050919050565b6000819050616f9e8261794b565b919050565b6000819050616fb182617960565b919050565b600081600f0b9050919050565b60008160030b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b600061703682617073565b9050919050565b600061704882617073565b9050919050565b600061705a82616f90565b9050919050565b600061706c82616fa3565b9050919050565b600061707e82617085565b9050919050565b600061709082616fd0565b9050919050565b82818337600083830152505050565b60005b838110156170c45780820151818401526020810190506170a9565b838111156170d3576000848401525b50505050565b600060028204905060018216806170f157607f821691505b60208210811415617105576171046171e3565b5b50919050565b617114826172ba565b810181811067ffffffffffffffff8211171561713357617132617241565b5b80604052505050565b600061714782616ff0565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561717a57617179617185565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060033d111561728f5760046000803e61728c6000516172cb565b90505b90565b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160e01c9050919050565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206e756c6c207363726970740000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f6172643a206e6f207472616e736665727360008201527f2061636365707465640000000000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206261642074696d657374616d70000000000000000000000000000000000000602082015250565b7f5769746e6574426f617264446174613a206f6e6c79206f776e65720000000000600082015250565b7f5769746e657452657175657374426f617264547275737461626c65446566617560008201527f6c743a206261642074696d657374616d70000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2062616420717565727949640000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f20656d7074792073637269707400000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206f6e6c79207265717565737465720000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2072657761726420746f6f206c6f770000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2062797465636f6465206368616e67656420616674657220706f7374696e6700602082015250565b7f5769746e657452657175657374426f617264547275737461626c65446566617560008201527f6c743a205769746e65742064725478486173682063616e6e6f74206265207a6560208201527f726f000000000000000000000000000000000000000000000000000000000000604082015250565b7f5769746e6574426f6172644461746141434c733a20756e617574686f72697a6560008201527f64207265706f7274657200000000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f2062616420647254784861736800000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65446566617560008201527f6c743a20726573756c742063616e6e6f7420626520656d707479000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f20616c726561647920696e697469616c697a6564000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206f6e6c79206f776e6572000000000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206261642063626f724279746573000000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f617264547275737461626c65426173653a60008201527f206e6f742079657420706f737465640000000000000000000000000000000000602082015250565b7f5769746e657452657175657374426f61726455706772616461626c654261736560008201527f3a206e6f7420696d706c656d656e746564000000000000000000000000000000602082015250565b600060443d10156178c557617948565b6178cd616b79565b60043d036004823e80513d602482011167ffffffffffffffff821117156178f5575050617948565b808201805167ffffffffffffffff8111156179135750505050617948565b80602083010160043d038501811115617930575050505050617948565b61793f8260200185018661710b565b82955050505050505b90565b610100811061795d5761795c6171b4565b5b50565b60048110617971576179706171b4565b5b50565b61797d81616f56565b811461798857600080fd5b50565b61799481616f68565b811461799f57600080fd5b50565b6179ab81616f74565b81146179b657600080fd5b50565b6179c281616f7e565b81146179cd57600080fd5b50565b61010081106179de57600080fd5b50565b6179ea81616fb6565b81146179f557600080fd5b50565b617a0181616fc3565b8114617a0c57600080fd5b50565b617a1881616ff0565b8114617a2357600080fd5b50565b617a2f81616ffa565b8114617a3a57600080fd5b50565b617a468161700a565b8114617a5157600080fd5b50565b617a5d8161701e565b8114617a6857600080fd5b5056fe5769746e6574426f617264446174613a206e6f7420696e2044656c65746564207374617475735769746e6574426f617264446174613a206e6f7420696e20506f73746564207374617475735769746e6574426f617264446174613a206e6f7420696e205265706f72746564207374617475735769746e657452657175657374426f617264547275737461626c65426173653a206661696c696e6720617373657274a26469706673582212202626e20c29ec4ce25474ec6cb7a1ceb7b8c91cb224f916654f83066eda96301464736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x2E8 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x7780CDE1 GT PUSH2 0x190 JUMPI DUP1 PUSH4 0xC805DD0F GT PUSH2 0xDC JUMPI DUP1 PUSH4 0xD4DA69AC GT PUSH2 0x95 JUMPI DUP1 PUSH4 0xDC3C71CD GT PUSH2 0x6F JUMPI DUP1 PUSH4 0xDC3C71CD EQ PUSH2 0xD4D JUMPI DUP1 PUSH4 0xE5A6B10F EQ PUSH2 0xD8A JUMPI DUP1 PUSH4 0xE99E47F3 EQ PUSH2 0xDB5 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0xDF2 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xD4DA69AC EQ PUSH2 0xC95 JUMPI DUP1 PUSH4 0xD74803BE EQ PUSH2 0xCD2 JUMPI DUP1 PUSH4 0xDB04F16D EQ PUSH2 0xD10 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xC805DD0F EQ PUSH2 0xB4D JUMPI DUP1 PUSH4 0xC87D969E EQ PUSH2 0xB78 JUMPI DUP1 PUSH4 0xC8F5CDD5 EQ PUSH2 0xBB5 JUMPI DUP1 PUSH4 0xCF62D115 EQ PUSH2 0xBDE JUMPI DUP1 PUSH4 0xD2E87561 EQ PUSH2 0xC1B JUMPI DUP1 PUSH4 0xD4CED132 EQ PUSH2 0xC58 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xA8604C1A GT PUSH2 0x149 JUMPI DUP1 PUSH4 0xB281A7BD GT PUSH2 0x123 JUMPI DUP1 PUSH4 0xB281A7BD EQ PUSH2 0xA66 JUMPI DUP1 PUSH4 0xBC7E25FF EQ PUSH2 0xA96 JUMPI DUP1 PUSH4 0xC2485EBD EQ PUSH2 0xAD3 JUMPI DUP1 PUSH4 0xC683B465 EQ PUSH2 0xB10 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0xA8604C1A EQ PUSH2 0x9C1 JUMPI DUP1 PUSH4 0xA9E954B9 EQ PUSH2 0x9FE JUMPI DUP1 PUSH4 0xB0768328 EQ PUSH2 0xA29 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x7780CDE1 EQ PUSH2 0x879 JUMPI DUP1 PUSH4 0x7C1FBDA3 EQ PUSH2 0x8B6 JUMPI DUP1 PUSH4 0x81A398B5 EQ PUSH2 0x8F3 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x91C JUMPI DUP1 PUSH4 0x99F65804 EQ PUSH2 0x947 JUMPI DUP1 PUSH4 0x9D96FCED EQ PUSH2 0x984 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x3B885F2A GT PUSH2 0x24F JUMPI DUP1 PUSH4 0x5479D940 GT PUSH2 0x208 JUMPI DUP1 PUSH4 0x66BFDC75 GT PUSH2 0x1E2 JUMPI DUP1 PUSH4 0x66BFDC75 EQ PUSH2 0x7A6 JUMPI DUP1 PUSH4 0x6B58960A EQ PUSH2 0x7C2 JUMPI DUP1 PUSH4 0x6F07ABCC EQ PUSH2 0x7FF JUMPI DUP1 PUSH4 0x754E5BEA EQ PUSH2 0x83C JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x5479D940 EQ PUSH2 0x727 JUMPI DUP1 PUSH4 0x54FD4D50 EQ PUSH2 0x752 JUMPI DUP1 PUSH4 0x6280BCE8 EQ PUSH2 0x77D JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x3B885F2A EQ PUSH2 0x605 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x642 JUMPI DUP1 PUSH4 0x4C9F72E3 EQ PUSH2 0x66B JUMPI DUP1 PUSH4 0x4DCFFAF3 EQ PUSH2 0x694 JUMPI DUP1 PUSH4 0x5001F3B5 EQ PUSH2 0x6D1 JUMPI DUP1 PUSH4 0x52D1902D EQ PUSH2 0x6FC JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x2241F2DB GT PUSH2 0x2A1 JUMPI DUP1 PUSH4 0x2241F2DB EQ PUSH2 0x4D1 JUMPI DUP1 PUSH4 0x2565082B EQ PUSH2 0x50E JUMPI DUP1 PUSH4 0x28A78D9B EQ PUSH2 0x54B JUMPI DUP1 PUSH4 0x2B68B9C6 EQ PUSH2 0x574 JUMPI DUP1 PUSH4 0x2B905FBB EQ PUSH2 0x58B JUMPI DUP1 PUSH4 0x3AE97295 EQ PUSH2 0x5C8 JUMPI PUSH2 0x328 JUMP JUMPDEST DUP1 PUSH4 0x44AD7BE EQ PUSH2 0x363 JUMPI DUP1 PUSH4 0x7E66852 EQ PUSH2 0x3A0 JUMPI DUP1 PUSH4 0xF572D2C EQ PUSH2 0x3DD JUMPI DUP1 PUSH4 0x109A0E3C EQ PUSH2 0x41A JUMPI DUP1 PUSH4 0x1DD27DAF EQ PUSH2 0x457 JUMPI DUP1 PUSH4 0x20F9241E EQ PUSH2 0x494 JUMPI PUSH2 0x328 JUMP JUMPDEST CALLDATASIZE PUSH2 0x328 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x31F SWAP1 PUSH2 0x67C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x35A SWAP1 PUSH2 0x6962 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x36F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x38A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x385 SWAP2 SWAP1 PUSH2 0x51BE JUMP JUMPDEST PUSH2 0xE1B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x397 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3AC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3C7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3C2 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0xE7A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3D4 SWAP2 SWAP1 PUSH2 0x65A5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3E9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x404 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3FF SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0xF11 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x411 SWAP2 SWAP1 PUSH2 0x65C7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x426 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x441 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x43C SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0xFA8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x44E SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x463 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x47E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x479 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x103F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x48B SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4B6 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x10EA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4C8 SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x4F8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F3 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x117F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x505 SWAP2 SWAP1 PUSH2 0x6765 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x51A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x535 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x530 SWAP2 SWAP1 PUSH2 0x5642 JUMP JUMPDEST PUSH2 0x1211 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x542 SWAP2 SWAP1 PUSH2 0x6A25 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x557 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x572 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x56D SWAP2 SWAP1 PUSH2 0x51EB JUMP JUMPDEST PUSH2 0x12AC JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x580 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x589 PUSH2 0x1420 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x597 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x5B2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5AD SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x14D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5BF SWAP2 SWAP1 PUSH2 0x674A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x5EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5EA SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x1564 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5FC SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x611 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x62C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x627 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x160F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x639 SWAP2 SWAP1 PUSH2 0x6685 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x64E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x669 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x664 SWAP2 SWAP1 PUSH2 0x5457 JUMP JUMPDEST PUSH2 0x17E4 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x677 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x692 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x68D SWAP2 SWAP1 PUSH2 0x51EB JUMP JUMPDEST PUSH2 0x1AF7 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x6A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x6BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6B6 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x1C6B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6C8 SWAP2 SWAP1 PUSH2 0x660B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x6DD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x6E6 PUSH2 0x1D02 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6F3 SWAP2 SWAP1 PUSH2 0x6568 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x708 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x711 PUSH2 0x1D2A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x71E SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x733 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x73C PUSH2 0x1D55 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x749 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x75E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x767 PUSH2 0x1D7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x774 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x789 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x7A4 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x79F SWAP2 SWAP1 PUSH2 0x574A JUMP JUMPDEST PUSH2 0x1DA5 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7C0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7BB SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x1FDD JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x7CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x7E9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7E4 SWAP2 SWAP1 PUSH2 0x51BE JUMP JUMPDEST PUSH2 0x2106 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7F6 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x80B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x826 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x821 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x217E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x833 SWAP2 SWAP1 PUSH2 0x672F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x848 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x863 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x85E SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x2190 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x870 SWAP2 SWAP1 PUSH2 0x69E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x885 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x8A0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x89B SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x232E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8AD SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x8C2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x8DD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x8D8 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x23C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x8EA SWAP2 SWAP1 PUSH2 0x69E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x8FF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x91A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x915 SWAP2 SWAP1 PUSH2 0x5358 JUMP JUMPDEST PUSH2 0x2746 JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x928 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x931 PUSH2 0x2A44 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x93E SWAP2 SWAP1 PUSH2 0x6568 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x953 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x96E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x969 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x2A77 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x97B SWAP2 SWAP1 PUSH2 0x69C6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x990 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x9AB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9A6 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x2CB4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9B8 SWAP2 SWAP1 PUSH2 0x6568 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x9CD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x9E8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x9E3 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x2D69 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x9F5 SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA0A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA13 PUSH2 0x2DFB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA20 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xA35 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xA50 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA4B SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x2E23 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA5D SWAP2 SWAP1 PUSH2 0x660B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0xA80 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xA7B SWAP2 SWAP1 PUSH2 0x54E9 JUMP JUMPDEST PUSH2 0x2EBA JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xA8D SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xAA2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xABD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xAB8 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3192 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xACA SWAP2 SWAP1 PUSH2 0x6B43 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xADF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xAFA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xAF5 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x3224 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB07 SWAP2 SWAP1 PUSH2 0x69A4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB37 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB32 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x349E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB44 SWAP2 SWAP1 PUSH2 0x6685 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB62 PUSH2 0x3535 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xB6F SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xB84 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xB9F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xB9A SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3554 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xBAC SWAP2 SWAP1 PUSH2 0x65E9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBC1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xBDC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xBD7 SWAP2 SWAP1 PUSH2 0x57BE JUMP JUMPDEST PUSH2 0x35EB JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xBEA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC05 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC00 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3867 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC12 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xC27 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC42 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC3D SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x38F9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC4F SWAP2 SWAP1 PUSH2 0x6A47 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xC64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xC7F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xC7A SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x392E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xC8C SWAP2 SWAP1 PUSH2 0x662D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCA1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xCBC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCB7 SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x39C0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xCC9 SWAP2 SWAP1 PUSH2 0x6A25 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xCDE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xCF9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xCF4 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3AEB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD07 SWAP3 SWAP2 SWAP1 PUSH2 0x66FF JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD1C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD37 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD32 SWAP2 SWAP1 PUSH2 0x568B JUMP JUMPDEST PUSH2 0x3C16 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD44 SWAP2 SWAP1 PUSH2 0x66E4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD59 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD74 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xD6F SWAP2 SWAP1 PUSH2 0x571D JUMP JUMPDEST PUSH2 0x3CA8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xD81 SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xD96 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xD9F PUSH2 0x3D3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xDAC SWAP2 SWAP1 PUSH2 0x66C9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDC1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xDDC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xDD7 SWAP2 SWAP1 PUSH2 0x5457 JUMP JUMPDEST PUSH2 0x3D61 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0xDE9 SWAP2 SWAP1 PUSH2 0x6A25 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0xDFE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0xE19 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xE14 SWAP2 SWAP1 PUSH2 0x51BE JUMP JUMPDEST PUSH2 0x3DFC JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0xE25 PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0xFC853C37 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xEB5 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xECD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xEE1 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 0xF0A SWAP2 SWAP1 PUSH2 0x527D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x8EFC097 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF4C SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF64 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0xF78 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 0xFA1 SWAP2 SWAP1 PUSH2 0x52C6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0xF417DAF5 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFE3 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xFFB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x100F 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 0x1038 SWAP2 SWAP1 PUSH2 0x55F9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1057 JUMPI PUSH2 0x1056 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1060 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1072 JUMPI PUSH2 0x1071 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x107C DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x10BD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x10B4 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x10C6 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x4 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1102 JUMPI PUSH2 0x1101 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x110B DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x111D JUMPI PUSH2 0x111C PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x1127 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x1168 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x115F SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x1172 DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x1 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xD8868DB6 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11BA SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x11D2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x11E6 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 0x120A SWAP2 SWAP1 PUSH2 0x55CC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1219 PUSH2 0x4409 JUMP JUMPDEST PUSH20 0x0 PUSH4 0x130283EE DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1250 SWAP2 SWAP1 PUSH2 0x6982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1268 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x127C 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 0x12A5 SWAP2 SWAP1 PUSH2 0x56D4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x12B4 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1345 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x133C SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x13E5 JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1366 JUMPI PUSH2 0x1365 PUSH2 0x7212 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x0 PUSH2 0x137A PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND 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 POP DUP1 DUP1 PUSH2 0x13DD SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1348 JUMP JUMPDEST POP PUSH32 0x646436560D9757CB3C0F01DA0F62642C6040B00C9A80685F94EF1A7725CAD5F1 DUP2 PUSH1 0x40 MLOAD PUSH2 0x1415 SWAP2 SWAP1 PUSH2 0x6583 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH2 0x1428 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x14B9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14B0 SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SELFDESTRUCT JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xC71DB521 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x150D SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1525 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1539 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 0x155D SWAP2 SWAP1 PUSH2 0x559F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x157C JUMPI PUSH2 0x157B PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1585 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1597 JUMPI PUSH2 0x1596 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x15A1 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x15E2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15D9 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x15EB PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x3 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1625 JUMPI PUSH2 0x1624 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x162E DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1640 JUMPI PUSH2 0x163F PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x1681 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1678 SWAP1 PUSH2 0x6942 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x168C DUP4 PUSH2 0x420F JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x17DE JUMPI DUP1 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF0940002 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1750 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1764 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 0x178D SWAP2 SWAP1 PUSH2 0x54A0 JUMP JUMPDEST SWAP2 POP DUP1 PUSH1 0x2 ADD SLOAD PUSH2 0x179D DUP4 PUSH2 0x4237 JUMP JUMPDEST EQ PUSH2 0x17DD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17D4 SWAP1 PUSH2 0x6882 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17EE PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x189B JUMPI CALLER SWAP1 POP DUP1 PUSH2 0x1855 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x190A JUMP JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1909 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1900 SWAP1 PUSH2 0x6922 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x192A PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1A0B JUMPI PUSH2 0x1971 PUSH2 0x1D02 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x198F PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1A0A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A01 SWAP1 PUSH2 0x6902 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH2 0x1A13 PUSH2 0x1D02 JUMP JUMPDEST PUSH2 0x1A1B PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1A64 PUSH2 0x2DFB JUMP JUMPDEST PUSH2 0x1A6C PUSH2 0x1D02 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x72D4B00D8E35B3717E384AEF5F900256A106D6A423D88935A11579981333BA20 PUSH2 0x1AC2 PUSH2 0x1D7D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1ACF SWAP2 SWAP1 PUSH2 0x6648 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 PUSH2 0x1AF3 DUP3 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x1AEE SWAP2 SWAP1 PUSH2 0x5234 JUMP JUMPDEST PUSH2 0x1AF7 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x1AFF PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x1B90 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B87 SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 JUMPDEST DUP2 MLOAD DUP2 LT ISZERO PUSH2 0x1C30 JUMPI PUSH1 0x0 DUP3 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x1BB1 JUMPI PUSH2 0x1BB0 PUSH2 0x7212 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x1 PUSH2 0x1BC5 PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND 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 POP DUP1 DUP1 PUSH2 0x1C28 SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1B93 JUMP JUMPDEST POP PUSH32 0x4D570EE36DEC878006609360D34AC8D6A0B68D521871AE15A407B6340877CA01 DUP2 PUSH1 0x40 MLOAD PUSH2 0x1C60 SWAP2 SWAP1 PUSH2 0x6583 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x147E5C8F SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1CA6 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1CBE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1CD2 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 0x1CFB SWAP2 SWAP1 PUSH2 0x53B4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x9969C6AFF411C5E5F0807500693E8F819CE88529615CFA6CAB569B24788A1018 PUSH1 0x0 SHL SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x1DAD PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x1E3A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E31 SWAP1 PUSH2 0x68C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1E50 JUMPI PUSH2 0x1E4F PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1E59 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1E6B JUMPI PUSH2 0x1E6A PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x1E75 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x1EB6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EAD SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 DUP1 SHL DUP6 EQ ISZERO PUSH2 0x1EFD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1EF4 SWAP1 PUSH2 0x68A2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 DUP5 SWAP1 POP EQ ISZERO PUSH2 0x1F44 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1F3B SWAP1 PUSH2 0x68E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1F9D CALLER PUSH2 0x1F98 DUP9 TIMESTAMP DUP10 DUP10 DUP10 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x4290 JUMP JUMPDEST PUSH2 0x43AE JUMP JUMPDEST PUSH31 0xE9413C6321EC446A267B7EBF5BB108663F2EF58B35C4F6E18905AC8F205CB2 DUP7 CALLER PUSH1 0x40 MLOAD PUSH2 0x1FCD SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP JUMP JUMPDEST DUP1 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x1FF3 JUMPI PUSH2 0x1FF2 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x1FFC DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x200E JUMPI PUSH2 0x200D PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2018 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2059 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2050 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x2065 DUP5 PUSH2 0x420F JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2071 PUSH2 0x43F9 JUMP JUMPDEST DUP3 PUSH1 0x4 ADD SLOAD PUSH2 0x2080 SWAP2 SWAP1 PUSH2 0x6EA6 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x208C PUSH2 0x4401 JUMP JUMPDEST SWAP1 POP DUP3 PUSH1 0x3 ADD SLOAD DUP2 GT ISZERO PUSH2 0x20F5 JUMPI PUSH1 0x0 PUSH2 0x20A5 DUP3 PUSH2 0x38F9 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 LT ISZERO PUSH2 0x20EA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x20E1 SWAP1 PUSH2 0x6862 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP5 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP POP JUMPDEST DUP2 DUP4 PUSH1 0x4 ADD DUP2 SWAP1 SSTORE POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2111 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH2 0x213F PUSH2 0x1D55 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2176 JUMPI POP DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2189 DUP3 PUSH2 0x3FC9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2198 PUSH2 0x442B JUMP JUMPDEST DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21AE JUMPI PUSH2 0x21AD PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x21B7 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x21C9 JUMPI PUSH2 0x21C8 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x21D3 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2214 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x220B SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x221E DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD PUSH2 0x22A3 SWAP1 PUSH2 0x70D9 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 0x22CF SWAP1 PUSH2 0x70D9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x231C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x22F1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x231C 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 0x22FF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE POP POP SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xA1D45D56 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2369 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2381 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2395 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 0x23B9 SWAP2 SWAP1 PUSH2 0x53FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x23C8 PUSH2 0x442B JUMP JUMPDEST DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23DE JUMPI PUSH2 0x23DD PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x23E7 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x23F9 JUMPI PUSH2 0x23F8 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2403 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2444 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x243B SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x244F PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x24F7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x24EE SWAP1 PUSH2 0x6842 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x5 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD PUSH2 0x2580 SWAP1 PUSH2 0x70D9 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 0x25AC SWAP1 PUSH2 0x70D9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x25F9 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x25CE JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x25F9 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 0x25DC JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE POP POP SWAP4 POP PUSH2 0x260C PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE POP POP PUSH1 0x5 DUP3 ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 PUSH2 0x26DA SWAP2 SWAP1 PUSH2 0x446C JUMP JUMPDEST POP POP PUSH1 0x9 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE POP POP PUSH32 0xDEC847DB058C9C012E0F3DBE2B99E05CFA4C693F61A7D8BC64652A68913CBFFF DUP6 CALLER PUSH1 0x40 MLOAD PUSH2 0x2736 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x274E PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x27DB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x27D2 SWAP1 PUSH2 0x68C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 MLOAD SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2A29 JUMPI PUSH1 0x0 DUP6 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0x2802 JUMPI PUSH2 0x2801 PUSH2 0x7212 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD SWAP1 POP PUSH1 0x1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2820 JUMPI PUSH2 0x281F PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x282D DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x283F JUMPI PUSH2 0x283E PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x288B JUMPI DUP5 ISZERO PUSH2 0x2886 JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x287D SWAP2 SWAP1 PUSH2 0x6AB9 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A15 JUMP JUMPDEST PUSH1 0x0 DUP1 SHL DUP2 PUSH1 0x40 ADD MLOAD EQ ISZERO PUSH2 0x28E1 JUMPI DUP5 ISZERO PUSH2 0x28DC JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x28D3 SWAP2 SWAP1 PUSH2 0x6AE7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A14 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x60 ADD MLOAD MLOAD EQ ISZERO PUSH2 0x2936 JUMPI DUP5 ISZERO PUSH2 0x2931 JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x2928 SWAP2 SWAP1 PUSH2 0x6B15 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A13 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x20 ADD MLOAD GT DUP1 ISZERO PUSH2 0x294D JUMPI POP TIMESTAMP DUP2 PUSH1 0x20 ADD MLOAD GT JUMPDEST ISZERO PUSH2 0x2999 JUMPI DUP5 ISZERO PUSH2 0x2994 JUMPI PUSH32 0x4DF64445EDC775FBA59DB44B8001852FB1B777EEA88FD54F04572DD114E3FF7F DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x40 MLOAD PUSH2 0x298B SWAP2 SWAP1 PUSH2 0x6A8B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST PUSH2 0x2A12 JUMP JUMPDEST PUSH2 0x29C8 DUP2 PUSH1 0x0 ADD MLOAD PUSH1 0x0 DUP4 PUSH1 0x20 ADD MLOAD EQ PUSH2 0x29B7 JUMPI DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x29B9 JUMP JUMPDEST TIMESTAMP JUMPDEST DUP4 PUSH1 0x40 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x4290 JUMP JUMPDEST DUP5 PUSH2 0x29D3 SWAP2 SWAP1 PUSH2 0x6EA6 JUMP JUMPDEST SWAP4 POP PUSH31 0xE9413C6321EC446A267B7EBF5BB108663F2EF58B35C4F6E18905AC8F205CB2 DUP2 PUSH1 0x0 ADD MLOAD CALLER PUSH1 0x40 MLOAD PUSH2 0x2A09 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 JUMPDEST JUMPDEST JUMPDEST JUMPDEST POP DUP1 DUP1 PUSH2 0x2A21 SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x27E5 JUMP JUMPDEST POP PUSH1 0x0 DUP3 GT ISZERO PUSH2 0x2A3E JUMPI PUSH2 0x2A3D CALLER DUP4 PUSH2 0x43AE JUMP JUMPDEST JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2A4E PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x2A7F PUSH2 0x44AC JUMP JUMPDEST DUP2 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2A95 JUMPI PUSH2 0x2A94 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x2A9E DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2AB0 JUMPI PUSH2 0x2AAF PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2ABA DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2AFB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2AF2 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x2B06 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE POP POP SWAP4 POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x2CAC JUMPI DUP1 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x20 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP JUMPDEST POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2CCC JUMPI PUSH2 0x2CCB PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x2CD5 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x2CE7 JUMPI PUSH2 0x2CE6 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x2CF1 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x2D32 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2D29 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x2D3C DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0x6646C119 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2DA4 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2DBC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2DD0 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 0x2DF4 SWAP2 SWAP1 PUSH2 0x53FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x879730D SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2E5E SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2E76 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x2E8A 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 0x2EB3 SWAP2 SWAP1 PUSH2 0x53B4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x2EC5 PUSH2 0x43F9 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2ED1 PUSH2 0x4401 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x2EDE DUP3 PUSH2 0x38F9 JUMP JUMPDEST SWAP1 POP DUP1 DUP4 LT ISZERO PUSH2 0x2F23 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F1A SWAP1 PUSH2 0x6862 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x2F93 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2F8A SWAP1 PUSH2 0x67A2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF0940002 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x2FDB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x2FEF 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 0x3018 SWAP2 SWAP1 PUSH2 0x54A0 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x305E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3055 SWAP1 PUSH2 0x6822 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3066 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x2 ADD PUSH1 0x0 DUP2 SLOAD PUSH2 0x3076 SWAP1 PUSH2 0x713C JUMP JUMPDEST SWAP2 SWAP1 POP DUP2 SWAP1 SSTORE SWAP5 POP CALLER PUSH2 0x3087 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 PUSH2 0x30E7 DUP7 PUSH2 0x420F JUMP JUMPDEST SWAP1 POP DUP7 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x3135 DUP3 PUSH2 0x4237 JUMP JUMPDEST DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP DUP4 DUP2 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP DUP5 DUP2 PUSH1 0x4 ADD DUP2 SWAP1 SSTORE POP PUSH32 0xCABAF9C102F83746B27AE932F638EEBFAF5EA7D014EDD20AB14DEC3768A8F55C DUP7 CALLER PUSH1 0x40 MLOAD PUSH2 0x3180 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0x8233F9B3 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x31CD SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x31E5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x31F9 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 0x321D SWAP2 SWAP1 PUSH2 0x5846 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x322C PUSH2 0x450A JUMP JUMPDEST PUSH2 0x3234 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD PUSH2 0x33BB SWAP1 PUSH2 0x70D9 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 0x33E7 SWAP1 PUSH2 0x70D9 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x3434 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x3409 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x3434 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 0x3417 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0xA1B90891 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x34D9 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x34F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3505 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 0x352E SWAP2 SWAP1 PUSH2 0x54A0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH2 0x3541 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x2 ADD SLOAD PUSH2 0x354F SWAP2 SWAP1 PUSH2 0x6EA6 JUMP JUMPDEST SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH20 0x0 PUSH4 0x2D26B9E2 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x358F SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x35A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x35BB 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 0x35E4 SWAP2 SWAP1 PUSH2 0x530F JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x35F3 PUSH2 0x3FA1 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x3680 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3677 SWAP1 PUSH2 0x68C2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x1 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3696 JUMPI PUSH2 0x3695 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x369F DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x36B1 JUMPI PUSH2 0x36B0 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x36BB DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x36FC JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x36F3 SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP TIMESTAMP DUP7 GT ISZERO PUSH2 0x3740 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3737 SWAP1 PUSH2 0x6802 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 SHL DUP6 EQ ISZERO PUSH2 0x3786 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x377D SWAP1 PUSH2 0x68A2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 DUP5 SWAP1 POP EQ ISZERO PUSH2 0x37CD JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x37C4 SWAP1 PUSH2 0x68E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x3826 CALLER PUSH2 0x3821 DUP10 DUP10 DUP10 DUP10 DUP10 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x4290 JUMP JUMPDEST PUSH2 0x43AE JUMP JUMPDEST PUSH31 0xE9413C6321EC446A267B7EBF5BB108663F2EF58B35C4F6E18905AC8F205CB2 DUP8 CALLER PUSH1 0x40 MLOAD PUSH2 0x3856 SWAP3 SWAP2 SWAP1 PUSH2 0x6A62 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xA2E87655 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38A2 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x38BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x38CE 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 0x38F2 SWAP2 SWAP1 PUSH2 0x542A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 DUP3 PUSH2 0x3927 SWAP2 SWAP1 PUSH2 0x6EFC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xABF82F4C SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3969 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3981 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3995 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 0x39B9 SWAP2 SWAP1 PUSH2 0x53FD JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x39C8 PUSH2 0x4409 JUMP JUMPDEST DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x39DE JUMPI PUSH2 0x39DD PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x39E7 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x39F9 JUMPI PUSH2 0x39F8 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x3A03 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x3A44 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3A3B SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH1 0x0 PUSH2 0x3A50 DUP6 PUSH2 0x41E7 JUMP JUMPDEST SWAP1 POP PUSH20 0x0 PUSH4 0xE99E47F3 DUP3 PUSH1 0x3 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3A8C SWAP2 SWAP1 PUSH2 0x66A7 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3AA4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3AB8 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 0x3AE1 SWAP2 SWAP1 PUSH2 0x56D4 JUMP JUMPDEST SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 DUP3 PUSH20 0x0 PUSH4 0x8CC5EB54 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3B28 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3B40 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL SWAP3 POP POP POP DUP1 ISZERO PUSH2 0x3B76 JUMPI 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 0x3B73 SWAP2 SWAP1 PUSH2 0x5543 JUMP JUMPDEST PUSH1 0x1 JUMPDEST PUSH2 0x3C08 JUMPI PUSH2 0x3B82 PUSH2 0x7270 JUMP JUMPDEST DUP1 PUSH4 0x8C379A0 EQ ISZERO PUSH2 0x3BAF JUMPI POP PUSH2 0x3B97 PUSH2 0x78B5 JUMP JUMPDEST DUP1 PUSH2 0x3BA2 JUMPI POP PUSH2 0x3BB1 JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP3 POP SWAP3 POP POP PUSH2 0x3C11 JUMP JUMPDEST POP JUMPDEST RETURNDATASIZE DUP1 PUSH1 0x0 DUP2 EQ PUSH2 0x3BDD JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x3BE2 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP PUSH1 0xFF PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x2F DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7ADE PUSH1 0x2F SWAP2 CODECOPY SWAP3 POP SWAP3 POP POP PUSH2 0x3C11 JUMP JUMPDEST DUP2 DUP2 SWAP4 POP SWAP4 POP POP POP JUMPDEST SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH20 0x0 PUSH4 0xD45D097D SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3C51 SWAP2 SWAP1 PUSH2 0x6A03 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3C69 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3C7D 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 0x3CA1 SWAP2 SWAP1 PUSH2 0x5516 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x2 DUP1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3CC0 JUMPI PUSH2 0x3CBF PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST PUSH2 0x3CC9 DUP4 PUSH2 0x3FC9 JUMP JUMPDEST PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x3CDB JUMPI PUSH2 0x3CDA PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ PUSH2 0x3CE5 DUP3 PUSH2 0x4099 JUMP JUMPDEST SWAP1 PUSH2 0x3D26 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3D1D SWAP2 SWAP1 PUSH2 0x6780 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST POP PUSH2 0x3D30 DUP5 PUSH2 0x41E7 JUMP JUMPDEST PUSH1 0x2 ADD SLOAD SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x3D69 PUSH2 0x4409 JUMP JUMPDEST PUSH20 0x0 PUSH4 0xE99E47F3 DUP4 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3DA0 SWAP2 SWAP1 PUSH2 0x6663 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3DB8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x3DCC 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 0x3DF5 SWAP2 SWAP1 PUSH2 0x56D4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x3E04 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x3E95 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3E8C SWAP1 PUSH2 0x67E2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x3E9F PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x3F9D JUMPI DUP2 PUSH2 0x3F01 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xA6DB7263983F337BAE2C9FB315730227961D1C1153AE1E10A56B5791465DD6FD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 EQ DUP1 PUSH2 0x3FE3 JUMPI POP PUSH2 0x3FDC PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x2 ADD SLOAD DUP3 GT JUMPDEST ISZERO PUSH2 0x3FF1 JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x4094 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3FFB PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP1 SHL DUP2 PUSH1 0x5 ADD PUSH1 0x2 ADD SLOAD EQ PUSH2 0x402C JUMPI PUSH1 0x2 SWAP2 POP POP PUSH2 0x4094 JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x408E JUMPI PUSH1 0x1 SWAP2 POP POP PUSH2 0x4094 JUMP JUMPDEST PUSH1 0x3 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x1 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x40AF JUMPI PUSH2 0x40AE PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x40C2 JUMPI PUSH2 0x40C1 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x40E8 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x25 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7A92 PUSH1 0x25 SWAP2 CODECOPY SWAP1 POP PUSH2 0x41BA JUMP JUMPDEST PUSH1 0x2 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x40FC JUMPI PUSH2 0x40FB PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x410F JUMPI PUSH2 0x410E PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x4135 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x27 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7AB7 PUSH1 0x27 SWAP2 CODECOPY SWAP1 POP PUSH2 0x41BA JUMP JUMPDEST PUSH1 0x3 DUP1 DUP2 GT ISZERO PUSH2 0x4148 JUMPI PUSH2 0x4147 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0x3 DUP2 GT ISZERO PUSH2 0x415B JUMPI PUSH2 0x415A PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x4181 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x26 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x7A6C PUSH1 0x26 SWAP2 CODECOPY SWAP1 POP PUSH2 0x41BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x19 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x5769746E6574426F617264446174613A20626164206D6F6F6400000000000000 DUP2 MSTORE POP SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0xF595240B351BC8F951C2F53B26F4E78C32CB62122CF76C19B7FDDA7D4968E183 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x41F1 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4219 PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0x4249 SWAP2 SWAP1 PUSH2 0x6551 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x4266 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0x4289 SWAP2 SWAP1 PUSH2 0x542A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x429B PUSH2 0x41BF JUMP JUMPDEST PUSH1 0x3 ADD PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x0 ADD SWAP1 POP PUSH1 0x0 DUP3 PUSH1 0x5 ADD SWAP1 POP DUP7 DUP2 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP DUP6 DUP2 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP CALLER DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP5 DUP2 PUSH1 0x3 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x432E SWAP3 SWAP2 SWAP1 PUSH2 0x454D JUMP JUMPDEST POP DUP2 PUSH1 0x4 ADD SLOAD SWAP4 POP DUP3 PUSH1 0x0 ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE POP POP POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x43F4 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 CALLVALUE SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 GASPRICE SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4425 PUSH2 0x45D3 JUMP JUMPDEST DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x4478 SWAP1 PUSH2 0x70D9 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x448A JUMPI POP PUSH2 0x44A9 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x44A8 SWAP2 SWAP1 PUSH2 0x462C JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 NOT AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x451D PUSH2 0x44AC JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x452A PUSH2 0x442B JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x4559 SWAP1 PUSH2 0x70D9 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x457B JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x45C2 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x4594 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x45C2 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x45C2 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x45C1 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x45A6 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x45CF SWAP2 SWAP1 PUSH2 0x462C JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x45E6 PUSH2 0x4649 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x4645 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x462D JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x467C PUSH2 0x4677 DUP5 PUSH2 0x6B83 JUMP JUMPDEST PUSH2 0x6B5E 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 0x469F JUMPI PUSH2 0x469E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x46CF JUMPI DUP2 PUSH2 0x46B5 DUP9 DUP3 PUSH2 0x4A7B JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x46A2 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x46EC PUSH2 0x46E7 DUP5 PUSH2 0x6B83 JUMP JUMPDEST PUSH2 0x6B5E 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 0x470F JUMPI PUSH2 0x470E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x473F JUMPI DUP2 PUSH2 0x4725 DUP9 DUP3 PUSH2 0x4A90 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4712 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x475C PUSH2 0x4757 DUP5 PUSH2 0x6BAF JUMP JUMPDEST PUSH2 0x6B5E 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 0x477F JUMPI PUSH2 0x477E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x47AF JUMPI DUP2 PUSH2 0x4795 DUP9 DUP3 PUSH2 0x4D17 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4782 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x47CC PUSH2 0x47C7 DUP5 PUSH2 0x6BDB JUMP JUMPDEST PUSH2 0x6B5E 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 0x47EF JUMPI PUSH2 0x47EE PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x481F JUMPI DUP2 PUSH2 0x4805 DUP9 DUP3 PUSH2 0x4D2C JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x47F2 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x483C PUSH2 0x4837 DUP5 PUSH2 0x6C07 JUMP JUMPDEST PUSH2 0x6B5E 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 0x485F JUMPI PUSH2 0x485E PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x48AD JUMPI DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4885 JUMPI PUSH2 0x4884 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x4892 DUP10 DUP3 PUSH2 0x4D41 JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP5 ADD SWAP4 POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x4862 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x48CA PUSH2 0x48C5 DUP5 PUSH2 0x6C33 JUMP JUMPDEST PUSH2 0x6B5E 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 0x48ED JUMPI PUSH2 0x48EC PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x493B JUMPI DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4913 JUMPI PUSH2 0x4912 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x4920 DUP10 DUP3 PUSH2 0x4D6F JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP5 ADD SWAP4 POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x48F0 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4958 PUSH2 0x4953 DUP5 PUSH2 0x6C5F JUMP JUMPDEST PUSH2 0x6B5E 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 0x497B JUMPI PUSH2 0x497A PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x49AB JUMPI DUP2 PUSH2 0x4991 DUP9 DUP3 PUSH2 0x517F JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x497E JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x49C8 PUSH2 0x49C3 DUP5 PUSH2 0x6C8B JUMP JUMPDEST PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x49E4 JUMPI PUSH2 0x49E3 PUSH2 0x72AB JUMP JUMPDEST JUMPDEST PUSH2 0x49EF DUP5 DUP3 DUP6 PUSH2 0x7097 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4A0A PUSH2 0x4A05 DUP5 PUSH2 0x6C8B JUMP JUMPDEST PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x4A26 JUMPI PUSH2 0x4A25 PUSH2 0x72AB JUMP JUMPDEST JUMPDEST PUSH2 0x4A31 DUP5 DUP3 DUP6 PUSH2 0x70A6 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4A4C PUSH2 0x4A47 DUP5 PUSH2 0x6CBC JUMP JUMPDEST PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x4A68 JUMPI PUSH2 0x4A67 PUSH2 0x72AB JUMP JUMPDEST JUMPDEST PUSH2 0x4A73 DUP5 DUP3 DUP6 PUSH2 0x70A6 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4A8A DUP2 PUSH2 0x7974 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4A9F DUP2 PUSH2 0x7974 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4ABA JUMPI PUSH2 0x4AB9 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x4ACA DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4669 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4AE8 JUMPI PUSH2 0x4AE7 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4AF8 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x46D9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4B16 JUMPI PUSH2 0x4B15 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4B26 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4749 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4B44 JUMPI PUSH2 0x4B43 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4B54 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x47B9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4B72 JUMPI PUSH2 0x4B71 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4B82 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4829 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4BA0 JUMPI PUSH2 0x4B9F PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x4BB0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x48B7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4BCE JUMPI PUSH2 0x4BCD PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4BDE DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4945 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4BF6 DUP2 PUSH2 0x798B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4C0B DUP2 PUSH2 0x798B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4C20 DUP2 PUSH2 0x79A2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4C35 DUP2 PUSH2 0x79A2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x4C51 JUMPI PUSH2 0x4C50 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4C6E JUMPI PUSH2 0x4C6D PUSH2 0x7292 JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x4C8A JUMPI PUSH2 0x4C89 PUSH2 0x72A6 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4CA6 JUMPI PUSH2 0x4CA5 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x4CB6 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x49B5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4CD4 JUMPI PUSH2 0x4CD3 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4CE4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x49F7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x4CFC DUP2 PUSH2 0x79B9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4D11 DUP2 PUSH2 0x79D0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4D26 DUP2 PUSH2 0x79E1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x4D3B DUP2 PUSH2 0x79F8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x4D56 JUMPI PUSH2 0x4D55 PUSH2 0x7297 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x4D66 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x4A39 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4D85 JUMPI PUSH2 0x4D84 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4D8F PUSH1 0x80 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x4D9F DUP5 DUP3 DUP6 ADD PUSH2 0x512B JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4DB3 DUP5 DUP3 DUP6 ADD PUSH2 0x512B JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x4DC7 DUP5 DUP3 DUP6 ADD PUSH2 0x4C11 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4DEB JUMPI PUSH2 0x4DEA PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4DF7 DUP5 DUP3 DUP6 ADD PUSH2 0x4C91 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4E19 JUMPI PUSH2 0x4E18 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4E23 PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4E43 JUMPI PUSH2 0x4E42 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4E4F DUP5 DUP3 DUP6 ADD PUSH2 0x4C91 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4E63 DUP5 DUP3 DUP6 ADD PUSH2 0x5140 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4E85 JUMPI PUSH2 0x4E84 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4E8F PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4EAF JUMPI PUSH2 0x4EAE PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4EBB DUP5 DUP3 DUP6 ADD PUSH2 0x4CBF JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4ECF DUP5 DUP3 DUP6 ADD PUSH2 0x5155 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4EF1 JUMPI PUSH2 0x4EF0 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4EFB PUSH1 0xC0 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4F1B JUMPI PUSH2 0x4F1A PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4F27 DUP5 DUP3 DUP6 ADD PUSH2 0x4E03 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4F3B DUP5 DUP3 DUP6 ADD PUSH2 0x5194 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x4F4F DUP5 DUP3 DUP6 ADD PUSH2 0x5194 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x4F63 DUP5 DUP3 DUP6 ADD PUSH2 0x5194 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x4F77 DUP5 DUP3 DUP6 ADD PUSH2 0x516A JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x4F8B DUP5 DUP3 DUP6 ADD PUSH2 0x516A JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x4FAD JUMPI PUSH2 0x4FAC PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x4FB7 PUSH1 0xC0 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4FD7 JUMPI PUSH2 0x4FD6 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x4FE3 DUP5 DUP3 DUP6 ADD PUSH2 0x4E6F JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x4FF7 DUP5 DUP3 DUP6 ADD PUSH2 0x51A9 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x500B DUP5 DUP3 DUP6 ADD PUSH2 0x51A9 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x501F DUP5 DUP3 DUP6 ADD PUSH2 0x51A9 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x5033 DUP5 DUP3 DUP6 ADD PUSH2 0x517F JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x5047 DUP5 DUP3 DUP6 ADD PUSH2 0x517F JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5069 JUMPI PUSH2 0x5068 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x5073 PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x5083 DUP5 DUP3 DUP6 ADD PUSH2 0x4BE7 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x50A7 JUMPI PUSH2 0x50A6 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x50B3 DUP5 DUP3 DUP6 ADD PUSH2 0x4EDB JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x50D5 JUMPI PUSH2 0x50D4 PUSH2 0x729C JUMP JUMPDEST JUMPDEST PUSH2 0x50DF PUSH1 0x40 PUSH2 0x6B5E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x50EF DUP5 DUP3 DUP6 ADD PUSH2 0x4BFC JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5113 JUMPI PUSH2 0x5112 PUSH2 0x72A1 JUMP JUMPDEST JUMPDEST PUSH2 0x511F DUP5 DUP3 DUP6 ADD PUSH2 0x4F97 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x513A DUP2 PUSH2 0x7A0F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x514F DUP2 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x5164 DUP2 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x5179 DUP2 PUSH2 0x7A3D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x518E DUP2 PUSH2 0x7A3D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x51A3 DUP2 PUSH2 0x7A54 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x51B8 DUP2 PUSH2 0x7A54 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x51D4 JUMPI PUSH2 0x51D3 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x51E2 DUP5 DUP3 DUP6 ADD PUSH2 0x4A7B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5201 JUMPI PUSH2 0x5200 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x521F JUMPI PUSH2 0x521E PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x522B DUP5 DUP3 DUP6 ADD PUSH2 0x4AA5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x524A JUMPI PUSH2 0x5249 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5268 JUMPI PUSH2 0x5267 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5274 DUP5 DUP3 DUP6 ADD PUSH2 0x4AD3 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5293 JUMPI PUSH2 0x5292 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x52B1 JUMPI PUSH2 0x52B0 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x52BD DUP5 DUP3 DUP6 ADD PUSH2 0x4B01 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x52DC JUMPI PUSH2 0x52DB PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x52FA JUMPI PUSH2 0x52F9 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5306 DUP5 DUP3 DUP6 ADD PUSH2 0x4B2F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5325 JUMPI PUSH2 0x5324 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5343 JUMPI PUSH2 0x5342 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x534F DUP5 DUP3 DUP6 ADD PUSH2 0x4B5D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x536F JUMPI PUSH2 0x536E PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x538D JUMPI PUSH2 0x538C PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5399 DUP6 DUP3 DUP7 ADD PUSH2 0x4B8B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x53AA DUP6 DUP3 DUP7 ADD PUSH2 0x4BE7 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x53CA JUMPI PUSH2 0x53C9 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x53E8 JUMPI PUSH2 0x53E7 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x53F4 DUP5 DUP3 DUP6 ADD PUSH2 0x4BB9 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5413 JUMPI PUSH2 0x5412 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5421 DUP5 DUP3 DUP6 ADD PUSH2 0x4BFC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5440 JUMPI PUSH2 0x543F PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x544E DUP5 DUP3 DUP6 ADD PUSH2 0x4C26 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x546D JUMPI PUSH2 0x546C PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x548B JUMPI PUSH2 0x548A PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5497 DUP5 DUP3 DUP6 ADD PUSH2 0x4C91 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x54B6 JUMPI PUSH2 0x54B5 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x54D4 JUMPI PUSH2 0x54D3 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x54E0 DUP5 DUP3 DUP6 ADD PUSH2 0x4CBF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x54FF JUMPI PUSH2 0x54FE PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x550D DUP5 DUP3 DUP6 ADD PUSH2 0x4CED JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x552C JUMPI PUSH2 0x552B PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x553A DUP5 DUP3 DUP6 ADD PUSH2 0x4D02 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x555A JUMPI PUSH2 0x5559 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5568 DUP6 DUP3 DUP7 ADD PUSH2 0x4D02 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5589 JUMPI PUSH2 0x5588 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5595 DUP6 DUP3 DUP7 ADD PUSH2 0x4D41 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x55B5 JUMPI PUSH2 0x55B4 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x55C3 DUP5 DUP3 DUP6 ADD PUSH2 0x4D17 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x55E2 JUMPI PUSH2 0x55E1 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x55F0 DUP5 DUP3 DUP6 ADD PUSH2 0x4D2C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x560F JUMPI PUSH2 0x560E PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x562D JUMPI PUSH2 0x562C PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5639 DUP5 DUP3 DUP6 ADD PUSH2 0x4D41 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5658 JUMPI PUSH2 0x5657 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5676 JUMPI PUSH2 0x5675 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5682 DUP5 DUP3 DUP6 ADD PUSH2 0x4EDB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x56A1 JUMPI PUSH2 0x56A0 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x56BF JUMPI PUSH2 0x56BE PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x56CB DUP5 DUP3 DUP6 ADD PUSH2 0x5053 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x56EA JUMPI PUSH2 0x56E9 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x5708 JUMPI PUSH2 0x5707 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5714 DUP5 DUP3 DUP6 ADD PUSH2 0x50BF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x5733 JUMPI PUSH2 0x5732 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5741 DUP5 DUP3 DUP6 ADD PUSH2 0x512B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x60 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x5764 JUMPI PUSH2 0x5763 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x5772 DUP8 DUP3 DUP9 ADD PUSH2 0x512B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 PUSH2 0x5783 DUP8 DUP3 DUP9 ADD PUSH2 0x4C11 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x57A4 JUMPI PUSH2 0x57A3 PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x57B0 DUP8 DUP3 DUP9 ADD PUSH2 0x4C3B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x80 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x57DA JUMPI PUSH2 0x57D9 PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x57E8 DUP9 DUP3 DUP10 ADD PUSH2 0x512B JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 PUSH2 0x57F9 DUP9 DUP3 DUP10 ADD PUSH2 0x512B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 PUSH2 0x580A DUP9 DUP3 DUP10 ADD PUSH2 0x4C11 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x582B JUMPI PUSH2 0x582A PUSH2 0x72B0 JUMP JUMPDEST JUMPDEST PUSH2 0x5837 DUP9 DUP3 DUP10 ADD PUSH2 0x4C3B JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x585C JUMPI PUSH2 0x585B PUSH2 0x72B5 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x586A DUP5 DUP3 DUP6 ADD PUSH2 0x517F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x587F DUP4 DUP4 PUSH2 0x58E7 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5897 DUP4 DUP4 PUSH2 0x5D0E JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x58AF DUP4 DUP4 PUSH2 0x5D2C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x58C7 DUP4 DUP4 PUSH2 0x5D4A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x58DB DUP4 DUP4 PUSH2 0x6506 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x58F0 DUP2 PUSH2 0x6F56 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x58FF DUP2 PUSH2 0x6F56 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5910 DUP3 PUSH2 0x6D52 JUMP JUMPDEST PUSH2 0x591A DUP2 DUP6 PUSH2 0x6DE0 JUMP JUMPDEST SWAP4 POP PUSH2 0x5925 DUP4 PUSH2 0x6CED JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5956 JUMPI DUP2 MLOAD PUSH2 0x593D DUP9 DUP3 PUSH2 0x5873 JUMP JUMPDEST SWAP8 POP PUSH2 0x5948 DUP4 PUSH2 0x6D9F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5929 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x596E DUP3 PUSH2 0x6D5D JUMP JUMPDEST PUSH2 0x5978 DUP2 DUP6 PUSH2 0x6DF1 JUMP JUMPDEST SWAP4 POP PUSH2 0x5983 DUP4 PUSH2 0x6CFD JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x59B4 JUMPI DUP2 MLOAD PUSH2 0x599B DUP9 DUP3 PUSH2 0x588B JUMP JUMPDEST SWAP8 POP PUSH2 0x59A6 DUP4 PUSH2 0x6DAC JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5987 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x59CC DUP3 PUSH2 0x6D68 JUMP JUMPDEST PUSH2 0x59D6 DUP2 DUP6 PUSH2 0x6E02 JUMP JUMPDEST SWAP4 POP PUSH2 0x59E1 DUP4 PUSH2 0x6D0D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5A12 JUMPI DUP2 MLOAD PUSH2 0x59F9 DUP9 DUP3 PUSH2 0x58A3 JUMP JUMPDEST SWAP8 POP PUSH2 0x5A04 DUP4 PUSH2 0x6DB9 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x59E5 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5A2A DUP3 PUSH2 0x6D73 JUMP JUMPDEST PUSH2 0x5A34 DUP2 DUP6 PUSH2 0x6E13 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x5A46 DUP6 PUSH2 0x6D1D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x5A82 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x5A63 DUP6 DUP3 PUSH2 0x58BB JUMP JUMPDEST SWAP5 POP PUSH2 0x5A6E DUP4 PUSH2 0x6DC6 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5A4A JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5A9F DUP3 PUSH2 0x6D7E JUMP JUMPDEST PUSH2 0x5AA9 DUP2 DUP6 PUSH2 0x6E24 JUMP JUMPDEST SWAP4 POP PUSH2 0x5AB4 DUP4 PUSH2 0x6D2D JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5AE5 JUMPI DUP2 MLOAD PUSH2 0x5ACC DUP9 DUP3 PUSH2 0x58CF JUMP JUMPDEST SWAP8 POP PUSH2 0x5AD7 DUP4 PUSH2 0x6DD3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x5AB8 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x5AFB DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B0A DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B19 DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B28 DUP2 PUSH2 0x6F74 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5B37 DUP2 PUSH2 0x6F74 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5B48 DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5B52 DUP2 DUP6 PUSH2 0x6E35 JUMP JUMPDEST SWAP4 POP PUSH2 0x5B62 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5B6B DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5B81 DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5B8B DUP2 DUP6 PUSH2 0x6E46 JUMP JUMPDEST SWAP4 POP PUSH2 0x5B9B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5BA4 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5BBA DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5BC4 DUP2 DUP6 PUSH2 0x6E57 JUMP JUMPDEST SWAP4 POP PUSH2 0x5BD4 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5BDD DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5BF3 DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5BFD DUP2 DUP6 PUSH2 0x6E68 JUMP JUMPDEST SWAP4 POP PUSH2 0x5C0D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5C16 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5C2C DUP3 PUSH2 0x6D89 JUMP JUMPDEST PUSH2 0x5C36 DUP2 DUP6 PUSH2 0x6E79 JUMP JUMPDEST SWAP4 POP PUSH2 0x5C46 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x5C5F DUP2 PUSH2 0x70D9 JUMP JUMPDEST PUSH2 0x5C69 DUP2 DUP7 PUSH2 0x6E57 JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x5C84 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x5C96 JUMPI PUSH2 0x5CC9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE PUSH1 0x20 DUP7 ADD SWAP4 POP PUSH2 0x5CC9 JUMP JUMPDEST PUSH2 0x5C9F DUP6 PUSH2 0x6D3D JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x5CC1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x5CA2 JUMP JUMPDEST DUP1 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x5CDB DUP2 PUSH2 0x702B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5CEA DUP2 PUSH2 0x703D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5CF9 DUP2 PUSH2 0x704F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D08 DUP2 PUSH2 0x7061 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D17 DUP2 PUSH2 0x6FB6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D26 DUP2 PUSH2 0x6FB6 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D35 DUP2 PUSH2 0x6FC3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x5D44 DUP2 PUSH2 0x6FC3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5D55 DUP3 PUSH2 0x6D94 JUMP JUMPDEST PUSH2 0x5D5F DUP2 DUP6 PUSH2 0x6E84 JUMP JUMPDEST SWAP4 POP PUSH2 0x5D6F DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5D78 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5D8E DUP3 PUSH2 0x6D94 JUMP JUMPDEST PUSH2 0x5D98 DUP2 DUP6 PUSH2 0x6E95 JUMP JUMPDEST SWAP4 POP PUSH2 0x5DA8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x70A6 JUMP JUMPDEST PUSH2 0x5DB1 DUP2 PUSH2 0x72BA JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5DC9 PUSH1 0x2C DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5DD4 DUP3 PUSH2 0x72D8 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5DEC PUSH1 0x29 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5DF7 DUP3 PUSH2 0x7327 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E0F PUSH1 0x2E DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E1A DUP3 PUSH2 0x7376 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E32 PUSH1 0x1B DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E3D DUP3 PUSH2 0x73C5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E55 PUSH1 0x31 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E60 DUP3 PUSH2 0x73EE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E78 PUSH1 0x2C DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5E83 DUP3 PUSH2 0x743D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5E9B PUSH1 0x2D DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5EA6 DUP3 PUSH2 0x748C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5EBE PUSH1 0x2F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5EC9 DUP3 PUSH2 0x74DB JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5EE1 PUSH1 0x2F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5EEC DUP3 PUSH2 0x752A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F04 PUSH1 0x3F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F0F DUP3 PUSH2 0x7579 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F27 PUSH1 0x42 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F32 DUP3 PUSH2 0x75C8 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F4A PUSH1 0x2A DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F55 DUP3 PUSH2 0x763D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F6D PUSH1 0x2D DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F78 DUP3 PUSH2 0x768C JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5F90 PUSH1 0x3A DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5F9B DUP3 PUSH2 0x76DB JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FB3 PUSH1 0x34 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5FBE DUP3 PUSH2 0x772A JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FD6 PUSH1 0x2B DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x5FE1 DUP3 PUSH2 0x7779 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x5FF9 PUSH1 0x2E DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x6004 DUP3 PUSH2 0x77C8 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x601C PUSH1 0x2F DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x6027 DUP3 PUSH2 0x7817 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x603F PUSH1 0x31 DUP4 PUSH2 0x6E95 JUMP JUMPDEST SWAP2 POP PUSH2 0x604A DUP3 PUSH2 0x7866 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x6072 DUP3 DUP3 PUSH2 0x5B3D JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6087 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64E8 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x60AF DUP3 DUP3 PUSH2 0x5BE8 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x60C4 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64F7 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x60EC DUP3 DUP3 PUSH2 0x6055 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6101 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x6533 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x6114 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x6533 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x6127 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x6533 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x613A PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x6506 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x614D PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x6506 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x6175 DUP3 DUP3 PUSH2 0x6092 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x618A PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x619D PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x61B0 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x61C3 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x61D6 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x61FE DUP3 DUP3 PUSH2 0x6092 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6213 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x6226 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x6239 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x6542 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x624C PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x625F PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x6524 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x6282 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x62BA JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xA0 DUP7 ADD MSTORE PUSH2 0x629A DUP3 DUP3 PUSH2 0x638A JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x62AF PUSH1 0xC0 DUP7 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x62D0 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x5CE1 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x62E3 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x62F6 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x6309 PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x631C PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x6338 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x5CE1 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x634B PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x635E PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x6371 PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x6384 PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x63A2 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x63B5 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x63C8 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x60 DUP7 ADD MSTORE PUSH2 0x63E0 DUP3 DUP3 PUSH2 0x5B3D JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x6405 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x58E7 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x6418 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x64CA JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x642B PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x5B1F JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x60 DUP7 ADD MSTORE PUSH2 0x6443 DUP3 DUP3 PUSH2 0x5B3D JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x6468 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x5AF2 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x6480 DUP3 DUP3 PUSH2 0x60CF JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x64A5 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x5B10 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x64BD DUP3 DUP3 PUSH2 0x61E1 JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x64D3 DUP2 PUSH2 0x6FF0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x64E2 DUP2 PUSH2 0x6FF0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x64F1 DUP2 PUSH2 0x6FFA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x6500 DUP2 PUSH2 0x6FFA JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x650F DUP2 PUSH2 0x700A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x651E DUP2 PUSH2 0x700A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x652D DUP2 PUSH2 0x700A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x653C DUP2 PUSH2 0x701E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x654B DUP2 PUSH2 0x701E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x655D DUP3 DUP5 PUSH2 0x5C21 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x657D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x58F6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x659D DUP2 DUP5 PUSH2 0x5905 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 0x65BF DUP2 DUP5 PUSH2 0x5963 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 0x65E1 DUP2 DUP5 PUSH2 0x59C1 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 0x6603 DUP2 DUP5 PUSH2 0x5A1F 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 0x6625 DUP2 DUP5 PUSH2 0x5A94 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6642 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5B01 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x665D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5B2E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x667D DUP2 DUP5 PUSH2 0x5BAF 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 0x669F DUP2 DUP5 PUSH2 0x5B76 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 0x66C1 DUP2 DUP5 PUSH2 0x5C52 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x66DE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5CD2 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x66F9 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5CF0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6714 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x5CF0 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6726 DUP2 DUP5 PUSH2 0x5D83 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6744 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5CFF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x675F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5D1D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x677A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x5D3B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x679A DUP2 DUP5 PUSH2 0x5D83 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 0x67BB DUP2 PUSH2 0x5DBC 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 0x67DB DUP2 PUSH2 0x5DDF 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 0x67FB DUP2 PUSH2 0x5E25 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 0x681B DUP2 PUSH2 0x5E48 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 0x683B DUP2 PUSH2 0x5E8E 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 0x685B DUP2 PUSH2 0x5EB1 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 0x687B DUP2 PUSH2 0x5ED4 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 0x689B DUP2 PUSH2 0x5EF7 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 0x68BB DUP2 PUSH2 0x5F1A 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 0x68DB DUP2 PUSH2 0x5F3D 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 0x68FB DUP2 PUSH2 0x5F83 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 0x691B DUP2 PUSH2 0x5FA6 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 0x693B DUP2 PUSH2 0x5FC9 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 0x695B DUP2 PUSH2 0x600F 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 0x697B DUP2 PUSH2 0x6032 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 0x699C DUP2 DUP5 PUSH2 0x6158 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 0x69BE DUP2 DUP5 PUSH2 0x626A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x69DB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6322 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x69FB DUP2 DUP5 PUSH2 0x63ED 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 0x6A1D DUP2 DUP5 PUSH2 0x648D 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 0x6A3F DUP2 DUP5 PUSH2 0x6450 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6A5C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6A77 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x64D9 JUMP JUMPDEST PUSH2 0x6A84 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x58F6 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6AA0 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6AB1 DUP2 PUSH2 0x5E02 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6ACE PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6ADF DUP2 PUSH2 0x5E6B JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6AFC PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6B0D DUP2 PUSH2 0x5F60 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x6B2A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x64D9 JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x6B3B DUP2 PUSH2 0x5FEC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x6B58 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x6515 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6B68 PUSH2 0x6B79 JUMP JUMPDEST SWAP1 POP PUSH2 0x6B74 DUP3 DUP3 PUSH2 0x710B 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 0x6B9E JUMPI PUSH2 0x6B9D PUSH2 0x7241 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 0x6BCA JUMPI PUSH2 0x6BC9 PUSH2 0x7241 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 0x6BF6 JUMPI PUSH2 0x6BF5 PUSH2 0x7241 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 0x6C22 JUMPI PUSH2 0x6C21 PUSH2 0x7241 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 0x6C4E JUMPI PUSH2 0x6C4D PUSH2 0x7241 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 0x6C7A JUMPI PUSH2 0x6C79 PUSH2 0x7241 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 0x6CA6 JUMPI PUSH2 0x6CA5 PUSH2 0x7241 JUMP JUMPDEST JUMPDEST PUSH2 0x6CAF DUP3 PUSH2 0x72BA JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x6CD7 JUMPI PUSH2 0x6CD6 PUSH2 0x7241 JUMP JUMPDEST JUMPDEST PUSH2 0x6CE0 DUP3 PUSH2 0x72BA 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 SWAP1 POP PUSH1 0x20 DUP3 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 SWAP1 POP PUSH1 0x20 DUP3 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 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 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 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 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD 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 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 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 DUP2 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 0x6EB1 DUP3 PUSH2 0x6FF0 JUMP JUMPDEST SWAP2 POP PUSH2 0x6EBC DUP4 PUSH2 0x6FF0 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x6EF1 JUMPI PUSH2 0x6EF0 PUSH2 0x7185 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F07 DUP3 PUSH2 0x6FF0 JUMP JUMPDEST SWAP2 POP PUSH2 0x6F12 DUP4 PUSH2 0x6FF0 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x6F4B JUMPI PUSH2 0x6F4A PUSH2 0x7185 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6F61 DUP3 PUSH2 0x6FD0 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 PUSH2 0x6F89 DUP3 PUSH2 0x6F56 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH2 0x6F9E DUP3 PUSH2 0x794B JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH2 0x6FB1 DUP3 PUSH2 0x7960 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x3 SIGNEXTEND 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7036 DUP3 PUSH2 0x7073 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7048 DUP3 PUSH2 0x7073 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x705A DUP3 PUSH2 0x6F90 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x706C DUP3 PUSH2 0x6FA3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x707E DUP3 PUSH2 0x7085 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7090 DUP3 PUSH2 0x6FD0 JUMP JUMPDEST 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 0x70C4 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x70A9 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x70D3 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 0x70F1 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x7105 JUMPI PUSH2 0x7104 PUSH2 0x71E3 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7114 DUP3 PUSH2 0x72BA JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x7133 JUMPI PUSH2 0x7132 PUSH2 0x7241 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7147 DUP3 PUSH2 0x6FF0 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x717A JUMPI PUSH2 0x7179 PUSH2 0x7185 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD 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 0x21 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 0x32 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 0x3 RETURNDATASIZE GT ISZERO PUSH2 0x728F JUMPI PUSH1 0x4 PUSH1 0x0 DUP1 RETURNDATACOPY PUSH2 0x728C PUSH1 0x0 MLOAD PUSH2 0x72CB JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xE0 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206E756C6C207363726970740000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F6172643A206E6F207472616E7366657273 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2061636365707465640000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206261642074696D657374616D70000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574426F617264446174613A206F6E6C79206F776E65720000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C654465666175 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C743A206261642074696D657374616D70000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2062616420717565727949640000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20656D7074792073637269707400000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206F6E6C79207265717565737465720000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2072657761726420746F6F206C6F770000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2062797465636F6465206368616E67656420616674657220706F7374696E6700 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C654465666175 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C743A205769746E65742064725478486173682063616E6E6F74206265207A65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x726F000000000000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574426F6172644461746141434C733A20756E617574686F72697A65 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x64207265706F7274657200000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2062616420647254784861736800000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C654465666175 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C743A20726573756C742063616E6E6F7420626520656D707479000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20616C726561647920696E697469616C697A6564000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206F6E6C79206F776E6572000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206261642063626F724279746573000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F617264547275737461626C65426173653A PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206E6F742079657420706F737465640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452657175657374426F61726455706772616461626C6542617365 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x3A206E6F7420696D706C656D656E746564000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x44 RETURNDATASIZE LT ISZERO PUSH2 0x78C5 JUMPI PUSH2 0x7948 JUMP JUMPDEST PUSH2 0x78CD PUSH2 0x6B79 JUMP JUMPDEST PUSH1 0x4 RETURNDATASIZE SUB PUSH1 0x4 DUP3 RETURNDATACOPY DUP1 MLOAD RETURNDATASIZE PUSH1 0x24 DUP3 ADD GT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x78F5 JUMPI POP POP PUSH2 0x7948 JUMP JUMPDEST DUP1 DUP3 ADD DUP1 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7913 JUMPI POP POP POP POP PUSH2 0x7948 JUMP JUMPDEST DUP1 PUSH1 0x20 DUP4 ADD ADD PUSH1 0x4 RETURNDATASIZE SUB DUP6 ADD DUP2 GT ISZERO PUSH2 0x7930 JUMPI POP POP POP POP POP PUSH2 0x7948 JUMP JUMPDEST PUSH2 0x793F DUP3 PUSH1 0x20 ADD DUP6 ADD DUP7 PUSH2 0x710B JUMP JUMPDEST DUP3 SWAP6 POP POP POP POP POP POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH2 0x100 DUP2 LT PUSH2 0x795D JUMPI PUSH2 0x795C PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x4 DUP2 LT PUSH2 0x7971 JUMPI PUSH2 0x7970 PUSH2 0x71B4 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH2 0x797D DUP2 PUSH2 0x6F56 JUMP JUMPDEST DUP2 EQ PUSH2 0x7988 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7994 DUP2 PUSH2 0x6F68 JUMP JUMPDEST DUP2 EQ PUSH2 0x799F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x79AB DUP2 PUSH2 0x6F74 JUMP JUMPDEST DUP2 EQ PUSH2 0x79B6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x79C2 DUP2 PUSH2 0x6F7E JUMP JUMPDEST DUP2 EQ PUSH2 0x79CD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x100 DUP2 LT PUSH2 0x79DE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x79EA DUP2 PUSH2 0x6FB6 JUMP JUMPDEST DUP2 EQ PUSH2 0x79F5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A01 DUP2 PUSH2 0x6FC3 JUMP JUMPDEST DUP2 EQ PUSH2 0x7A0C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A18 DUP2 PUSH2 0x6FF0 JUMP JUMPDEST DUP2 EQ PUSH2 0x7A23 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A2F DUP2 PUSH2 0x6FFA JUMP JUMPDEST DUP2 EQ PUSH2 0x7A3A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A46 DUP2 PUSH2 0x700A JUMP JUMPDEST DUP2 EQ PUSH2 0x7A51 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x7A5D DUP2 PUSH2 0x701E JUMP JUMPDEST DUP2 EQ PUSH2 0x7A68 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID JUMPI PUSH10 0x746E6574426F61726444 PUSH2 0x7461 GASPRICE KECCAK256 PUSH15 0x6F7420696E2044656C657465642073 PUSH21 0x617475735769746E6574426F617264446174613A20 PUSH15 0x6F7420696E20506F73746564207374 PUSH2 0x7475 PUSH20 0x5769746E6574426F617264446174613A206E6F74 KECCAK256 PUSH10 0x6E205265706F72746564 KECCAK256 PUSH20 0x74617475735769746E657452657175657374426F PUSH2 0x7264 SLOAD PUSH19 0x75737461626C65426173653A206661696C696E PUSH8 0x20617373657274A2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0x26 0x26 0xE2 0xC 0x29 0xEC 0x4C 0xE2 SLOAD PUSH21 0xEC6CB7A1CEB7B8C91CB224F916654F83066EDA9630 EQ PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"614:2322:16:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;695:51:9;;;;;;;;;;:::i;:::-;;;;;;;;614:2322:16;905:59:14;;;;;;;;;;:::i;:::-;;;;;;;;4043:129:15;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28607:177;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27852:178;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;28976:165;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19829:233;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22201:234;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;27484:159;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23231:213;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5038:332;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1965:98:16;;;;;;;;;;;;;:::i;:::-;;28232:158:15;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19344:237;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18204:817;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1656:872;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4441:319;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;30100:177;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1703:75:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1495:237:14;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2190:94:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2055:90:14;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6164:930:15;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15127:836;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2612:305;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17017:172;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20282:240;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23917:154;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12241:524;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9408:2239;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3199:122;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17461:394;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21192:232;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23608:148;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1942:93:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26389:170:15;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13413:1138;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;29726:158;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16802:165;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24260:162;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16571:143;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;29348:177;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7670:1014;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24615:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1472:182:16;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26749:152:15;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21636:336;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25619:564;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;25000:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20741:240;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;134:32:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22859:207:15;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3356:301;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4043:129;4112:4;4135:7;:5;:7::i;:::-;:19;;:30;4155:9;4135:30;;;;;;;;;;;;;;;;;;;;;;;;;4128:37;;4043:129;;;:::o;28607:177::-;28716:15;28754:7;:21;;;;:23;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;28747:30;;28607:177;;;:::o;27852:178::-;27962:14;27999:7;:22;;;;:24;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;27992:31;;27852:178;;;:::o;28976:165::-;29080:13;29116:7;:16;;;;:18;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29109:25;;28976:165;;;:::o;19829:233::-;19984:7;19930:8;19940:25;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;20014:8:15::1;:6;:8::i;:::-;:16;;:26;20031:8;20014:26;;;;;;;;;;;:34;;:41;;;20007:48;;19829:233:::0;;;;;:::o;22201:234::-;22362:7;22306:8;22316:27;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;22392:26:15::1;22409:8;22392:16;:26::i;:::-;:36;;;22385:43;;22201:234:::0;;;;;:::o;27484:159::-;27589:5;27617:7;:17;;;;:19;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;27610:26;;27484:159;;;:::o;23231:213::-;23347:20;;:::i;:::-;23390:15;:35;23426:10;23390:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23383:54;;23231:213;;;:::o;5038:332::-;1353:8:11;:6;:8::i;:::-;:14;;;;;;;;;;;;1339:28;;:10;:28;;;1331:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5162:7:15::1;5157:164;5180:12;:19;5175:2;:24;5157:164;;;5222:17;5242:12;5255:2;5242:16;;;;;;;;:::i;:::-;;;;;;;;5222:36;;5305:5;5272:7;:5;:7::i;:::-;:19;;:30;5292:9;5272:30;;;;;;;;;;;;;;;;:38;;;;;;;;;;;;;;;;;;5208:113;5201:5;;;;;:::i;:::-;;;;5157:164;;;;5335:28;5350:12;5335:28;;;;;;:::i;:::-;;;;;;;;5038:332:::0;:::o;1965:98:16:-;1353:8:11;:6;:8::i;:::-;:14;;;;;;;;;;;;1339:28;;:10;:28;;;1331:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2044:10:16::1;2023:33;;;28232:158:15::0;28336:6;28365:7;:16;;;;:18;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;28358:25;;28232:158;;;:::o;19344:237::-;19501:7;19447:8;19457:25;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;19531:8:15::1;:6;:8::i;:::-;:16;;:26;19548:8;19531:26;;;;;;;;;;;:34;;:43;;;19524:50;;19344:237:::0;;;;;:::o;18204:817::-;18307:22;18395:26;18366:55;;;;;;;;:::i;:::-;;:25;18382:8;18366:15;:25::i;:::-;:55;;;;;;;;:::i;:::-;;;;18345:149;;;;;;;;;;;;:::i;:::-;;;;;;;;;18504:31;18538:25;18554:8;18538:15;:25::i;:::-;18504:59;;18611:1;18577:36;;18585:8;:13;;;;;;;;;;;;18577:36;;;18573:441;;18810:8;:13;;;;;;;;;;;;:22;;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18798:36;;18893:8;:13;;;18873:16;:9;:14;:16::i;:::-;:33;18848:155;;;;;;;;;;;;:::i;:::-;;;;;;;;;18573:441;18335:686;18204:817;;;:::o;1656:872::-;1736:14;1753:8;:6;:8::i;:::-;:14;;;;;;;;;;;;1736:31;;1799:1;1781:20;;:6;:20;;;1777:297;;;1867:10;1858:19;;1908:6;1891:8;:6;:8::i;:::-;:14;;;:23;;;;;;;;;;;;;;;;;;1777:297;;;2009:6;1995:20;;:10;:20;;;1987:76;;;;;;;;;;;;:::i;:::-;;;;;;;;;1777:297;2121:1;2096:27;;:8;:6;:8::i;:::-;:13;;;;;;;;;;;;:27;;;2092:222;;2240:6;:4;:6::i;:::-;2223:23;;:8;:6;:8::i;:::-;:13;;;;;;;;;;;;:23;;;;2215:88;;;;;;;;;;;;:::i;:::-;;;;;;;;;2092:222;2347:6;:4;:6::i;:::-;2331:8;:6;:8::i;:::-;:13;;;:22;;;;;;;;;;;;;;;;;;2398:10;:8;:10::i;:::-;2390:6;:4;:6::i;:::-;2369:51;;2378:10;2369:51;;;2410:9;:7;:9::i;:::-;2369:51;;;;;;:::i;:::-;;;;;;;;2473:48;2497:9;2486:34;;;;;;;;;;;;:::i;:::-;2473:12;:48::i;:::-;1726:802;1656:872;:::o;4441:319::-;1353:8:11;:6;:8::i;:::-;:14;;;;;;;;;;;;1339:28;;:10;:28;;;1331:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4561:7:15::1;4556:159;4579:10;:17;4574:2;:22;4556:159;;;4619:17;4639:10;4650:2;4639:14;;;;;;;;:::i;:::-;;;;;;;;4619:34;;4700:4;4667:7;:5;:7::i;:::-;:19;;:30;4687:9;4667:30;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;4605:110;4598:5;;;;;:::i;:::-;;;;4556:159;;;;4729:24;4742:10;4729:24;;;;;;:::i;:::-;;;;;;;;4441:319:::0;:::o;30100:177::-;30209:15;30247:7;:21;;;;:23;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;30240:30;;30100:177;;;:::o;1703:75:41:-;1740:7;1766:5;1759:12;;1703:75;:::o;1495:237:14:-;1552:7;1649:66;1571:154;;;;1495:237;:::o;2190:94:41:-;2235:4;2266:11;2259:18;;2190:94;:::o;2055:90:14:-;2104:7;2130:8;2123:15;;2055:90;:::o;6164:930:15:-;702:7:12;:5;:7::i;:::-;:19;;:31;722:10;702:31;;;;;;;;;;;;;;;;;;;;;;;;;681:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;6369:8:15::1;6379:25;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;6441:1:15::2;6428:14:::0;::::2;:9;:14;;6420:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;6706:1;6685:10;;:17;;:22;;6677:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;6824:214;6861:10;6886:142;6918:8;6944:15;6977:9;7004:10;;6886:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:14;:142::i;:::-;6824:15;:214::i;:::-;7053:34;7066:8;7076:10;7053:34;;;;;;;:::i;:::-;;;;;;;;811:1:12::1;;6164:930:15::0;;;;:::o;15127:836::-;15239:8;15249:25;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;15290:31:15::1;15324:25;15340:8;15324:15;:25::i;:::-;15290:59;;15360:18;15399:14;:12;:14::i;:::-;15381:8;:15;;;:32;;;;:::i;:::-;15360:53;;15423:20;15446:14;:12;:14::i;:::-;15423:37;;15570:8;:17;;;15555:12;:32;15551:368;;;15657:24;15684:28;15699:12;15684:14;:28::i;:::-;15657:55;;15765:16;15751:10;:30;;15726:136;;;;;;;;;;;;:::i;:::-;;;;;;;;;15896:12;15876:8;:17;;:32;;;;15589:330;15551:368;15946:10;15928:8;:15;;:28;;;;15280:683;;;15127:836:::0;;;:::o;2612:305::-;2685:4;2701:14;2718:8;:6;:8::i;:::-;:14;;;;;;;;;;;;2701:31;;2851:14;:12;:14::i;:::-;:49;;;;;2895:5;2885:15;;:6;:15;;;2851:49;2742:168;;;2612:305;;;:::o;17017:172::-;17115:18;17156:25;17172:8;17156:15;:25::i;:::-;17149:32;;17017:172;;;:::o;20282:240::-;20434:32;;:::i;:::-;20378:8;20388:27;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;20489:26:15::1;20506:8;20489:16;:26::i;:::-;20482:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;20282:240:::0;;;;;:::o;23917:154::-;24020:4;24047:7;:15;;;;:17;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24040:24;;23917:154;;;:::o;12241:524::-;12393:32;;:::i;:::-;12337:8;12347:27;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;12441:28:15::1;12472:8;:6;:8::i;:::-;:16;;:26;12489:8;12472:26;;;;;;;;;;;12441:57;;12543:7;:12;;;;;;;;;;;;12529:26;;:10;:26;;;12508:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;12650:7;:16;;12638:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;12683:8;:6;:8::i;:::-;:16;;:26;12700:8;12683:26;;;;;;;;;;;;12676:33:::0;::::1;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;12724:34;12737:8;12747:10;12724:34;;;;;;;:::i;:::-;;;;;;;;12431:334;12241:524:::0;;;;;:::o;9408:2239::-;702:7:12;:5;:7::i;:::-;:19;;:31;722:10;702:31;;;;;;;;;;;;;;;;;;;;;;;;;681:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;9590:17:15::1;9617:15:::0;9635:13:::1;:20;9617:38;;9671:7;9665:1723;9689:10;9684:2;:15;9665:1723;;;9722:26;9751:13;9765:2;9751:17;;;;;;;;:::i;:::-;;;;;;;;9722:46;;9822:25;9786:61;;;;;;;;:::i;:::-;;:32;9802:7;:15;;;9786;:32::i;:::-;:61;;;;;;;;:::i;:::-;;;9782:1596;;9871:8;9867:211;;;9908:151;9950:7;:15;;;9908:151;;;;;;:::i;:::-;;;;;;;;9867:211;9782:1596;;;10122:1;10102:21:::0;::::1;:7;:16;;;:21;10098:1280;;;10147:8;10143:212;;;10184:152;10226:7;:15;;;10184:152;;;;;;:::i;:::-;;;;;;;;10143:212;10098:1280;;;10407:1;10379:7;:17;;;:24;:29;10375:1003;;;10432:8;10428:214;;;10469:154;10511:7;:15;;;10469:154;;;;;;:::i;:::-;;;;;;;;10428:214;10375:1003;;;10686:1;10666:7;:17;;;:21;:60;;;;;10711:15;10691:7;:17;;;:35;10666:60;10662:716;;;10750:8;10746:213;;;10787:153;10829:7;:15;;;10787:153;;;;;;:::i;:::-;;;;;;;;10746:213;10662:716;;;11013:228;11049:7;:15;;;11107:1;11086:7;:17;;;:22;:60;;11129:7;:17;;;11086:60;;;11111:15;11086:60;11168:7;:16;;;11206:7;:17;;;11013:14;:228::i;:::-;10997:244;;;;;:::i;:::-;;;11264:99;11298:7;:15;;;11335:10;11264:99;;;;;;;:::i;:::-;;;;;;;;10662:716;10375:1003;10098:1280;9782:1596;9708:1680;9701:5;;;;;:::i;:::-;;;;9665:1723;;;;11517:1;11502:12;:16;11498:143;;;11534:96;11575:10;11604:12;11534:15;:96::i;:::-;11498:143;9580:2067;;9408:2239:::0;;:::o;3199:122::-;3270:7;3300:8;:6;:8::i;:::-;:14;;;;;;;;;;;;3293:21;;3199:122;:::o;17461:394::-;17610:30;;:::i;:::-;17556:8;17566:25;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;17656:28:15::1;17687:8;:6;:8::i;:::-;:16;;:26;17704:8;17687:26;;;;;;;;;;;17656:57;;17734:7;:15;;17723:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;17787:1;17763:26;;:7;:12;;;;;;;;;;;;:26;;;17759:90;;17826:7;:12;;;;;;;;;;;;17805:8;:18;;:33;;;;;;;;;::::0;::::1;17759:90;17646:209;17461:394:::0;;;;;:::o;21192:232::-;21352:7;21296:8;21306:27;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;21382:26:15::1;21399:8;21382:16;:26::i;:::-;:35;;;;;;;;;;;;21375:42;;21192:232:::0;;;;;:::o;23608:148::-;23708:4;23735:7;:12;;;;:14;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23728:21;;23608:148;;;:::o;1942:93:41:-;1983:17;2019:9;2012:16;;1942:93;:::o;26389:170:15:-;26494:15;26532:7;:18;;;;:20;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26525:27;;26389:170;;;:::o;13413:1138::-;13521:16;13553:14;13570;:12;:14::i;:::-;13553:31;;13594:17;13614:14;:12;:14::i;:::-;13594:34;;13695:23;13721:25;13736:9;13721:14;:25::i;:::-;13695:51;;13774:15;13764:6;:25;;13756:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;13924:1;13898:28;;13906:5;13898:28;;;;13890:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;13985:22;14010:5;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13985:41;;14063:1;14044:9;:16;:20;14036:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;14139:8;:6;:8::i;:::-;:19;;;14136:22;;;;;:::i;:::-;;;;;;;14125:33;;14202:10;14168:8;:6;:8::i;:::-;:16;;:26;14185:8;14168:26;;;;;;;;;;;:31;;;:44;;;;;;;;;;;;;;;;;;14223:31;14257:25;14273:8;14257:15;:25::i;:::-;14223:59;;14308:5;14292:8;:13;;;:21;;;;;;;;;;;;;;;;;;14339:16;:9;:14;:16::i;:::-;14323:8;:13;;:32;;;;14385:9;14365:8;:17;;:29;;;;14422:6;14404:8;:15;;:24;;;;14509:35;14523:8;14533:10;14509:35;;;;;;;:::i;:::-;;;;;;;;13543:1008;;;;;13413:1138;;;:::o;29726:158::-;29830:6;29859:7;:16;;;;:18;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29852:25;;29726:158;;;:::o;16802:165::-;16892:19;;:::i;:::-;16934:8;:6;:8::i;:::-;:16;;:26;16951:8;16934:26;;;;;;;;;;;16927:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16802:165;;;:::o;24260:162::-;24363:12;24398:7;:15;;;;:17;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24391:24;;24260:162;;;:::o;16571:143::-;16654:7;16706:1;16684:8;:6;:8::i;:::-;:19;;;:23;;;;:::i;:::-;16677:30;;16571:143;:::o;29348:177::-;29457:15;29495:7;:21;;;;:23;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;29488:30;;29348:177;;;:::o;7670:1014::-;702:7:12;:5;:7::i;:::-;:19;;:31;722:10;702:31;;;;;;;;;;;;;;;;;;;;;;;;;681:120;;;;;;;;;;;;:::i;:::-;;;;;;;;;7907:8:15::1;7917:25;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;7980:15:15::2;7966:10;:29;;7958:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;8080:1;8067:14:::0;::::2;:9;:14;;8059:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;8345:1;8324:10;;:17;;:22;;8316:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;8419:209;8456:10;8481:137;8513:8;8539:10;8567:9;8594:10;;8481:137;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:14;:137::i;:::-;8419:15;:209::i;:::-;8643:34;8656:8;8666:10;8643:34;;;;;;;:::i;:::-;;;;;;;;811:1:12::1;;7670:1014:15::0;;;;;:::o;24615:161::-;24720:7;24750;:17;;;;:19;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24743:26;;24615:161;;;:::o;1472:182:16:-;1577:7;1619:28;1607:9;:40;;;;:::i;:::-;1600:47;;1472:182;;;:::o;26749:152:15:-;26851:4;26878:7;:14;;;;:16;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;26871:23;;26749:152;;;:::o;21636:336::-;21794:20;;:::i;:::-;21738:8;21748:27;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;21830:33:15::1;21866:26;21883:8;21866:16;:26::i;:::-;21830:62;;21909:15;:35;21945:9;:19;;21909:56;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21902:63;;;21636:336:::0;;;;;:::o;25619:564::-;25729:17;25748:13;25781:7;:22;;;;:24;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;25777:400;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;25980:25;26007:7;25972:43;;;;;;;25777:400;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26078:36;26070:96;;;;;;;;;;;;;;;;;;;;;;;;25777:400;25886:5;25893:8;25878:24;;;;;;25619:564;;;;:::o;25000:175::-;25107:17;25147:7;:19;;;;:21;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25140:28;;25000:175;;;:::o;20741:240::-;20909:7;20853:8;20863:27;822:7:11;793:36;;;;;;;;:::i;:::-;;:25;809:8;793:15;:25::i;:::-;:36;;;;;;;;:::i;:::-;;;841:37;870:7;841:28;:37::i;:::-;774:114;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;20939:26:15::1;20956:8;20939:16;:26::i;:::-;:35;;;20932:42;;20741:240:::0;;;;;:::o;134:32:39:-;;;:::o;22859:207:15:-;22969:20;;:::i;:::-;23012:15;:35;23048:10;23012:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23005:54;;22859:207;;;:::o;3356:301::-;1353:8:11;:6;:8::i;:::-;:14;;;;;;;;;;;;1339:28;;:10;:28;;;1331:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3476:14:15::1;3493:8;:6;:8::i;:::-;:14;;;;;;;;;;;;3476:31;;3534:6;3521:19;;:9;:19;;;3517:134;;3573:9;3556:8;:6;:8::i;:::-;:14;;;:26;;;;;;;;;;;;;;;;;;3630:9;3601:39;;3622:6;3601:39;;;;;;;;;;;;3517:134;3466:191;3356:301:::0;:::o;1067:165:12:-;1107:31;1189:27;1173:43;;1067:165;:::o;1953:1073:11:-;2031:18;2079:1;2067:8;:13;:47;;;;2095:8;:6;:8::i;:::-;:19;;;2084:8;:30;2067:47;2063:957;;;2189:26;2182:33;;;;2063:957;2246:27;2276:8;:6;:8::i;:::-;:16;;:26;2293:8;2276:26;;;;;;;;;;;2246:56;;2344:1;2316:29;;:6;:15;;:24;;;:29;2312:700;;2542:27;2535:34;;;;;2312:700;2621:1;2598:25;;:6;:11;;;;;;;;;;;;:25;;;2594:418;;2785:25;2778:32;;;;;2594:418;2975:26;2968:33;;;1953:1073;;;;:::o;3032:532::-;3133:13;3175:25;3164:36;;;;;;;;:::i;:::-;;:7;:36;;;;;;;;:::i;:::-;;;3160:398;;;3212:46;;;;;;;;;;;;;;;;;;;;;3160:398;3288:27;3277:38;;;;;;;;:::i;:::-;;:7;:38;;;;;;;;:::i;:::-;;;3273:285;;;3327:48;;;;;;;;;;;;;;;;;;;;;3273:285;3405:26;3394:37;;;;;;;;:::i;:::-;;:7;:37;;;;;;;;:::i;:::-;;;3390:168;;;3443:47;;;;;;;;;;;;;;;;;;;;;3390:168;3515:34;;;;;;;;;;;;;;;;;;;3032:532;;;;:::o;4280:177::-;4333:29;4414:27;4401:40;;4280:177;:::o;4033:167::-;4112:23;4158:8;:6;:8::i;:::-;:16;;:26;4175:8;4158:26;;;;;;;;;;;:35;;4151:42;;4033:167;;;:::o;3809:164::-;3887:22;3932:8;:6;:8::i;:::-;:16;;:26;3949:8;3932:26;;;;;;;;;;;:34;;3925:41;;3809:164;;;:::o;298:111:29:-;359:7;385:17;392:9;385:17;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;378:24;;298:111;;;:::o;30525:829:15:-;30723:15;30754:28;30785:8;:6;:8::i;:::-;:16;;:26;30802:8;30785:26;;;;;;;;;;;30754:57;;30821:32;30856:7;:15;;30821:50;;30881:34;30918:7;:16;;30881:53;;31012:10;30989;:20;;:33;;;;31054:9;31032:10;:19;;:31;;;;31095:10;31073;:19;;;:32;;;;;;;;;;;;;;;;;;31138:10;31115;:20;;:33;;;;;;;;;;;;:::i;:::-;;31209:9;:16;;;31199:26;;31332:7;:15;;;31325:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30744:610;;;30525:829;;;;;;:::o;2783:148:16:-;2902:3;2894:21;;:30;2916:7;2894:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2783:148;;:::o;2521:126::-;2601:7;2631:9;2624:16;;2521:126;:::o;2351:128::-;2431:7;2461:11;2454:18;;2351:128;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;24:722:46:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;769:744::-;876:5;901:81;917:64;974:6;917:64;:::i;:::-;901:81;:::i;:::-;892:90;;1002:5;1031:6;1024:5;1017:21;1065:4;1058:5;1054:16;1047:23;;1091:6;1141:3;1133:4;1125:6;1121:17;1116:3;1112:27;1109:36;1106:143;;;1160:79;;:::i;:::-;1106:143;1273:1;1258:249;1283:6;1280:1;1277:13;1258:249;;;1351:3;1380:48;1424:3;1412:10;1380:48;:::i;:::-;1375:3;1368:61;1458:4;1453:3;1449:14;1442:21;;1492:4;1487:3;1483:14;1476:21;;1318:189;1305:1;1302;1298:9;1293:14;;1258:249;;;1262:14;882:631;;769:744;;;;;:::o;1535:741::-;1641:5;1666:80;1682:63;1738:6;1682:63;:::i;:::-;1666:80;:::i;:::-;1657:89;;1766:5;1795:6;1788:5;1781:21;1829:4;1822:5;1818:16;1811:23;;1855:6;1905:3;1897:4;1889:6;1885:17;1880:3;1876:27;1873:36;1870:143;;;1924:79;;:::i;:::-;1870:143;2037:1;2022:248;2047:6;2044:1;2041:13;2022:248;;;2115:3;2144:47;2187:3;2175:10;2144:47;:::i;:::-;2139:3;2132:60;2221:4;2216:3;2212:14;2205:21;;2255:4;2250:3;2246:14;2239:21;;2082:188;2069:1;2066;2062:9;2057:14;;2022:248;;;2026:14;1647:629;;1535:741;;;;;:::o;2297:738::-;2402:5;2427:79;2443:62;2498:6;2443:62;:::i;:::-;2427:79;:::i;:::-;2418:88;;2526:5;2555:6;2548:5;2541:21;2589:4;2582:5;2578:16;2571:23;;2615:6;2665:3;2657:4;2649:6;2645:17;2640:3;2636:27;2633:36;2630:143;;;2684:79;;:::i;:::-;2630:143;2797:1;2782:247;2807:6;2804:1;2801:13;2782:247;;;2875:3;2904:46;2946:3;2934:10;2904:46;:::i;:::-;2899:3;2892:59;2980:4;2975:3;2971:14;2964:21;;3014:4;3009:3;3005:14;2998:21;;2842:187;2829:1;2826;2822:9;2817:14;;2782:247;;;2786:14;2408:627;;2297:738;;;;;:::o;3057:972::-;3174:5;3199:91;3215:74;3282:6;3215:74;:::i;:::-;3199:91;:::i;:::-;3190:100;;3310:5;3339:6;3332:5;3325:21;3373:4;3366:5;3362:16;3355:23;;3399:6;3449:3;3441:4;3433:6;3429:17;3424:3;3420:27;3417:36;3414:143;;;3468:79;;:::i;:::-;3414:143;3581:1;3566:457;3591:6;3588:1;3585:13;3566:457;;;3666:3;3660:10;3702:18;3689:11;3686:35;3683:122;;;3724:79;;:::i;:::-;3683:122;3848:11;3840:6;3836:24;3886:58;3940:3;3928:10;3886:58;:::i;:::-;3881:3;3874:71;3974:4;3969:3;3965:14;3958:21;;4008:4;4003:3;3999:14;3992:21;;3626:397;;3613:1;3610;3606:9;3601:14;;3566:457;;;3570:14;3180:849;;3057:972;;;;;:::o;4091:1014::-;4216:5;4241:110;4257:93;4343:6;4257:93;:::i;:::-;4241:110;:::i;:::-;4232:119;;4371:5;4400:6;4393:5;4386:21;4434:4;4427:5;4423:16;4416:23;;4460:6;4510:3;4502:4;4494:6;4490:17;4485:3;4481:27;4478:36;4475:143;;;4529:79;;:::i;:::-;4475:143;4642:1;4627:472;4652:6;4649:1;4646:13;4627:472;;;4734:3;4721:17;4770:18;4757:11;4754:35;4751:122;;;4792:79;;:::i;:::-;4751:122;4916:11;4908:6;4904:24;4954:66;5016:3;5004:10;4954:66;:::i;:::-;4949:3;4942:79;5050:4;5045:3;5041:14;5034:21;;5084:4;5079:3;5075:14;5068:21;;4687:412;;4674:1;4671;4667:9;4662:14;;4627:472;;;4631:14;4222:883;;4091:1014;;;;;:::o;5127:741::-;5233:5;5258:80;5274:63;5330:6;5274:63;:::i;:::-;5258:80;:::i;:::-;5249:89;;5358:5;5387:6;5380:5;5373:21;5421:4;5414:5;5410:16;5403:23;;5447:6;5497:3;5489:4;5481:6;5477:17;5472:3;5468:27;5465:36;5462:143;;;5516:79;;:::i;:::-;5462:143;5629:1;5614:248;5639:6;5636:1;5633:13;5614:248;;;5707:3;5736:47;5779:3;5767:10;5736:47;:::i;:::-;5731:3;5724:60;5813:4;5808:3;5804:14;5797:21;;5847:4;5842:3;5838:14;5831:21;;5674:188;5661:1;5658;5654:9;5649:14;;5614:248;;;5618:14;5239:629;;5127:741;;;;;:::o;5874:410::-;5951:5;5976:65;5992:48;6033:6;5992:48;:::i;:::-;5976:65;:::i;:::-;5967:74;;6064:6;6057:5;6050:21;6102:4;6095:5;6091:16;6140:3;6131:6;6126:3;6122:16;6119:25;6116:112;;;6147:79;;:::i;:::-;6116:112;6237:41;6271:6;6266:3;6261;6237:41;:::i;:::-;5957:327;5874:410;;;;;:::o;6290:419::-;6378:5;6403:65;6419:48;6460:6;6419:48;:::i;:::-;6403:65;:::i;:::-;6394:74;;6491:6;6484:5;6477:21;6529:4;6522:5;6518:16;6567:3;6558:6;6553:3;6549:16;6546:25;6543:112;;;6574:79;;:::i;:::-;6543:112;6664:39;6696:6;6691:3;6686;6664:39;:::i;:::-;6384:325;6290:419;;;;;:::o;6715:421::-;6804:5;6829:66;6845:49;6887:6;6845:49;:::i;:::-;6829:66;:::i;:::-;6820:75;;6918:6;6911:5;6904:21;6956:4;6949:5;6945:16;6994:3;6985:6;6980:3;6976:16;6973:25;6970:112;;;7001:79;;:::i;:::-;6970:112;7091:39;7123:6;7118:3;7113;7091:39;:::i;:::-;6810:326;6715:421;;;;;:::o;7142:139::-;7188:5;7226:6;7213:20;7204:29;;7242:33;7269:5;7242:33;:::i;:::-;7142:139;;;;:::o;7287:143::-;7344:5;7375:6;7369:13;7360:22;;7391:33;7418:5;7391:33;:::i;:::-;7287:143;;;;:::o;7453:370::-;7524:5;7573:3;7566:4;7558:6;7554:17;7550:27;7540:122;;7581:79;;:::i;:::-;7540:122;7698:6;7685:20;7723:94;7813:3;7805:6;7798:4;7790:6;7786:17;7723:94;:::i;:::-;7714:103;;7530:293;7453:370;;;;:::o;7846:385::-;7928:5;7977:3;7970:4;7962:6;7958:17;7954:27;7944:122;;7985:79;;:::i;:::-;7944:122;8095:6;8089:13;8120:105;8221:3;8213:6;8206:4;8198:6;8194:17;8120:105;:::i;:::-;8111:114;;7934:297;7846:385;;;;:::o;8253:383::-;8334:5;8383:3;8376:4;8368:6;8364:17;8360:27;8350:122;;8391:79;;:::i;:::-;8350:122;8501:6;8495:13;8526:104;8626:3;8618:6;8611:4;8603:6;8599:17;8526:104;:::i;:::-;8517:113;;8340:296;8253:383;;;;:::o;8657:381::-;8737:5;8786:3;8779:4;8771:6;8767:17;8763:27;8753:122;;8794:79;;:::i;:::-;8753:122;8904:6;8898:13;8929:103;9028:3;9020:6;9013:4;9005:6;9001:17;8929:103;:::i;:::-;8920:112;;8743:295;8657:381;;;;:::o;9060:405::-;9152:5;9201:3;9194:4;9186:6;9182:17;9178:27;9168:122;;9209:79;;:::i;:::-;9168:122;9319:6;9313:13;9344:115;9455:3;9447:6;9440:4;9432:6;9428:17;9344:115;:::i;:::-;9335:124;;9158:307;9060:405;;;;:::o;9527:428::-;9627:5;9676:3;9669:4;9661:6;9657:17;9653:27;9643:122;;9684:79;;:::i;:::-;9643:122;9801:6;9788:20;9826:123;9945:3;9937:6;9930:4;9922:6;9918:17;9826:123;:::i;:::-;9817:132;;9633:322;9527:428;;;;:::o;9977:383::-;10058:5;10107:3;10100:4;10092:6;10088:17;10084:27;10074:122;;10115:79;;:::i;:::-;10074:122;10225:6;10219:13;10250:104;10350:3;10342:6;10335:4;10327:6;10323:17;10250:104;:::i;:::-;10241:113;;10064:296;9977:383;;;;:::o;10366:133::-;10409:5;10447:6;10434:20;10425:29;;10463:30;10487:5;10463:30;:::i;:::-;10366:133;;;;:::o;10505:137::-;10559:5;10590:6;10584:13;10575:22;;10606:30;10630:5;10606:30;:::i;:::-;10505:137;;;;:::o;10648:139::-;10694:5;10732:6;10719:20;10710:29;;10748:33;10775:5;10748:33;:::i;:::-;10648:139;;;;:::o;10793:143::-;10850:5;10881:6;10875:13;10866:22;;10897:33;10924:5;10897:33;:::i;:::-;10793:143;;;;:::o;10955:552::-;11012:8;11022:6;11072:3;11065:4;11057:6;11053:17;11049:27;11039:122;;11080:79;;:::i;:::-;11039:122;11193:6;11180:20;11170:30;;11223:18;11215:6;11212:30;11209:117;;;11245:79;;:::i;:::-;11209:117;11359:4;11351:6;11347:17;11335:29;;11413:3;11405:4;11397:6;11393:17;11383:8;11379:32;11376:41;11373:128;;;11420:79;;:::i;:::-;11373:128;10955:552;;;;;:::o;11526:338::-;11581:5;11630:3;11623:4;11615:6;11611:17;11607:27;11597:122;;11638:79;;:::i;:::-;11597:122;11755:6;11742:20;11780:78;11854:3;11846:6;11839:4;11831:6;11827:17;11780:78;:::i;:::-;11771:87;;11587:277;11526:338;;;;:::o;11883:353::-;11949:5;11998:3;11991:4;11983:6;11979:17;11975:27;11965:122;;12006:79;;:::i;:::-;11965:122;12116:6;12110:13;12141:89;12226:3;12218:6;12211:4;12203:6;12199:17;12141:89;:::i;:::-;12132:98;;11955:281;11883:353;;;;:::o;12242:185::-;12311:5;12349:6;12336:20;12327:29;;12365:56;12415:5;12365:56;:::i;:::-;12242:185;;;;:::o;12433:173::-;12505:5;12536:6;12530:13;12521:22;;12552:48;12594:5;12552:48;:::i;:::-;12433:173;;;;:::o;12612:141::-;12668:5;12699:6;12693:13;12684:22;;12715:32;12741:5;12715:32;:::i;:::-;12612:141;;;;:::o;12759:139::-;12814:5;12845:6;12839:13;12830:22;;12861:31;12886:5;12861:31;:::i;:::-;12759:139;;;;:::o;12918:355::-;12985:5;13034:3;13027:4;13019:6;13015:17;13011:27;13001:122;;13042:79;;:::i;:::-;13001:122;13152:6;13146:13;13177:90;13263:3;13255:6;13248:4;13240:6;13236:17;13177:90;:::i;:::-;13168:99;;12991:282;12918:355;;;;:::o;13333:1086::-;13411:5;13455:4;13443:9;13438:3;13434:19;13430:30;13427:117;;;13463:79;;:::i;:::-;13427:117;13562:21;13578:4;13562:21;:::i;:::-;13553:30;;13645:1;13685:49;13730:3;13721:6;13710:9;13706:22;13685:49;:::i;:::-;13678:4;13671:5;13667:16;13660:75;13593:153;13810:2;13851:49;13896:3;13887:6;13876:9;13872:22;13851:49;:::i;:::-;13844:4;13837:5;13833:16;13826:75;13756:156;13975:2;14016:49;14061:3;14052:6;14041:9;14037:22;14016:49;:::i;:::-;14009:4;14002:5;13998:16;13991:75;13922:155;14169:2;14158:9;14154:18;14141:32;14200:18;14192:6;14189:30;14186:117;;;14222:79;;:::i;:::-;14186:117;14342:58;14396:3;14387:6;14376:9;14372:22;14342:58;:::i;:::-;14335:4;14328:5;14324:16;14317:84;14087:325;13333:1086;;;;:::o;14453:743::-;14526:5;14570:4;14558:9;14553:3;14549:19;14545:30;14542:117;;;14578:79;;:::i;:::-;14542:117;14677:21;14693:4;14677:21;:::i;:::-;14668:30;;14785:1;14774:9;14770:17;14757:31;14815:18;14807:6;14804:30;14801:117;;;14837:79;;:::i;:::-;14801:117;14957:58;15011:3;15002:6;14991:9;14987:22;14957:58;:::i;:::-;14950:4;14943:5;14939:16;14932:84;14708:319;15088:2;15129:48;15173:3;15164:6;15153:9;15149:22;15129:48;:::i;:::-;15122:4;15115:5;15111:16;15104:74;15037:152;14453:743;;;;:::o;15230:769::-;15314:5;15358:4;15346:9;15341:3;15337:19;15333:30;15330:117;;;15366:79;;:::i;:::-;15330:117;15465:21;15481:4;15465:21;:::i;:::-;15456:30;;15566:1;15555:9;15551:17;15545:24;15596:18;15588:6;15585:30;15582:117;;;15618:79;;:::i;:::-;15582:117;15738:69;15803:3;15794:6;15783:9;15779:22;15738:69;:::i;:::-;15731:4;15724:5;15720:16;15713:95;15496:323;15880:2;15921:59;15976:3;15967:6;15956:9;15952:22;15921:59;:::i;:::-;15914:4;15907:5;15903:16;15896:85;15829:163;15230:769;;;;:::o;16031:1422::-;16102:5;16146:4;16134:9;16129:3;16125:19;16121:30;16118:117;;;16154:79;;:::i;:::-;16118:117;16253:21;16269:4;16253:21;:::i;:::-;16244:30;;16363:1;16352:9;16348:17;16335:31;16393:18;16385:6;16382:30;16379:117;;;16415:79;;:::i;:::-;16379:117;16535:73;16604:3;16595:6;16584:9;16580:22;16535:73;:::i;:::-;16528:4;16521:5;16517:16;16510:99;16284:336;16686:2;16727:47;16770:3;16761:6;16750:9;16746:22;16727:47;:::i;:::-;16720:4;16713:5;16709:16;16702:73;16630:156;16850:2;16891:47;16934:3;16925:6;16914:9;16910:22;16891:47;:::i;:::-;16884:4;16877:5;16873:16;16866:73;16796:154;17026:2;17067:47;17110:3;17101:6;17090:9;17086:22;17067:47;:::i;:::-;17060:4;17053:5;17049:16;17042:73;16960:166;17184:3;17226:48;17270:3;17261:6;17250:9;17246:22;17226:48;:::i;:::-;17219:4;17212:5;17208:16;17201:74;17136:150;17344:3;17386:48;17430:3;17421:6;17410:9;17406:22;17386:48;:::i;:::-;17379:4;17372:5;17368:16;17361:74;17296:150;16031:1422;;;;:::o;17485:1492::-;17567:5;17611:4;17599:9;17594:3;17590:19;17586:30;17583:117;;;17619:79;;:::i;:::-;17583:117;17718:21;17734:4;17718:21;:::i;:::-;17709:30;;17821:1;17810:9;17806:17;17800:24;17851:18;17843:6;17840:30;17837:117;;;17873:79;;:::i;:::-;17837:117;17993:84;18073:3;18064:6;18053:9;18049:22;17993:84;:::i;:::-;17986:4;17979:5;17975:16;17968:110;17749:340;18155:2;18196:58;18250:3;18241:6;18230:9;18226:22;18196:58;:::i;:::-;18189:4;18182:5;18178:16;18171:84;18099:167;18330:2;18371:58;18425:3;18416:6;18405:9;18401:22;18371:58;:::i;:::-;18364:4;18357:5;18353:16;18346:84;18276:165;18517:2;18558:58;18612:3;18603:6;18592:9;18588:22;18558:58;:::i;:::-;18551:4;18544:5;18540:16;18533:84;18451:177;18686:3;18728:59;18783:3;18774:6;18763:9;18759:22;18728:59;:::i;:::-;18721:4;18714:5;18710:16;18703:85;18638:161;18857:3;18899:59;18954:3;18945:6;18934:9;18930:22;18899:59;:::i;:::-;18892:4;18885:5;18881:16;18874:85;18809:161;17485:1492;;;;:::o;19011:756::-;19084:5;19128:4;19116:9;19111:3;19107:19;19103:30;19100:117;;;19136:79;;:::i;:::-;19100:117;19235:21;19251:4;19235:21;:::i;:::-;19226:30;;19318:1;19358:46;19400:3;19391:6;19380:9;19376:22;19358:46;:::i;:::-;19351:4;19344:5;19340:16;19333:72;19266:150;19504:2;19493:9;19489:18;19476:32;19535:18;19527:6;19524:30;19521:117;;;19557:79;;:::i;:::-;19521:117;19677:71;19744:3;19735:6;19724:9;19720:22;19677:71;:::i;:::-;19670:4;19663:5;19659:16;19652:97;19426:334;19011:756;;;;:::o;19801:782::-;19885:5;19929:4;19917:9;19912:3;19908:19;19904:30;19901:117;;;19937:79;;:::i;:::-;19901:117;20036:21;20052:4;20036:21;:::i;:::-;20027:30;;20119:1;20159:57;20212:3;20203:6;20192:9;20188:22;20159:57;:::i;:::-;20152:4;20145:5;20141:16;20134:83;20067:161;20309:2;20298:9;20294:18;20288:25;20340:18;20332:6;20329:30;20326:117;;;20362:79;;:::i;:::-;20326:117;20482:82;20560:3;20551:6;20540:9;20536:22;20482:82;:::i;:::-;20475:4;20468:5;20464:16;20457:108;20238:338;19801:782;;;;:::o;20589:139::-;20635:5;20673:6;20660:20;20651:29;;20689:33;20716:5;20689:33;:::i;:::-;20589:139;;;;:::o;20734:137::-;20779:5;20817:6;20804:20;20795:29;;20833:32;20859:5;20833:32;:::i;:::-;20734:137;;;;:::o;20877:141::-;20933:5;20964:6;20958:13;20949:22;;20980:32;21006:5;20980:32;:::i;:::-;20877:141;;;;:::o;21024:137::-;21069:5;21107:6;21094:20;21085:29;;21123:32;21149:5;21123:32;:::i;:::-;21024:137;;;;:::o;21167:141::-;21223:5;21254:6;21248:13;21239:22;;21270:32;21296:5;21270:32;:::i;:::-;21167:141;;;;:::o;21314:135::-;21358:5;21396:6;21383:20;21374:29;;21412:31;21437:5;21412:31;:::i;:::-;21314:135;;;;:::o;21455:139::-;21510:5;21541:6;21535:13;21526:22;;21557:31;21582:5;21557:31;:::i;:::-;21455:139;;;;:::o;21600:329::-;21659:6;21708:2;21696:9;21687:7;21683:23;21679:32;21676:119;;;21714:79;;:::i;:::-;21676:119;21834:1;21859:53;21904:7;21895:6;21884:9;21880:22;21859:53;:::i;:::-;21849:63;;21805:117;21600:329;;;;:::o;21935:539::-;22019:6;22068:2;22056:9;22047:7;22043:23;22039:32;22036:119;;;22074:79;;:::i;:::-;22036:119;22222:1;22211:9;22207:17;22194:31;22252:18;22244:6;22241:30;22238:117;;;22274:79;;:::i;:::-;22238:117;22379:78;22449:7;22440:6;22429:9;22425:22;22379:78;:::i;:::-;22369:88;;22165:302;21935:539;;;;:::o;22480:554::-;22575:6;22624:2;22612:9;22603:7;22599:23;22595:32;22592:119;;;22630:79;;:::i;:::-;22592:119;22771:1;22760:9;22756:17;22750:24;22801:18;22793:6;22790:30;22787:117;;;22823:79;;:::i;:::-;22787:117;22928:89;23009:7;23000:6;22989:9;22985:22;22928:89;:::i;:::-;22918:99;;22721:306;22480:554;;;;:::o;23040:552::-;23134:6;23183:2;23171:9;23162:7;23158:23;23154:32;23151:119;;;23189:79;;:::i;:::-;23151:119;23330:1;23319:9;23315:17;23309:24;23360:18;23352:6;23349:30;23346:117;;;23382:79;;:::i;:::-;23346:117;23487:88;23567:7;23558:6;23547:9;23543:22;23487:88;:::i;:::-;23477:98;;23280:305;23040:552;;;;:::o;23598:550::-;23691:6;23740:2;23728:9;23719:7;23715:23;23711:32;23708:119;;;23746:79;;:::i;:::-;23708:119;23887:1;23876:9;23872:17;23866:24;23917:18;23909:6;23906:30;23903:117;;;23939:79;;:::i;:::-;23903:117;24044:87;24123:7;24114:6;24103:9;24099:22;24044:87;:::i;:::-;24034:97;;23837:304;23598:550;;;;:::o;24154:574::-;24259:6;24308:2;24296:9;24287:7;24283:23;24279:32;24276:119;;;24314:79;;:::i;:::-;24276:119;24455:1;24444:9;24440:17;24434:24;24485:18;24477:6;24474:30;24471:117;;;24507:79;;:::i;:::-;24471:117;24612:99;24703:7;24694:6;24683:9;24679:22;24612:99;:::i;:::-;24602:109;;24405:316;24154:574;;;;:::o;24734:736::-;24853:6;24861;24910:2;24898:9;24889:7;24885:23;24881:32;24878:119;;;24916:79;;:::i;:::-;24878:119;25064:1;25053:9;25049:17;25036:31;25094:18;25086:6;25083:30;25080:117;;;25116:79;;:::i;:::-;25080:117;25221:107;25320:7;25311:6;25300:9;25296:22;25221:107;:::i;:::-;25211:117;;25007:331;25377:2;25403:50;25445:7;25436:6;25425:9;25421:22;25403:50;:::i;:::-;25393:60;;25348:115;24734:736;;;;;:::o;25476:552::-;25570:6;25619:2;25607:9;25598:7;25594:23;25590:32;25587:119;;;25625:79;;:::i;:::-;25587:119;25766:1;25755:9;25751:17;25745:24;25796:18;25788:6;25785:30;25782:117;;;25818:79;;:::i;:::-;25782:117;25923:88;26003:7;25994:6;25983:9;25979:22;25923:88;:::i;:::-;25913:98;;25716:305;25476:552;;;;:::o;26034:345::-;26101:6;26150:2;26138:9;26129:7;26125:23;26121:32;26118:119;;;26156:79;;:::i;:::-;26118:119;26276:1;26301:61;26354:7;26345:6;26334:9;26330:22;26301:61;:::i;:::-;26291:71;;26247:125;26034:345;;;;:::o;26385:351::-;26455:6;26504:2;26492:9;26483:7;26479:23;26475:32;26472:119;;;26510:79;;:::i;:::-;26472:119;26630:1;26655:64;26711:7;26702:6;26691:9;26687:22;26655:64;:::i;:::-;26645:74;;26601:128;26385:351;;;;:::o;26742:507::-;26810:6;26859:2;26847:9;26838:7;26834:23;26830:32;26827:119;;;26865:79;;:::i;:::-;26827:119;27013:1;27002:9;26998:17;26985:31;27043:18;27035:6;27032:30;27029:117;;;27065:79;;:::i;:::-;27029:117;27170:62;27224:7;27215:6;27204:9;27200:22;27170:62;:::i;:::-;27160:72;;26956:286;26742:507;;;;:::o;27255:522::-;27334:6;27383:2;27371:9;27362:7;27358:23;27354:32;27351:119;;;27389:79;;:::i;:::-;27351:119;27530:1;27519:9;27515:17;27509:24;27560:18;27552:6;27549:30;27546:117;;;27582:79;;:::i;:::-;27546:117;27687:73;27752:7;27743:6;27732:9;27728:22;27687:73;:::i;:::-;27677:83;;27480:290;27255:522;;;;:::o;27783:375::-;27865:6;27914:2;27902:9;27893:7;27889:23;27885:32;27882:119;;;27920:79;;:::i;:::-;27882:119;28040:1;28065:76;28133:7;28124:6;28113:9;28109:22;28065:76;:::i;:::-;28055:86;;28011:140;27783:375;;;;:::o;28164:381::-;28249:6;28298:2;28286:9;28277:7;28273:23;28269:32;28266:119;;;28304:79;;:::i;:::-;28266:119;28424:1;28449:79;28520:7;28511:6;28500:9;28496:22;28449:79;:::i;:::-;28439:89;;28395:143;28164:381;;;;:::o;28551:710::-;28655:6;28663;28712:2;28700:9;28691:7;28687:23;28683:32;28680:119;;;28718:79;;:::i;:::-;28680:119;28838:1;28863:79;28934:7;28925:6;28914:9;28910:22;28863:79;:::i;:::-;28853:89;;28809:143;29012:2;29001:9;28997:18;28991:25;29043:18;29035:6;29032:30;29029:117;;;29065:79;;:::i;:::-;29029:117;29170:74;29236:7;29227:6;29216:9;29212:22;29170:74;:::i;:::-;29160:84;;28962:292;28551:710;;;;;:::o;29267:349::-;29336:6;29385:2;29373:9;29364:7;29360:23;29356:32;29353:119;;;29391:79;;:::i;:::-;29353:119;29511:1;29536:63;29591:7;29582:6;29571:9;29567:22;29536:63;:::i;:::-;29526:73;;29482:127;29267:349;;;;:::o;29622:347::-;29690:6;29739:2;29727:9;29718:7;29714:23;29710:32;29707:119;;;29745:79;;:::i;:::-;29707:119;29865:1;29890:62;29944:7;29935:6;29924:9;29920:22;29890:62;:::i;:::-;29880:72;;29836:126;29622:347;;;;:::o;29975:524::-;30055:6;30104:2;30092:9;30083:7;30079:23;30075:32;30072:119;;;30110:79;;:::i;:::-;30072:119;30251:1;30240:9;30236:17;30230:24;30281:18;30273:6;30270:30;30267:117;;;30303:79;;:::i;:::-;30267:117;30408:74;30474:7;30465:6;30454:9;30450:22;30408:74;:::i;:::-;30398:84;;30201:291;29975:524;;;;:::o;30505:533::-;30586:6;30635:2;30623:9;30614:7;30610:23;30606:32;30603:119;;;30641:79;;:::i;:::-;30603:119;30789:1;30778:9;30774:17;30761:31;30819:18;30811:6;30808:30;30805:117;;;30841:79;;:::i;:::-;30805:117;30946:75;31013:7;31004:6;30993:9;30989:22;30946:75;:::i;:::-;30936:85;;30732:299;30505:533;;;;:::o;31044:537::-;31127:6;31176:2;31164:9;31155:7;31151:23;31147:32;31144:119;;;31182:79;;:::i;:::-;31144:119;31330:1;31319:9;31315:17;31302:31;31360:18;31352:6;31349:30;31346:117;;;31382:79;;:::i;:::-;31346:117;31487:77;31556:7;31547:6;31536:9;31532:22;31487:77;:::i;:::-;31477:87;;31273:301;31044:537;;;;:::o;31587:552::-;31681:6;31730:2;31718:9;31709:7;31705:23;31701:32;31698:119;;;31736:79;;:::i;:::-;31698:119;31877:1;31866:9;31862:17;31856:24;31907:18;31899:6;31896:30;31893:117;;;31929:79;;:::i;:::-;31893:117;32034:88;32114:7;32105:6;32094:9;32090:22;32034:88;:::i;:::-;32024:98;;31827:305;31587:552;;;;:::o;32145:329::-;32204:6;32253:2;32241:9;32232:7;32228:23;32224:32;32221:119;;;32259:79;;:::i;:::-;32221:119;32379:1;32404:53;32449:7;32440:6;32429:9;32425:22;32404:53;:::i;:::-;32394:63;;32350:117;32145:329;;;;:::o;32480:817::-;32568:6;32576;32584;32592;32641:2;32629:9;32620:7;32616:23;32612:32;32609:119;;;32647:79;;:::i;:::-;32609:119;32767:1;32792:53;32837:7;32828:6;32817:9;32813:22;32792:53;:::i;:::-;32782:63;;32738:117;32894:2;32920:53;32965:7;32956:6;32945:9;32941:22;32920:53;:::i;:::-;32910:63;;32865:118;33050:2;33039:9;33035:18;33022:32;33081:18;33073:6;33070:30;33067:117;;;33103:79;;:::i;:::-;33067:117;33216:64;33272:7;33263:6;33252:9;33248:22;33216:64;:::i;:::-;33198:82;;;;32993:297;32480:817;;;;;;;:::o;33303:963::-;33400:6;33408;33416;33424;33432;33481:3;33469:9;33460:7;33456:23;33452:33;33449:120;;;33488:79;;:::i;:::-;33449:120;33608:1;33633:53;33678:7;33669:6;33658:9;33654:22;33633:53;:::i;:::-;33623:63;;33579:117;33735:2;33761:53;33806:7;33797:6;33786:9;33782:22;33761:53;:::i;:::-;33751:63;;33706:118;33863:2;33889:53;33934:7;33925:6;33914:9;33910:22;33889:53;:::i;:::-;33879:63;;33834:118;34019:2;34008:9;34004:18;33991:32;34050:18;34042:6;34039:30;34036:117;;;34072:79;;:::i;:::-;34036:117;34185:64;34241:7;34232:6;34221:9;34217:22;34185:64;:::i;:::-;34167:82;;;;33962:297;33303:963;;;;;;;;:::o;34272:349::-;34341:6;34390:2;34378:9;34369:7;34365:23;34361:32;34358:119;;;34396:79;;:::i;:::-;34358:119;34516:1;34541:63;34596:7;34587:6;34576:9;34572:22;34541:63;:::i;:::-;34531:73;;34487:127;34272:349;;;;:::o;34627:179::-;34696:10;34717:46;34759:3;34751:6;34717:46;:::i;:::-;34795:4;34790:3;34786:14;34772:28;;34627:179;;;;:::o;34812:175::-;34879:10;34900:44;34940:3;34932:6;34900:44;:::i;:::-;34976:4;34971:3;34967:14;34953:28;;34812:175;;;;:::o;34993:171::-;35058:10;35079:42;35117:3;35109:6;35079:42;:::i;:::-;35153:4;35148:3;35144:14;35130:28;;34993:171;;;;:::o;35170:196::-;35259:10;35294:66;35356:3;35348:6;35294:66;:::i;:::-;35280:80;;35170:196;;;;:::o;35372:175::-;35439:10;35460:44;35500:3;35492:6;35460:44;:::i;:::-;35536:4;35531:3;35527:14;35513:28;;35372:175;;;;:::o;35553:108::-;35630:24;35648:5;35630:24;:::i;:::-;35625:3;35618:37;35553:108;;:::o;35667:118::-;35754:24;35772:5;35754:24;:::i;:::-;35749:3;35742:37;35667:118;;:::o;35821:732::-;35940:3;35969:54;36017:5;35969:54;:::i;:::-;36039:86;36118:6;36113:3;36039:86;:::i;:::-;36032:93;;36149:56;36199:5;36149:56;:::i;:::-;36228:7;36259:1;36244:284;36269:6;36266:1;36263:13;36244:284;;;36345:6;36339:13;36372:63;36431:3;36416:13;36372:63;:::i;:::-;36365:70;;36458:60;36511:6;36458:60;:::i;:::-;36448:70;;36304:224;36291:1;36288;36284:9;36279:14;;36244:284;;;36248:14;36544:3;36537:10;;35945:608;;;35821:732;;;;:::o;36587:724::-;36704:3;36733:53;36780:5;36733:53;:::i;:::-;36802:85;36880:6;36875:3;36802:85;:::i;:::-;36795:92;;36911:55;36960:5;36911:55;:::i;:::-;36989:7;37020:1;37005:281;37030:6;37027:1;37024:13;37005:281;;;37106:6;37100:13;37133:61;37190:3;37175:13;37133:61;:::i;:::-;37126:68;;37217:59;37269:6;37217:59;:::i;:::-;37207:69;;37065:221;37052:1;37049;37045:9;37040:14;;37005:281;;;37009:14;37302:3;37295:10;;36709:602;;;36587:724;;;;:::o;37343:716::-;37458:3;37487:52;37533:5;37487:52;:::i;:::-;37555:84;37632:6;37627:3;37555:84;:::i;:::-;37548:91;;37663:54;37711:5;37663:54;:::i;:::-;37740:7;37771:1;37756:278;37781:6;37778:1;37775:13;37756:278;;;37857:6;37851:13;37884:59;37939:3;37924:13;37884:59;:::i;:::-;37877:66;;37966:58;38017:6;37966:58;:::i;:::-;37956:68;;37816:218;37803:1;37800;37796:9;37791:14;;37756:278;;;37760:14;38050:3;38043:10;;37463:596;;;37343:716;;;;:::o;38093:991::-;38232:3;38261:64;38319:5;38261:64;:::i;:::-;38341:96;38430:6;38425:3;38341:96;:::i;:::-;38334:103;;38463:3;38508:4;38500:6;38496:17;38491:3;38487:27;38538:66;38598:5;38538:66;:::i;:::-;38627:7;38658:1;38643:396;38668:6;38665:1;38662:13;38643:396;;;38739:9;38733:4;38729:20;38724:3;38717:33;38790:6;38784:13;38818:84;38897:4;38882:13;38818:84;:::i;:::-;38810:92;;38925:70;38988:6;38925:70;:::i;:::-;38915:80;;39024:4;39019:3;39015:14;39008:21;;38703:336;38690:1;38687;38683:9;38678:14;;38643:396;;;38647:14;39055:4;39048:11;;39075:3;39068:10;;38237:847;;;;;38093:991;;;;:::o;39118:724::-;39235:3;39264:53;39311:5;39264:53;:::i;:::-;39333:85;39411:6;39406:3;39333:85;:::i;:::-;39326:92;;39442:55;39491:5;39442:55;:::i;:::-;39520:7;39551:1;39536:281;39561:6;39558:1;39555:13;39536:281;;;39637:6;39631:13;39664:61;39721:3;39706:13;39664:61;:::i;:::-;39657:68;;39748:59;39800:6;39748:59;:::i;:::-;39738:69;;39596:221;39583:1;39580;39576:9;39571:14;;39536:281;;;39540:14;39833:3;39826:10;;39240:602;;;39118:724;;;;:::o;39848:99::-;39919:21;39934:5;39919:21;:::i;:::-;39914:3;39907:34;39848:99;;:::o;39953:109::-;40034:21;40049:5;40034:21;:::i;:::-;40029:3;40022:34;39953:109;;:::o;40068:107::-;40147:21;40162:5;40147:21;:::i;:::-;40142:3;40135:34;40068:107;;:::o;40181:108::-;40258:24;40276:5;40258:24;:::i;:::-;40253:3;40246:37;40181:108;;:::o;40295:118::-;40382:24;40400:5;40382:24;:::i;:::-;40377:3;40370:37;40295:118;;:::o;40419:340::-;40495:3;40523:38;40555:5;40523:38;:::i;:::-;40577:60;40630:6;40625:3;40577:60;:::i;:::-;40570:67;;40646:52;40691:6;40686:3;40679:4;40672:5;40668:16;40646:52;:::i;:::-;40723:29;40745:6;40723:29;:::i;:::-;40718:3;40714:39;40707:46;;40499:260;40419:340;;;;:::o;40765:360::-;40851:3;40879:38;40911:5;40879:38;:::i;:::-;40933:70;40996:6;40991:3;40933:70;:::i;:::-;40926:77;;41012:52;41057:6;41052:3;41045:4;41038:5;41034:16;41012:52;:::i;:::-;41089:29;41111:6;41089:29;:::i;:::-;41084:3;41080:39;41073:46;;40855:270;40765:360;;;;:::o;41131:376::-;41225:3;41253:38;41285:5;41253:38;:::i;:::-;41307:78;41378:6;41373:3;41307:78;:::i;:::-;41300:85;;41394:52;41439:6;41434:3;41427:4;41420:5;41416:16;41394:52;:::i;:::-;41471:29;41493:6;41471:29;:::i;:::-;41466:3;41462:39;41455:46;;41229:278;41131:376;;;;:::o;41513:356::-;41597:3;41625:38;41657:5;41625:38;:::i;:::-;41679:68;41740:6;41735:3;41679:68;:::i;:::-;41672:75;;41756:52;41801:6;41796:3;41789:4;41782:5;41778:16;41756:52;:::i;:::-;41833:29;41855:6;41833:29;:::i;:::-;41828:3;41824:39;41817:46;;41601:268;41513:356;;;;:::o;41875:373::-;41979:3;42007:38;42039:5;42007:38;:::i;:::-;42061:88;42142:6;42137:3;42061:88;:::i;:::-;42054:95;;42158:52;42203:6;42198:3;42191:4;42184:5;42180:16;42158:52;:::i;:::-;42235:6;42230:3;42226:16;42219:23;;41983:265;41875:373;;;;:::o;42276:814::-;42367:3;42404:5;42398:12;42433:36;42459:9;42433:36;:::i;:::-;42485:78;42556:6;42551:3;42485:78;:::i;:::-;42478:85;;42594:1;42583:9;42579:17;42610:1;42605:135;;;;42754:1;42749:335;;;;42572:512;;42605:135;42689:4;42685:9;42674;42670:25;42665:3;42658:38;42725:4;42720:3;42716:14;42709:21;;42605:135;;42749:335;42816:37;42847:5;42816:37;:::i;:::-;42875:1;42889:154;42903:6;42900:1;42897:13;42889:154;;;42977:7;42971:14;42967:1;42962:3;42958:11;42951:35;43027:1;43018:7;43014:15;43003:26;;42925:4;42922:1;42918:12;42913:17;;42889:154;;;43072:1;43067:3;43063:11;43056:18;;42756:328;;42572:512;;42371:719;;42276:814;;;;:::o;43096:161::-;43198:52;43244:5;43198:52;:::i;:::-;43193:3;43186:65;43096:161;;:::o;43263:167::-;43363:60;43417:5;43363:60;:::i;:::-;43358:3;43351:73;43263:167;;:::o;43436:157::-;43536:50;43580:5;43536:50;:::i;:::-;43531:3;43524:63;43436:157;;:::o;43599:159::-;43700:51;43745:5;43700:51;:::i;:::-;43695:3;43688:64;43599:159;;:::o;43764:105::-;43839:23;43856:5;43839:23;:::i;:::-;43834:3;43827:36;43764:105;;:::o;43875:115::-;43960:23;43977:5;43960:23;:::i;:::-;43955:3;43948:36;43875:115;;:::o;43996:102::-;44069:22;44085:5;44069:22;:::i;:::-;44064:3;44057:35;43996:102;;:::o;44104:112::-;44187:22;44203:5;44187:22;:::i;:::-;44182:3;44175:35;44104:112;;:::o;44222:344::-;44300:3;44328:39;44361:5;44328:39;:::i;:::-;44383:61;44437:6;44432:3;44383:61;:::i;:::-;44376:68;;44453:52;44498:6;44493:3;44486:4;44479:5;44475:16;44453:52;:::i;:::-;44530:29;44552:6;44530:29;:::i;:::-;44525:3;44521:39;44514:46;;44304:262;44222:344;;;;:::o;44572:364::-;44660:3;44688:39;44721:5;44688:39;:::i;:::-;44743:71;44807:6;44802:3;44743:71;:::i;:::-;44736:78;;44823:52;44868:6;44863:3;44856:4;44849:5;44845:16;44823:52;:::i;:::-;44900:29;44922:6;44900:29;:::i;:::-;44895:3;44891:39;44884:46;;44664:272;44572:364;;;;:::o;44942:366::-;45084:3;45105:67;45169:2;45164:3;45105:67;:::i;:::-;45098:74;;45181:93;45270:3;45181:93;:::i;:::-;45299:2;45294:3;45290:12;45283:19;;44942:366;;;:::o;45314:::-;45456:3;45477:67;45541:2;45536:3;45477:67;:::i;:::-;45470:74;;45553:93;45642:3;45553:93;:::i;:::-;45671:2;45666:3;45662:12;45655:19;;45314:366;;;:::o;45686:::-;45828:3;45849:67;45913:2;45908:3;45849:67;:::i;:::-;45842:74;;45925:93;46014:3;45925:93;:::i;:::-;46043:2;46038:3;46034:12;46027:19;;45686:366;;;:::o;46058:::-;46200:3;46221:67;46285:2;46280:3;46221:67;:::i;:::-;46214:74;;46297:93;46386:3;46297:93;:::i;:::-;46415:2;46410:3;46406:12;46399:19;;46058:366;;;:::o;46430:::-;46572:3;46593:67;46657:2;46652:3;46593:67;:::i;:::-;46586:74;;46669:93;46758:3;46669:93;:::i;:::-;46787:2;46782:3;46778:12;46771:19;;46430:366;;;:::o;46802:::-;46944:3;46965:67;47029:2;47024:3;46965:67;:::i;:::-;46958:74;;47041:93;47130:3;47041:93;:::i;:::-;47159:2;47154:3;47150:12;47143:19;;46802:366;;;:::o;47174:::-;47316:3;47337:67;47401:2;47396:3;47337:67;:::i;:::-;47330:74;;47413:93;47502:3;47413:93;:::i;:::-;47531:2;47526:3;47522:12;47515:19;;47174:366;;;:::o;47546:::-;47688:3;47709:67;47773:2;47768:3;47709:67;:::i;:::-;47702:74;;47785:93;47874:3;47785:93;:::i;:::-;47903:2;47898:3;47894:12;47887:19;;47546:366;;;:::o;47918:::-;48060:3;48081:67;48145:2;48140:3;48081:67;:::i;:::-;48074:74;;48157:93;48246:3;48157:93;:::i;:::-;48275:2;48270:3;48266:12;48259:19;;47918:366;;;:::o;48290:::-;48432:3;48453:67;48517:2;48512:3;48453:67;:::i;:::-;48446:74;;48529:93;48618:3;48529:93;:::i;:::-;48647:2;48642:3;48638:12;48631:19;;48290:366;;;:::o;48662:::-;48804:3;48825:67;48889:2;48884:3;48825:67;:::i;:::-;48818:74;;48901:93;48990:3;48901:93;:::i;:::-;49019:2;49014:3;49010:12;49003:19;;48662:366;;;:::o;49034:::-;49176:3;49197:67;49261:2;49256:3;49197:67;:::i;:::-;49190:74;;49273:93;49362:3;49273:93;:::i;:::-;49391:2;49386:3;49382:12;49375:19;;49034:366;;;:::o;49406:::-;49548:3;49569:67;49633:2;49628:3;49569:67;:::i;:::-;49562:74;;49645:93;49734:3;49645:93;:::i;:::-;49763:2;49758:3;49754:12;49747:19;;49406:366;;;:::o;49778:::-;49920:3;49941:67;50005:2;50000:3;49941:67;:::i;:::-;49934:74;;50017:93;50106:3;50017:93;:::i;:::-;50135:2;50130:3;50126:12;50119:19;;49778:366;;;:::o;50150:::-;50292:3;50313:67;50377:2;50372:3;50313:67;:::i;:::-;50306:74;;50389:93;50478:3;50389:93;:::i;:::-;50507:2;50502:3;50498:12;50491:19;;50150:366;;;:::o;50522:::-;50664:3;50685:67;50749:2;50744:3;50685:67;:::i;:::-;50678:74;;50761:93;50850:3;50761:93;:::i;:::-;50879:2;50874:3;50870:12;50863:19;;50522:366;;;:::o;50894:::-;51036:3;51057:67;51121:2;51116:3;51057:67;:::i;:::-;51050:74;;51133:93;51222:3;51133:93;:::i;:::-;51251:2;51246:3;51242:12;51235:19;;50894:366;;;:::o;51266:::-;51408:3;51429:67;51493:2;51488:3;51429:67;:::i;:::-;51422:74;;51505:93;51594:3;51505:93;:::i;:::-;51623:2;51618:3;51614:12;51607:19;;51266:366;;;:::o;51638:::-;51780:3;51801:67;51865:2;51860:3;51801:67;:::i;:::-;51794:74;;51877:93;51966:3;51877:93;:::i;:::-;51995:2;51990:3;51986:12;51979:19;;51638:366;;;:::o;52062:592::-;52169:3;52205:4;52200:3;52196:14;52292:4;52285:5;52281:16;52275:23;52345:3;52339:4;52335:14;52328:4;52323:3;52319:14;52312:38;52371:71;52437:4;52423:12;52371:71;:::i;:::-;52363:79;;52220:233;52537:4;52530:5;52526:16;52520:23;52556:61;52611:4;52606:3;52602:14;52588:12;52556:61;:::i;:::-;52463:164;52644:4;52637:11;;52174:480;52062:592;;;;:::o;52712:616::-;52827:3;52863:4;52858:3;52854:14;52950:4;52943:5;52939:16;52933:23;53003:3;52997:4;52993:14;52986:4;52981:3;52977:14;52970:38;53029:79;53103:4;53089:12;53029:79;:::i;:::-;53021:87;;52878:241;53203:4;53196:5;53192:16;53186:23;53222:69;53285:4;53280:3;53276:14;53262:12;53222:69;:::i;:::-;53129:172;53318:4;53311:11;;52832:496;52712:616;;;;:::o;53382:1327::-;53485:3;53521:4;53516:3;53512:14;53610:4;53603:5;53599:16;53593:23;53663:3;53657:4;53653:14;53646:4;53641:3;53637:14;53630:38;53689:101;53785:4;53771:12;53689:101;:::i;:::-;53681:109;;53536:265;53890:4;53883:5;53879:16;53873:23;53909:59;53962:4;53957:3;53953:14;53939:12;53909:59;:::i;:::-;53811:167;54065:4;54058:5;54054:16;54048:23;54084:59;54137:4;54132:3;54128:14;54114:12;54084:59;:::i;:::-;53988:165;54252:4;54245:5;54241:16;54235:23;54271:59;54324:4;54319:3;54315:14;54301:12;54271:59;:::i;:::-;54163:177;54421:4;54414:5;54410:16;54404:23;54440:61;54495:4;54490:3;54486:14;54472:12;54440:61;:::i;:::-;54350:161;54592:4;54585:5;54581:16;54575:23;54611:61;54666:4;54661:3;54657:14;54643:12;54611:61;:::i;:::-;54521:161;54699:4;54692:11;;53490:1219;53382:1327;;;;:::o;54763:1393::-;54884:3;54920:4;54915:3;54911:14;55009:4;55002:5;54998:16;54992:23;55062:3;55056:4;55052:14;55045:4;55040:3;55036:14;55029:38;55088:109;55192:4;55178:12;55088:109;:::i;:::-;55080:117;;54935:273;55297:4;55290:5;55286:16;55280:23;55316:67;55377:4;55372:3;55368:14;55354:12;55316:67;:::i;:::-;55218:175;55480:4;55473:5;55469:16;55463:23;55499:67;55560:4;55555:3;55551:14;55537:12;55499:67;:::i;:::-;55403:173;55675:4;55668:5;55664:16;55658:23;55694:67;55755:4;55750:3;55746:14;55732:12;55694:67;:::i;:::-;55586:185;55852:4;55845:5;55841:16;55835:23;55871:69;55934:4;55929:3;55925:14;55911:12;55871:69;:::i;:::-;55781:169;56031:4;56024:5;56020:16;56014:23;56050:69;56113:4;56108:3;56104:14;56090:12;56050:69;:::i;:::-;55960:169;56146:4;56139:11;;54889:1267;54763:1393;;;;:::o;56210:1383::-;56321:3;56357:4;56352:3;56348:14;56446:4;56439:5;56435:16;56429:23;56499:3;56493:4;56489:14;56482:4;56477:3;56473:14;56466:38;56525:109;56629:4;56615:12;56525:109;:::i;:::-;56517:117;;56372:273;56734:4;56727:5;56723:16;56717:23;56753:67;56814:4;56809:3;56805:14;56791:12;56753:67;:::i;:::-;56655:175;56917:4;56910:5;56906:16;56900:23;56936:67;56997:4;56992:3;56988:14;56974:12;56936:67;:::i;:::-;56840:173;57112:4;57105:5;57101:16;57095:23;57131:67;57192:4;57187:3;57183:14;57169:12;57131:67;:::i;:::-;57023:185;57289:4;57282:5;57278:16;57272:23;57308:69;57371:4;57366:3;57362:14;57348:12;57308:69;:::i;:::-;57218:169;57468:4;57461:5;57457:16;57451:23;57487:69;57550:4;57545:3;57541:14;57527:12;57487:69;:::i;:::-;57397:169;57583:4;57576:11;;56326:1267;56210:1383;;;;:::o;57649:865::-;57764:3;57800:4;57795:3;57791:14;57890:4;57883:5;57879:16;57873:23;57909:113;58016:4;58011:3;58007:14;57993:12;57909:113;:::i;:::-;57815:217;58118:4;58111:5;58107:16;58101:23;58171:3;58165:4;58161:14;58154:4;58149:3;58145:14;58138:38;58197:105;58297:4;58283:12;58197:105;:::i;:::-;58189:113;;58042:271;58395:4;58388:5;58384:16;58378:23;58414:63;58471:4;58466:3;58462:14;58448:12;58414:63;:::i;:::-;58323:164;58504:4;58497:11;;57769:745;57649:865;;;;:::o;58574:1053::-;58711:4;58706:3;58702:14;58798:4;58791:5;58787:16;58781:23;58817:86;58897:4;58892:3;58888:14;58874:12;58817:86;:::i;:::-;58726:187;59000:4;58993:5;58989:16;58983:23;59019:63;59076:4;59071:3;59067:14;59053:12;59019:63;:::i;:::-;58923:169;59174:4;59167:5;59163:16;59157:23;59193:63;59250:4;59245:3;59241:14;59227:12;59193:63;:::i;:::-;59102:164;59352:4;59345:5;59341:16;59335:23;59371:63;59428:4;59423:3;59419:14;59405:12;59371:63;:::i;:::-;59276:168;59528:4;59521:5;59517:16;59511:23;59547:63;59604:4;59599:3;59595:14;59581:12;59547:63;:::i;:::-;59454:166;58680:947;58574:1053;;:::o;59687:1063::-;59834:4;59829:3;59825:14;59921:4;59914:5;59910:16;59904:23;59940:86;60020:4;60015:3;60011:14;59997:12;59940:86;:::i;:::-;59849:187;60123:4;60116:5;60112:16;60106:23;60142:63;60199:4;60194:3;60190:14;60176:12;60142:63;:::i;:::-;60046:169;60297:4;60290:5;60286:16;60280:23;60316:63;60373:4;60368:3;60364:14;60350:12;60316:63;:::i;:::-;60225:164;60475:4;60468:5;60464:16;60458:23;60494:63;60551:4;60546:3;60542:14;60528:12;60494:63;:::i;:::-;60399:168;60651:4;60644:5;60640:16;60634:23;60670:63;60727:4;60722:3;60718:14;60704:12;60670:63;:::i;:::-;60577:166;59803:947;59687:1063;;:::o;60812:962::-;60923:3;60959:4;60954:3;60950:14;61050:4;61043:5;61039:16;61033:23;61069:63;61126:4;61121:3;61117:14;61103:12;61069:63;:::i;:::-;60974:168;61229:4;61222:5;61218:16;61212:23;61248:63;61305:4;61300:3;61296:14;61282:12;61248:63;:::i;:::-;61152:169;61407:4;61400:5;61396:16;61390:23;61426:63;61483:4;61478:3;61474:14;61460:12;61426:63;:::i;:::-;61331:168;61586:4;61579:5;61575:16;61569:23;61639:3;61633:4;61629:14;61622:4;61617:3;61613:14;61606:38;61665:71;61731:4;61717:12;61665:71;:::i;:::-;61657:79;;61509:238;61764:4;61757:11;;60928:846;60812:962;;;;:::o;61836:972::-;61957:3;61993:4;61988:3;61984:14;62084:4;62077:5;62073:16;62067:23;62103:63;62160:4;62155:3;62151:14;62137:12;62103:63;:::i;:::-;62008:168;62263:4;62256:5;62252:16;62246:23;62282:63;62339:4;62334:3;62330:14;62316:12;62282:63;:::i;:::-;62186:169;62441:4;62434:5;62430:16;62424:23;62460:63;62517:4;62512:3;62508:14;62494:12;62460:63;:::i;:::-;62365:168;62620:4;62613:5;62609:16;62603:23;62673:3;62667:4;62663:14;62656:4;62651:3;62647:14;62640:38;62699:71;62765:4;62751:12;62699:71;:::i;:::-;62691:79;;62543:238;62798:4;62791:11;;61962:846;61836:972;;;;:::o;62866:626::-;62983:3;63019:4;63014:3;63010:14;63109:4;63102:5;63098:16;63092:23;63128:57;63179:4;63174:3;63170:14;63156:12;63128:57;:::i;:::-;63034:161;63278:4;63271:5;63267:16;63261:23;63331:3;63325:4;63321:14;63314:4;63309:3;63305:14;63298:38;63357:97;63449:4;63435:12;63357:97;:::i;:::-;63349:105;;63205:260;63482:4;63475:11;;62988:504;62866:626;;;;:::o;63550:650::-;63675:3;63711:4;63706:3;63702:14;63801:4;63794:5;63790:16;63784:23;63820:65;63879:4;63874:3;63870:14;63856:12;63820:65;:::i;:::-;63726:169;63978:4;63971:5;63967:16;63961:23;64031:3;64025:4;64021:14;64014:4;64009:3;64005:14;63998:38;64057:105;64157:4;64143:12;64057:105;:::i;:::-;64049:113;;63905:268;64190:4;64183:11;;63680:520;63550:650;;;;:::o;64206:108::-;64283:24;64301:5;64283:24;:::i;:::-;64278:3;64271:37;64206:108;;:::o;64320:118::-;64407:24;64425:5;64407:24;:::i;:::-;64402:3;64395:37;64320:118;;:::o;64444:105::-;64519:23;64536:5;64519:23;:::i;:::-;64514:3;64507:36;64444:105;;:::o;64555:113::-;64638:23;64655:5;64638:23;:::i;:::-;64633:3;64626:36;64555:113;;:::o;64674:105::-;64749:23;64766:5;64749:23;:::i;:::-;64744:3;64737:36;64674:105;;:::o;64785:115::-;64870:23;64887:5;64870:23;:::i;:::-;64865:3;64858:36;64785:115;;:::o;64906:113::-;64989:23;65006:5;64989:23;:::i;:::-;64984:3;64977:36;64906:113;;:::o;65025:102::-;65098:22;65114:5;65098:22;:::i;:::-;65093:3;65086:35;65025:102;;:::o;65133:110::-;65214:22;65230:5;65214:22;:::i;:::-;65209:3;65202:35;65133:110;;:::o;65249:271::-;65379:3;65401:93;65490:3;65481:6;65401:93;:::i;:::-;65394:100;;65511:3;65504:10;;65249:271;;;;:::o;65526:222::-;65619:4;65657:2;65646:9;65642:18;65634:26;;65670:71;65738:1;65727:9;65723:17;65714:6;65670:71;:::i;:::-;65526:222;;;;:::o;65754:373::-;65897:4;65935:2;65924:9;65920:18;65912:26;;65984:9;65978:4;65974:20;65970:1;65959:9;65955:17;65948:47;66012:108;66115:4;66106:6;66012:108;:::i;:::-;66004:116;;65754:373;;;;:::o;66133:369::-;66274:4;66312:2;66301:9;66297:18;66289:26;;66361:9;66355:4;66351:20;66347:1;66336:9;66332:17;66325:47;66389:106;66490:4;66481:6;66389:106;:::i;:::-;66381:114;;66133:369;;;;:::o;66508:365::-;66647:4;66685:2;66674:9;66670:18;66662:26;;66734:9;66728:4;66724:20;66720:1;66709:9;66705:17;66698:47;66762:104;66861:4;66852:6;66762:104;:::i;:::-;66754:112;;66508:365;;;;:::o;66879:413::-;67042:4;67080:2;67069:9;67065:18;67057:26;;67129:9;67123:4;67119:20;67115:1;67104:9;67100:17;67093:47;67157:128;67280:4;67271:6;67157:128;:::i;:::-;67149:136;;66879:413;;;;:::o;67298:369::-;67439:4;67477:2;67466:9;67462:18;67454:26;;67526:9;67520:4;67516:20;67512:1;67501:9;67497:17;67490:47;67554:106;67655:4;67646:6;67554:106;:::i;:::-;67546:114;;67298:369;;;;:::o;67673:210::-;67760:4;67798:2;67787:9;67783:18;67775:26;;67811:65;67873:1;67862:9;67858:17;67849:6;67811:65;:::i;:::-;67673:210;;;;:::o;67889:222::-;67982:4;68020:2;68009:9;68005:18;67997:26;;68033:71;68101:1;68090:9;68086:17;68077:6;68033:71;:::i;:::-;67889:222;;;;:::o;68117:325::-;68236:4;68274:2;68263:9;68259:18;68251:26;;68323:9;68317:4;68313:20;68309:1;68298:9;68294:17;68287:47;68351:84;68430:4;68421:6;68351:84;:::i;:::-;68343:92;;68117:325;;;;:::o;68448:309::-;68559:4;68597:2;68586:9;68582:18;68574:26;;68646:9;68640:4;68636:20;68632:1;68621:9;68617:17;68610:47;68674:76;68745:4;68736:6;68674:76;:::i;:::-;68666:84;;68448:309;;;;:::o;68763:319::-;68879:4;68917:2;68906:9;68902:18;68894:26;;68966:9;68960:4;68956:20;68952:1;68941:9;68937:17;68930:47;68994:81;69070:4;69061:6;68994:81;:::i;:::-;68986:89;;68763:319;;;;:::o;69088:252::-;69196:4;69234:2;69223:9;69219:18;69211:26;;69247:86;69330:1;69319:9;69315:17;69306:6;69247:86;:::i;:::-;69088:252;;;;:::o;69346:248::-;69452:4;69490:2;69479:9;69475:18;69467:26;;69503:84;69584:1;69573:9;69569:17;69560:6;69503:84;:::i;:::-;69346:248;;;;:::o;69600:449::-;69754:4;69792:2;69781:9;69777:18;69769:26;;69805:84;69886:1;69875:9;69871:17;69862:6;69805:84;:::i;:::-;69936:9;69930:4;69926:20;69921:2;69910:9;69906:18;69899:48;69964:78;70037:4;70028:6;69964:78;:::i;:::-;69956:86;;69600:449;;;;;:::o;70055:250::-;70162:4;70200:2;70189:9;70185:18;70177:26;;70213:85;70295:1;70284:9;70280:17;70271:6;70213:85;:::i;:::-;70055:250;;;;:::o;70311:218::-;70402:4;70440:2;70429:9;70425:18;70417:26;;70453:69;70519:1;70508:9;70504:17;70495:6;70453:69;:::i;:::-;70311:218;;;;:::o;70535:214::-;70624:4;70662:2;70651:9;70647:18;70639:26;;70675:67;70739:1;70728:9;70724:17;70715:6;70675:67;:::i;:::-;70535:214;;;;:::o;70755:313::-;70868:4;70906:2;70895:9;70891:18;70883:26;;70955:9;70949:4;70945:20;70941:1;70930:9;70926:17;70919:47;70983:78;71056:4;71047:6;70983:78;:::i;:::-;70975:86;;70755:313;;;;:::o;71074:419::-;71240:4;71278:2;71267:9;71263:18;71255:26;;71327:9;71321:4;71317:20;71313:1;71302:9;71298:17;71291:47;71355:131;71481:4;71355:131;:::i;:::-;71347:139;;71074:419;;;:::o;71499:::-;71665:4;71703:2;71692:9;71688:18;71680:26;;71752:9;71746:4;71742:20;71738:1;71727:9;71723:17;71716:47;71780:131;71906:4;71780:131;:::i;:::-;71772:139;;71499:419;;;:::o;71924:::-;72090:4;72128:2;72117:9;72113:18;72105:26;;72177:9;72171:4;72167:20;72163:1;72152:9;72148:17;72141:47;72205:131;72331:4;72205:131;:::i;:::-;72197:139;;71924:419;;;:::o;72349:::-;72515:4;72553:2;72542:9;72538:18;72530:26;;72602:9;72596:4;72592:20;72588:1;72577:9;72573:17;72566:47;72630:131;72756:4;72630:131;:::i;:::-;72622:139;;72349:419;;;:::o;72774:::-;72940:4;72978:2;72967:9;72963:18;72955:26;;73027:9;73021:4;73017:20;73013:1;73002:9;72998:17;72991:47;73055:131;73181:4;73055:131;:::i;:::-;73047:139;;72774:419;;;:::o;73199:::-;73365:4;73403:2;73392:9;73388:18;73380:26;;73452:9;73446:4;73442:20;73438:1;73427:9;73423:17;73416:47;73480:131;73606:4;73480:131;:::i;:::-;73472:139;;73199:419;;;:::o;73624:::-;73790:4;73828:2;73817:9;73813:18;73805:26;;73877:9;73871:4;73867:20;73863:1;73852:9;73848:17;73841:47;73905:131;74031:4;73905:131;:::i;:::-;73897:139;;73624:419;;;:::o;74049:::-;74215:4;74253:2;74242:9;74238:18;74230:26;;74302:9;74296:4;74292:20;74288:1;74277:9;74273:17;74266:47;74330:131;74456:4;74330:131;:::i;:::-;74322:139;;74049:419;;;:::o;74474:::-;74640:4;74678:2;74667:9;74663:18;74655:26;;74727:9;74721:4;74717:20;74713:1;74702:9;74698:17;74691:47;74755:131;74881:4;74755:131;:::i;:::-;74747:139;;74474:419;;;:::o;74899:::-;75065:4;75103:2;75092:9;75088:18;75080:26;;75152:9;75146:4;75142:20;75138:1;75127:9;75123:17;75116:47;75180:131;75306:4;75180:131;:::i;:::-;75172:139;;74899:419;;;:::o;75324:::-;75490:4;75528:2;75517:9;75513:18;75505:26;;75577:9;75571:4;75567:20;75563:1;75552:9;75548:17;75541:47;75605:131;75731:4;75605:131;:::i;:::-;75597:139;;75324:419;;;:::o;75749:::-;75915:4;75953:2;75942:9;75938:18;75930:26;;76002:9;75996:4;75992:20;75988:1;75977:9;75973:17;75966:47;76030:131;76156:4;76030:131;:::i;:::-;76022:139;;75749:419;;;:::o;76174:::-;76340:4;76378:2;76367:9;76363:18;76355:26;;76427:9;76421:4;76417:20;76413:1;76402:9;76398:17;76391:47;76455:131;76581:4;76455:131;:::i;:::-;76447:139;;76174:419;;;:::o;76599:::-;76765:4;76803:2;76792:9;76788:18;76780:26;;76852:9;76846:4;76842:20;76838:1;76827:9;76823:17;76816:47;76880:131;77006:4;76880:131;:::i;:::-;76872:139;;76599:419;;;:::o;77024:::-;77190:4;77228:2;77217:9;77213:18;77205:26;;77277:9;77271:4;77267:20;77263:1;77252:9;77248:17;77241:47;77305:131;77431:4;77305:131;:::i;:::-;77297:139;;77024:419;;;:::o;77449:377::-;77594:4;77632:2;77621:9;77617:18;77609:26;;77681:9;77675:4;77671:20;77667:1;77656:9;77652:17;77645:47;77709:110;77814:4;77805:6;77709:110;:::i;:::-;77701:118;;77449:377;;;;:::o;77832:365::-;77971:4;78009:2;77998:9;77994:18;77986:26;;78058:9;78052:4;78048:20;78044:1;78033:9;78029:17;78022:47;78086:104;78185:4;78176:6;78086:104;:::i;:::-;78078:112;;77832:365;;;;:::o;78203:323::-;78346:4;78384:3;78373:9;78369:19;78361:27;;78398:121;78516:1;78505:9;78501:17;78492:6;78398:121;:::i;:::-;78203:323;;;;:::o;78532:377::-;78677:4;78715:2;78704:9;78700:18;78692:26;;78764:9;78758:4;78754:20;78750:1;78739:9;78735:17;78728:47;78792:110;78897:4;78888:6;78792:110;:::i;:::-;78784:118;;78532:377;;;;:::o;78915:385::-;79064:4;79102:2;79091:9;79087:18;79079:26;;79151:9;79145:4;79141:20;79137:1;79126:9;79122:17;79115:47;79179:114;79288:4;79279:6;79179:114;:::i;:::-;79171:122;;78915:385;;;;:::o;79306:369::-;79447:4;79485:2;79474:9;79470:18;79462:26;;79534:9;79528:4;79524:20;79520:1;79509:9;79505:17;79498:47;79562:106;79663:4;79654:6;79562:106;:::i;:::-;79554:114;;79306:369;;;;:::o;79681:222::-;79774:4;79812:2;79801:9;79797:18;79789:26;;79825:71;79893:1;79882:9;79878:17;79869:6;79825:71;:::i;:::-;79681:222;;;;:::o;79909:332::-;80030:4;80068:2;80057:9;80053:18;80045:26;;80081:71;80149:1;80138:9;80134:17;80125:6;80081:71;:::i;:::-;80162:72;80230:2;80219:9;80215:18;80206:6;80162:72;:::i;:::-;79909:332;;;;;:::o;80247:529::-;80441:4;80479:2;80468:9;80464:18;80456:26;;80492:71;80560:1;80549:9;80545:17;80536:6;80492:71;:::i;:::-;80610:9;80604:4;80600:20;80595:2;80584:9;80580:18;80573:48;80638:131;80764:4;80638:131;:::i;:::-;80630:139;;80247:529;;;;:::o;80782:::-;80976:4;81014:2;81003:9;80999:18;80991:26;;81027:71;81095:1;81084:9;81080:17;81071:6;81027:71;:::i;:::-;81145:9;81139:4;81135:20;81130:2;81119:9;81115:18;81108:48;81173:131;81299:4;81173:131;:::i;:::-;81165:139;;80782:529;;;;:::o;81317:::-;81511:4;81549:2;81538:9;81534:18;81526:26;;81562:71;81630:1;81619:9;81615:17;81606:6;81562:71;:::i;:::-;81680:9;81674:4;81670:20;81665:2;81654:9;81650:18;81643:48;81708:131;81834:4;81708:131;:::i;:::-;81700:139;;81317:529;;;;:::o;81852:::-;82046:4;82084:2;82073:9;82069:18;82061:26;;82097:71;82165:1;82154:9;82150:17;82141:6;82097:71;:::i;:::-;82215:9;82209:4;82205:20;82200:2;82189:9;82185:18;82178:48;82243:131;82369:4;82243:131;:::i;:::-;82235:139;;81852:529;;;;:::o;82387:218::-;82478:4;82516:2;82505:9;82501:18;82493:26;;82529:69;82595:1;82584:9;82580:17;82571:6;82529:69;:::i;:::-;82387:218;;;;:::o;82611:129::-;82645:6;82672:20;;:::i;:::-;82662:30;;82701:33;82729:4;82721:6;82701:33;:::i;:::-;82611:129;;;:::o;82746:75::-;82779:6;82812:2;82806:9;82796:19;;82746:75;:::o;82827:311::-;82904:4;82994:18;82986:6;82983:30;82980:56;;;83016:18;;:::i;:::-;82980:56;83066:4;83058:6;83054:17;83046:25;;83126:4;83120;83116:15;83108:23;;82827:311;;;:::o;83144:310::-;83220:4;83310:18;83302:6;83299:30;83296:56;;;83332:18;;:::i;:::-;83296:56;83382:4;83374:6;83370:17;83362:25;;83442:4;83436;83432:15;83424:23;;83144:310;;;:::o;83460:309::-;83535:4;83625:18;83617:6;83614:30;83611:56;;;83647:18;;:::i;:::-;83611:56;83697:4;83689:6;83685:17;83677:25;;83757:4;83751;83747:15;83739:23;;83460:309;;;:::o;83775:321::-;83862:4;83952:18;83944:6;83941:30;83938:56;;;83974:18;;:::i;:::-;83938:56;84024:4;84016:6;84012:17;84004:25;;84084:4;84078;84074:15;84066:23;;83775:321;;;:::o;84102:340::-;84208:4;84298:18;84290:6;84287:30;84284:56;;;84320:18;;:::i;:::-;84284:56;84370:4;84362:6;84358:17;84350:25;;84430:4;84424;84420:15;84412:23;;84102:340;;;:::o;84448:310::-;84524:4;84614:18;84606:6;84603:30;84600:56;;;84636:18;;:::i;:::-;84600:56;84686:4;84678:6;84674:17;84666:25;;84746:4;84740;84736:15;84728:23;;84448:310;;;:::o;84764:307::-;84825:4;84915:18;84907:6;84904:30;84901:56;;;84937:18;;:::i;:::-;84901:56;84975:29;84997:6;84975:29;:::i;:::-;84967:37;;85059:4;85053;85049:15;85041:23;;84764:307;;;:::o;85077:308::-;85139:4;85229:18;85221:6;85218:30;85215:56;;;85251:18;;:::i;:::-;85215:56;85289:29;85311:6;85289:29;:::i;:::-;85281:37;;85373:4;85367;85363:15;85355:23;;85077:308;;;:::o;85391:132::-;85458:4;85481:3;85473:11;;85511:4;85506:3;85502:14;85494:22;;85391:132;;;:::o;85529:131::-;85595:4;85618:3;85610:11;;85648:4;85643:3;85639:14;85631:22;;85529:131;;;:::o;85666:130::-;85731:4;85754:3;85746:11;;85784:4;85779:3;85775:14;85767:22;;85666:130;;;:::o;85802:142::-;85879:4;85902:3;85894:11;;85932:4;85927:3;85923:14;85915:22;;85802:142;;;:::o;85950:131::-;86016:4;86039:3;86031:11;;86069:4;86064:3;86060:14;86052:22;;85950:131;;;:::o;86087:140::-;86135:4;86158:3;86150:11;;86181:3;86178:1;86171:14;86215:4;86212:1;86202:18;86194:26;;86087:140;;;:::o;86233:114::-;86300:6;86334:5;86328:12;86318:22;;86233:114;;;:::o;86353:113::-;86419:6;86453:5;86447:12;86437:22;;86353:113;;;:::o;86472:112::-;86537:6;86571:5;86565:12;86555:22;;86472:112;;;:::o;86590:124::-;86667:6;86701:5;86695:12;86685:22;;86590:124;;;:::o;86720:113::-;86786:6;86820:5;86814:12;86804:22;;86720:113;;;:::o;86839:98::-;86890:6;86924:5;86918:12;86908:22;;86839:98;;;:::o;86943:99::-;86995:6;87029:5;87023:12;87013:22;;86943:99;;;:::o;87048:113::-;87118:4;87150;87145:3;87141:14;87133:22;;87048:113;;;:::o;87167:112::-;87236:4;87268;87263:3;87259:14;87251:22;;87167:112;;;:::o;87285:111::-;87353:4;87385;87380:3;87376:14;87368:22;;87285:111;;;:::o;87402:123::-;87482:4;87514;87509:3;87505:14;87497:22;;87402:123;;;:::o;87531:112::-;87600:4;87632;87627:3;87623:14;87615:22;;87531:112;;;:::o;87649:184::-;87748:11;87782:6;87777:3;87770:19;87822:4;87817:3;87813:14;87798:29;;87649:184;;;;:::o;87839:183::-;87937:11;87971:6;87966:3;87959:19;88011:4;88006:3;88002:14;87987:29;;87839:183;;;;:::o;88028:182::-;88125:11;88159:6;88154:3;88147:19;88199:4;88194:3;88190:14;88175:29;;88028:182;;;;:::o;88216:194::-;88325:11;88359:6;88354:3;88347:19;88399:4;88394:3;88390:14;88375:29;;88216:194;;;;:::o;88416:183::-;88514:11;88548:6;88543:3;88536:19;88588:4;88583:3;88579:14;88564:29;;88416:183;;;;:::o;88605:158::-;88678:11;88712:6;88707:3;88700:19;88752:4;88747:3;88743:14;88728:29;;88605:158;;;;:::o;88769:168::-;88852:11;88886:6;88881:3;88874:19;88926:4;88921:3;88917:14;88902:29;;88769:168;;;;:::o;88943:176::-;89034:11;89068:6;89063:3;89056:19;89108:4;89103:3;89099:14;89084:29;;88943:176;;;;:::o;89125:166::-;89206:11;89240:6;89235:3;89228:19;89280:4;89275:3;89271:14;89256:29;;89125:166;;;;:::o;89297:147::-;89398:11;89435:3;89420:18;;89297:147;;;;:::o;89450:159::-;89524:11;89558:6;89553:3;89546:19;89598:4;89593:3;89589:14;89574:29;;89450:159;;;;:::o;89615:169::-;89699:11;89733:6;89728:3;89721:19;89773:4;89768:3;89764:14;89749:29;;89615:169;;;;:::o;89790:305::-;89830:3;89849:20;89867:1;89849:20;:::i;:::-;89844:25;;89883:20;89901:1;89883:20;:::i;:::-;89878:25;;90037:1;89969:66;89965:74;89962:1;89959:81;89956:107;;;90043:18;;:::i;:::-;89956:107;90087:1;90084;90080:9;90073:16;;89790:305;;;;:::o;90101:348::-;90141:7;90164:20;90182:1;90164:20;:::i;:::-;90159:25;;90198:20;90216:1;90198:20;:::i;:::-;90193:25;;90386:1;90318:66;90314:74;90311:1;90308:81;90303:1;90296:9;90289:17;90285:105;90282:131;;;90393:18;;:::i;:::-;90282:131;90441:1;90438;90434:9;90423:20;;90101:348;;;;:::o;90455:96::-;90492:7;90521:24;90539:5;90521:24;:::i;:::-;90510:35;;90455:96;;;:::o;90557:90::-;90591:7;90634:5;90627:13;90620:21;90609:32;;90557:90;;;:::o;90653:77::-;90690:7;90719:5;90708:16;;90653:77;;;:::o;90736:119::-;90796:7;90825:24;90843:5;90825:24;:::i;:::-;90814:35;;90736:119;;;:::o;90861:141::-;90913:7;90942:5;90931:16;;90948:48;90990:5;90948:48;:::i;:::-;90861:141;;;:::o;91008:143::-;91061:7;91090:5;91079:16;;91096:49;91139:5;91096:49;:::i;:::-;91008:143;;;:::o;91157:92::-;91193:7;91237:5;91233:2;91222:21;91211:32;;91157:92;;;:::o;91255:90::-;91290:7;91333:5;91330:1;91319:20;91308:31;;91255:90;;;:::o;91351:126::-;91388:7;91428:42;91421:5;91417:54;91406:65;;91351:126;;;:::o;91483:77::-;91520:7;91549:5;91538:16;;91483:77;;;:::o;91566:93::-;91602:7;91642:10;91635:5;91631:22;91620:33;;91566:93;;;:::o;91665:101::-;91701:7;91741:18;91734:5;91730:30;91719:41;;91665:101;;;:::o;91772:86::-;91807:7;91847:4;91840:5;91836:16;91825:27;;91772:86;;;:::o;91864:141::-;91929:9;91962:37;91993:5;91962:37;:::i;:::-;91949:50;;91864:141;;;:::o;92011:149::-;92084:9;92117:37;92148:5;92117:37;:::i;:::-;92104:50;;92011:149;;;:::o;92166:141::-;92229:9;92262:39;92295:5;92262:39;:::i;:::-;92249:52;;92166:141;;;:::o;92313:143::-;92377:9;92410:40;92444:5;92410:40;:::i;:::-;92397:53;;92313:143;;;:::o;92462:126::-;92512:9;92545:37;92576:5;92545:37;:::i;:::-;92532:50;;92462:126;;;:::o;92594:113::-;92644:9;92677:24;92695:5;92677:24;:::i;:::-;92664:37;;92594:113;;;:::o;92713:154::-;92797:6;92792:3;92787;92774:30;92859:1;92850:6;92845:3;92841:16;92834:27;92713:154;;;:::o;92873:307::-;92941:1;92951:113;92965:6;92962:1;92959:13;92951:113;;;93050:1;93045:3;93041:11;93035:18;93031:1;93026:3;93022:11;93015:39;92987:2;92984:1;92980:10;92975:15;;92951:113;;;93082:6;93079:1;93076:13;93073:101;;;93162:1;93153:6;93148:3;93144:16;93137:27;93073:101;92922:258;92873:307;;;:::o;93186:320::-;93230:6;93267:1;93261:4;93257:12;93247:22;;93314:1;93308:4;93304:12;93335:18;93325:81;;93391:4;93383:6;93379:17;93369:27;;93325:81;93453:2;93445:6;93442:14;93422:18;93419:38;93416:84;;;93472:18;;:::i;:::-;93416:84;93237:269;93186:320;;;:::o;93512:281::-;93595:27;93617:4;93595:27;:::i;:::-;93587:6;93583:40;93725:6;93713:10;93710:22;93689:18;93677:10;93674:34;93671:62;93668:88;;;93736:18;;:::i;:::-;93668:88;93776:10;93772:2;93765:22;93555:238;93512:281;;:::o;93799:233::-;93838:3;93861:24;93879:5;93861:24;:::i;:::-;93852:33;;93907:66;93900:5;93897:77;93894:103;;;93977:18;;:::i;:::-;93894:103;94024:1;94017:5;94013:13;94006:20;;93799:233;;;:::o;94038:180::-;94086:77;94083:1;94076:88;94183:4;94180:1;94173:15;94207:4;94204:1;94197:15;94224:180;94272:77;94269:1;94262:88;94369:4;94366:1;94359:15;94393:4;94390:1;94383:15;94410:180;94458:77;94455:1;94448:88;94555:4;94552:1;94545:15;94579:4;94576:1;94569:15;94596:180;94644:77;94641:1;94634:88;94741:4;94738:1;94731:15;94765:4;94762:1;94755:15;94782:180;94830:77;94827:1;94820:88;94927:4;94924:1;94917:15;94951:4;94948:1;94941:15;94968:183;95003:3;95041:1;95023:16;95020:23;95017:128;;;95079:1;95076;95073;95058:23;95101:34;95132:1;95126:8;95101:34;:::i;:::-;95094:41;;95017:128;94968:183;:::o;95157:117::-;95266:1;95263;95256:12;95280:117;95389:1;95386;95379:12;95403:117;95512:1;95509;95502:12;95526:117;95635:1;95632;95625:12;95649:117;95758:1;95755;95748:12;95772:117;95881:1;95878;95871:12;95895:117;96004:1;96001;95994:12;96018:117;96127:1;96124;96117:12;96141:102;96182:6;96233:2;96229:7;96224:2;96217:5;96213:14;96209:28;96199:38;;96141:102;;;:::o;96249:106::-;96293:8;96342:5;96337:3;96333:15;96312:36;;96249:106;;;:::o;96361:231::-;96501:34;96497:1;96489:6;96485:14;96478:58;96570:14;96565:2;96557:6;96553:15;96546:39;96361:231;:::o;96598:228::-;96738:34;96734:1;96726:6;96722:14;96715:58;96807:11;96802:2;96794:6;96790:15;96783:36;96598:228;:::o;96832:233::-;96972:34;96968:1;96960:6;96956:14;96949:58;97041:16;97036:2;97028:6;97024:15;97017:41;96832:233;:::o;97071:177::-;97211:29;97207:1;97199:6;97195:14;97188:53;97071:177;:::o;97254:236::-;97394:34;97390:1;97382:6;97378:14;97371:58;97463:19;97458:2;97450:6;97446:15;97439:44;97254:236;:::o;97496:231::-;97636:34;97632:1;97624:6;97620:14;97613:58;97705:14;97700:2;97692:6;97688:15;97681:39;97496:231;:::o;97733:232::-;97873:34;97869:1;97861:6;97857:14;97850:58;97942:15;97937:2;97929:6;97925:15;97918:40;97733:232;:::o;97971:234::-;98111:34;98107:1;98099:6;98095:14;98088:58;98180:17;98175:2;98167:6;98163:15;98156:42;97971:234;:::o;98211:::-;98351:34;98347:1;98339:6;98335:14;98328:58;98420:17;98415:2;98407:6;98403:15;98396:42;98211:234;:::o;98451:250::-;98591:34;98587:1;98579:6;98575:14;98568:58;98660:33;98655:2;98647:6;98643:15;98636:58;98451:250;:::o;98707:290::-;98847:34;98843:1;98835:6;98831:14;98824:58;98916:34;98911:2;98903:6;98899:15;98892:59;98985:4;98980:2;98972:6;98968:15;98961:29;98707:290;:::o;99003:229::-;99143:34;99139:1;99131:6;99127:14;99120:58;99212:12;99207:2;99199:6;99195:15;99188:37;99003:229;:::o;99238:232::-;99378:34;99374:1;99366:6;99362:14;99355:58;99447:15;99442:2;99434:6;99430:15;99423:40;99238:232;:::o;99476:245::-;99616:34;99612:1;99604:6;99600:14;99593:58;99685:28;99680:2;99672:6;99668:15;99661:53;99476:245;:::o;99727:239::-;99867:34;99863:1;99855:6;99851:14;99844:58;99936:22;99931:2;99923:6;99919:15;99912:47;99727:239;:::o;99972:230::-;100112:34;100108:1;100100:6;100096:14;100089:58;100181:13;100176:2;100168:6;100164:15;100157:38;99972:230;:::o;100208:233::-;100348:34;100344:1;100336:6;100332:14;100325:58;100417:16;100412:2;100404:6;100400:15;100393:41;100208:233;:::o;100447:234::-;100587:34;100583:1;100575:6;100571:14;100564:58;100656:17;100651:2;100643:6;100639:15;100632:42;100447:234;:::o;100687:236::-;100827:34;100823:1;100815:6;100811:14;100804:58;100896:19;100891:2;100883:6;100879:15;100872:44;100687:236;:::o;100929:711::-;100968:3;101006:4;100988:16;100985:26;100982:39;;;101014:5;;100982:39;101043:20;;:::i;:::-;101118:1;101100:16;101096:24;101093:1;101087:4;101072:49;101151:4;101145:11;101250:16;101243:4;101235:6;101231:17;101228:39;101195:18;101187:6;101184:30;101168:113;101165:146;;;101296:5;;;;101165:146;101342:6;101336:4;101332:17;101378:3;101372:10;101405:18;101397:6;101394:30;101391:43;;;101427:5;;;;;;101391:43;101475:6;101468:4;101463:3;101459:14;101455:27;101534:1;101516:16;101512:24;101506:4;101502:35;101497:3;101494:44;101491:57;;;101541:5;;;;;;;101491:57;101558;101606:6;101600:4;101596:17;101588:6;101584:30;101578:4;101558:57;:::i;:::-;101631:3;101624:10;;100972:668;;;;;100929:711;;:::o;101646:122::-;101734:3;101727:5;101724:14;101714:48;;101742:18;;:::i;:::-;101714:48;101646:122;:::o;101774:121::-;101863:1;101856:5;101853:12;101843:46;;101869:18;;:::i;:::-;101843:46;101774:121;:::o;101901:122::-;101974:24;101992:5;101974:24;:::i;:::-;101967:5;101964:35;101954:63;;102013:1;102010;102003:12;101954:63;101901:122;:::o;102029:116::-;102099:21;102114:5;102099:21;:::i;:::-;102092:5;102089:32;102079:60;;102135:1;102132;102125:12;102079:60;102029:116;:::o;102151:122::-;102224:24;102242:5;102224:24;:::i;:::-;102217:5;102214:35;102204:63;;102263:1;102260;102253:12;102204:63;102151:122;:::o;102279:168::-;102375:47;102416:5;102375:47;:::i;:::-;102368:5;102365:58;102355:86;;102437:1;102434;102427:12;102355:86;102279:168;:::o;102453:116::-;102541:3;102534:5;102531:14;102521:42;;102559:1;102556;102549:12;102521:42;102453:116;:::o;102575:120::-;102647:23;102664:5;102647:23;:::i;:::-;102640:5;102637:34;102627:62;;102685:1;102682;102675:12;102627:62;102575:120;:::o;102701:118::-;102772:22;102788:5;102772:22;:::i;:::-;102765:5;102762:33;102752:61;;102809:1;102806;102799:12;102752:61;102701:118;:::o;102825:122::-;102898:24;102916:5;102898:24;:::i;:::-;102891:5;102888:35;102878:63;;102937:1;102934;102927:12;102878:63;102825:122;:::o;102953:120::-;103025:23;103042:5;103025:23;:::i;:::-;103018:5;103015:34;103005:62;;103063:1;103060;103053:12;103005:62;102953:120;:::o;103079:::-;103151:23;103168:5;103151:23;:::i;:::-;103144:5;103141:34;103131:62;;103189:1;103186;103179:12;103131:62;103079:120;:::o;103205:118::-;103276:22;103292:5;103276:22;:::i;:::-;103269:5;103266:33;103256:61;;103313:1;103310;103303:12;103256:61;103205:118;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"6310800","executionCost":"infinite","totalCost":"infinite"},"external":{"":"581","asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","base()":"infinite","codehash()":"infinite","currency()":"infinite","deleteQuery(uint256)":"infinite","destruct()":"30066","estimateReward(uint256)":"infinite","getNextQueryId()":"infinite","getQueryData(uint256)":"infinite","getQueryStatus(uint256)":"infinite","initialize(bytes)":"infinite","isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"infinite","isReporter(address)":"2971","isUpgradable()":"infinite","isUpgradableFrom(address)":"infinite","owner()":"2675","postRequest(address)":"infinite","proxiableUUID()":"499","readRequest(uint256)":"infinite","readRequestBytecode(uint256)":"infinite","readRequestGasPrice(uint256)":"infinite","readRequestReward(uint256)":"infinite","readResponse(uint256)":"infinite","readResponseDrTxHash(uint256)":"infinite","readResponseReporter(uint256)":"infinite","readResponseResult(uint256)":"infinite","readResponseTimestamp(uint256)":"infinite","reportResult(uint256,bytes32,bytes)":"infinite","reportResult(uint256,uint256,bytes32,bytes)":"infinite","reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":"infinite","resultFromCborBytes(bytes)":"infinite","resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":"infinite","setReporters(address[])":"infinite","transferOwnership(address)":"infinite","unsetReporters(address[])":"infinite","upgradeReward(uint256)":"infinite","version()":"infinite"},"internal":{"_getGasPrice()":"22","_getMsgValue()":"22","_safeTransferTo(address payable,uint256)":"infinite"}},"methodIdentifiers":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d4ced132","asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c683b465","asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"cf62d115","asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"db04f16d","asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d74803be","asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2241f2db","asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"0f572d2c","asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2b905fbb","asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"07e66852","asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"b0768328","asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"109a0e3c","asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c87d969e","asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"bc7e25ff","asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"4dcffaf3","base()":"5001f3b5","codehash()":"a9e954b9","currency()":"e5a6b10f","deleteQuery(uint256)":"7c1fbda3","destruct()":"2b68b9c6","estimateReward(uint256)":"d2e87561","getNextQueryId()":"c805dd0f","getQueryData(uint256)":"c2485ebd","getQueryStatus(uint256)":"6f07abcc","initialize(bytes)":"439fab91","isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"7780cde1","isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"a8604c1a","isReporter(address)":"044ad7be","isUpgradable()":"5479d940","isUpgradableFrom(address)":"6b58960a","owner()":"8da5cb5b","postRequest(address)":"b281a7bd","proxiableUUID()":"52d1902d","readRequest(uint256)":"99f65804","readRequestBytecode(uint256)":"3b885f2a","readRequestGasPrice(uint256)":"3ae97295","readRequestReward(uint256)":"1dd27daf","readResponse(uint256)":"754e5bea","readResponseDrTxHash(uint256)":"dc3c71cd","readResponseReporter(uint256)":"9d96fced","readResponseResult(uint256)":"d4da69ac","readResponseTimestamp(uint256)":"20f9241e","reportResult(uint256,bytes32,bytes)":"6280bce8","reportResult(uint256,uint256,bytes32,bytes)":"c8f5cdd5","reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":"81a398b5","resultFromCborBytes(bytes)":"e99e47f3","resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":"2565082b","setReporters(address[])":"4c9f72e3","transferOwnership(address)":"f2fde38b","unsetReporters(address[])":"28a78d9b","upgradeReward(uint256)":"66bfdc75","version()":"54fd4d50"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bool\",\"name\":\"_upgradable\",\"type\":\"bool\"},{\"internalType\":\"bytes32\",\"name\":\"_versionTag\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"_reportResultGasLimit\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"reason\",\"type\":\"string\"}],\"name\":\"BatchReportError\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"DeletedQuery\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedResult\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"ReportersSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"ReportersUnset\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseAddr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"baseCodehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"versionTag\",\"type\":\"bytes32\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorCode\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorMessage\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asRawError\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"base\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"codehash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_codehash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"currency\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"deleteQuery\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"_response\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"destruct\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNextQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryData\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"request\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"response\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"internalType\":\"struct Witnet.Query\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryStatus\",\"outputs\":[{\"internalType\":\"enum Witnet.QueryStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_initData\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isError\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isOk\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_reporter\",\"type\":\"address\"}],\"name\":\"isReporter\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isUpgradable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"}],\"name\":\"isUpgradableFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"postRequest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequest\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"_request\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestBytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"_bytecode\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestGasPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponse\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"_response\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseDrTxHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseReporter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseResult\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitnetRequestBoardReporter.BatchResult[]\",\"name\":\"_batchResults\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"_verbose\",\"type\":\"bool\"}],\"name\":\"reportResultBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"resultFromCborBytes\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"resultFromCborValue\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_reporters\",\"type\":\"address[]\"}],\"name\":\"setReporters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"_exReporters\",\"type\":\"address[]\"}],\"name\":\"unsetReporters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"upgradeReward\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"author\":\"The Witnet Foundation\",\"details\":\"This contract enables posting requests that Witnet bridges will insert into the Witnet network. The result of the requests will be posted back to this contract by the bridge nodes too.\",\"kind\":\"dev\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bool` decoded from the Witnet.Result.\"}},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes` decoded from the Witnet.Result.\"}},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes32` decoded from the Witnet.Result.\"}},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `CBORValue.Error memory` decoded from the Witnet.Result.\"}},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\",\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\"}},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `uint64[]` raw error as decoded from the `Witnet.Result`.\"}},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string` decoded from the Witnet.Result.\"}},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string[]` decoded from the Witnet.Result.\"}},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64` decoded from the Witnet.Result.\"}},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64[]` decoded from the Witnet.Result.\"}},\"base()\":{\"details\":\"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\"},\"codehash()\":{\"details\":\"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\",\"returns\":{\"_codehash\":\"This contracts immutable codehash.\"}},\"deleteQuery(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"estimateReward(uint256)\":{\"params\":{\"_gasPrice\":\"The gas price for which we need to calculate the rewards.\"}},\"initialize(bytes)\":{\"details\":\"Must fail when trying to initialize same instance more than once.\"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if errored, `false` if successful.\"}},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if successful, `false` if errored.\"}},\"isReporter(address)\":{\"params\":{\"_reporter\":\"The address to be checked.\"}},\"isUpgradable()\":{\"details\":\"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling.\"},\"postRequest(address)\":{\"details\":\"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.\",\"params\":{\"_addr\":\"The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\"},\"returns\":{\"_queryId\":\"An unique query identifier.\"}},\"proxiableUUID()\":{\"details\":\"Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.      If implemented as an Upgradable touch, upgrading this contract to another one with a different       `proxiableUUID()` value should fail.\"},\"readRequest(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.\",\"params\":{\"_queryId\":\"The unique identifier of a previously posted query.\"}},\"readRequestBytecode(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readRequestGasPrice(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readRequestReward(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponse(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponseDrTxHash(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseReporter(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponseResult(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier\"}},\"readResponseTimestamp(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"reportResult(uint256,bytes32,bytes)\":{\"details\":\"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_cborBytes\":\"The result itself as bytes.\",\"_drTxHash\":\"The hash of the solving tally transaction in Witnet.\",\"_queryId\":\"The unique identifier of the data request.\"}},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"details\":\"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_cborBytes\":\"The result itself as bytes.\",\"_drTxHash\":\"The hash of the solving tally transaction in Witnet.\",\"_queryId\":\"The unique query identifier\",\"_timestamp\":\"The timestamp of the solving tally transaction in Witnet.\"}},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"details\":\"Fails if called from unauthorized address.Emits a PostedResult event for every succesfully reported result, if any.\",\"params\":{\"_batchResults\":\"Array of BatchedResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.\",\"_verbose\":\"If true, emits a BatchReportError event for every failing report, if any. \"}},\"resultFromCborBytes(bytes)\":{\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"setReporters(address[])\":{\"details\":\"Can only be called from the owner address.Emits the `ReportersSet` event. \",\"params\":{\"_reporters\":\"List of addresses to be added to the active reporters control list.\"}},\"unsetReporters(address[])\":{\"details\":\"Can only be called from the owner address.Emits the `ReportersUnset` event. \",\"params\":{\"_exReporters\":\"List of addresses to be added to the active reporters control list.\"}},\"upgradeReward(uint256)\":{\"details\":\"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}}},\"title\":\"Witnet Request Board \\\"trustable\\\" implementation contract.\",\"version\":1},\"userdoc\":{\"events\":{\"DeletedQuery(uint256,address)\":{\"notice\":\"Emitted when all data related to given query is deleted from the WRB.\"},\"PostedRequest(uint256,address)\":{\"notice\":\"Emitted when a Witnet Data Request is posted to the WRB.\"},\"PostedResult(uint256,address)\":{\"notice\":\"Emitted when a Witnet-solved result is reported to the WRB.\"},\"Upgraded(address,address,bytes32,bytes32)\":{\"notice\":\"Emitted every time the contract gets upgraded.\"}},\"kind\":\"user\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a boolean value from a Witnet.Result as an `bool` value.\"},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes` value.\"},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes32` value.\"},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\"},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\"},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\"},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\"},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a integer numeric value from a Witnet.Result as an `int128` value.\"},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\"},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\"},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a string value from a Witnet.Result as a `string` value.\"},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of string values from a Witnet.Result as a `string[]` value.\"},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\"},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\"},\"deleteQuery(uint256)\":{\"notice\":\"Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\"},\"destruct()\":{\"notice\":\"Destroys current instance. Only callable by the owner.\"},\"estimateReward(uint256)\":{\"notice\":\"Estimates the amount of reward we need to insert for a given gas price.\"},\"getNextQueryId()\":{\"notice\":\"Returns next request id to be generated by the Witnet Request Board.\"},\"getQueryData(uint256)\":{\"notice\":\"Gets the whole Query data contents, if any, no matter its current status.\"},\"getQueryStatus(uint256)\":{\"notice\":\"Gets current status of given query.\"},\"initialize(bytes)\":{\"notice\":\"Initialize storage-context when invoked as delegatecall. \"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is errored.\"},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is successful.\"},\"isReporter(address)\":{\"notice\":\"Tells whether given address is included in the active reporters control list.\"},\"isUpgradableFrom(address)\":{\"notice\":\"Tells whether provided address could eventually upgrade the contract.\"},\"owner()\":{\"notice\":\"Gets admin/owner address.\"},\"postRequest(address)\":{\"notice\":\"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request.\"},\"readRequest(uint256)\":{\"notice\":\"Retrieves the whole Request record posted to the Witnet Request Board.\"},\"readRequestBytecode(uint256)\":{\"notice\":\"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\"},\"readRequestGasPrice(uint256)\":{\"notice\":\"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request.\"},\"readRequestReward(uint256)\":{\"notice\":\"Retrieves the reward currently set for a previously posted request.\"},\"readResponse(uint256)\":{\"notice\":\"Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \"},\"readResponseDrTxHash(uint256)\":{\"notice\":\"Retrieves the hash of the Witnet transaction that actually solved the referred query.\"},\"readResponseReporter(uint256)\":{\"notice\":\"Retrieves the address that reported the result to a previously-posted request.\"},\"readResponseResult(uint256)\":{\"notice\":\"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\"},\"readResponseTimestamp(uint256)\":{\"notice\":\"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\"},\"reportResult(uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request. \"},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request.\"},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"notice\":\"Reports Witnet-provided results to multiple requests within a single EVM tx.\"},\"resultFromCborBytes(bytes)\":{\"notice\":\"Decode raw CBOR bytes into a Witnet.Result instance.\"},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Decode a CBOR value into a Witnet.Result instance.\"},\"setReporters(address[])\":{\"notice\":\"Adds given addresses to the active reporters control list.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership.\"},\"unsetReporters(address[])\":{\"notice\":\"Removes given addresses from the active reporters control list.\"},\"upgradeReward(uint256)\":{\"notice\":\"Increments the reward of a previously posted request by adding the transaction value to it.\"},\"version()\":{\"notice\":\"Retrieves human-readable version tag of current implementation.\"}},\"notice\":\"Contract to bridge requests to Witnet Decentralized Oracle Network.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\":\"WitnetRequestBoardTrustableDefault\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardData.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board base data model. \\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardData {  \\n\\n    bytes32 internal constant _WITNET_BOARD_DATA_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data\\\") */\\n        0xf595240b351bc8f951c2f53b26f4e78c32cb62122cf76c19b7fdda7d4968e183;\\n\\n    struct WitnetBoardState {\\n        address base;\\n        address owner;    \\n        uint256 numQueries;\\n        mapping (uint => Witnet.Query) queries;\\n    }\\n\\n    constructor() {\\n        _state().owner = msg.sender;\\n    }\\n\\n    /// Asserts the given query is currently in the given status.\\n    modifier inStatus(uint256 _queryId, Witnet.QueryStatus _status) {\\n      require(\\n          _getQueryStatus(_queryId) == _status,\\n          _getQueryStatusRevertMessage(_status)\\n        );\\n      _;\\n    }\\n\\n    /// Asserts the given query was previously posted and that it was not yet deleted.\\n    modifier notDeleted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        require(_getRequester(_queryId) != address(0), \\\"WitnetBoardData: deleted\\\");\\n        _;\\n    }\\n\\n    /// Asserts caller corresponds to the current owner. \\n    modifier onlyOwner {\\n        require(msg.sender == _state().owner, \\\"WitnetBoardData: only owner\\\");\\n        _;    \\n    }\\n\\n    /// Asserts the give query was actually posted before calling this method.\\n    modifier wasPosted(uint256 _queryId) {\\n        require(_queryId > 0 && _queryId <= _state().numQueries, \\\"WitnetBoardData: not yet posted\\\");\\n        _;\\n    }\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    /// Gets current status of given query.\\n    function _getQueryStatus(uint256 _queryId)\\n      internal view\\n      returns (Witnet.QueryStatus)\\n    {\\n      if (_queryId == 0 || _queryId > _state().numQueries) {\\n        // \\\"Unknown\\\" status if queryId is out of range:\\n        return Witnet.QueryStatus.Unknown;\\n      }\\n      else {\\n        Witnet.Query storage _query = _state().queries[_queryId];\\n        if (_query.response.drTxHash != 0) {\\n          // Query is in \\\"Reported\\\" status as soon as the hash of the\\n          // Witnet transaction that solved the query is reported\\n          // back from a Witnet bridge:\\n          return Witnet.QueryStatus.Reported;\\n        }\\n        else if (_query.from != address(0)) {\\n          // Otherwise, while address from which the query was posted\\n          // is kept in storage, the query remains in \\\"Posted\\\" status:\\n          return Witnet.QueryStatus.Posted;\\n        }\\n        else {\\n          // Requester's address is removed from storage only if\\n          // the query gets \\\"Deleted\\\" by its requester.\\n          return Witnet.QueryStatus.Deleted;\\n        }\\n      }\\n    }\\n\\n    function _getQueryStatusRevertMessage(Witnet.QueryStatus _status)\\n      internal pure\\n      returns (string memory)\\n    {\\n      if (_status == Witnet.QueryStatus.Posted) {\\n        return \\\"WitnetBoardData: not in Posted status\\\";\\n      } else if (_status == Witnet.QueryStatus.Reported) {\\n        return \\\"WitnetBoardData: not in Reported status\\\";\\n      } else if (_status == Witnet.QueryStatus.Deleted) {\\n        return \\\"WitnetBoardData: not in Deleted status\\\";\\n      } else {\\n        return \\\"WitnetBoardData: bad mood\\\";\\n      }\\n    }\\n\\n    /// Gets from of a given query.\\n    function _getRequester(uint256 _queryId)\\n      internal view\\n      returns (address)\\n    {\\n      return _state().queries[_queryId].from;\\n    }\\n\\n    /// Gets the Witnet.Request part of a given query.\\n    function _getRequestData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Request storage)\\n    {\\n        return _state().queries[_queryId].request;\\n    }\\n\\n    /// Gets the Witnet.Result part of a given query.\\n    function _getResponseData(uint256 _queryId)\\n      internal view\\n      returns (Witnet.Response storage)\\n    {\\n        return _state().queries[_queryId].response;\\n    }\\n\\n    /// Returns storage pointer to contents of 'WitnetBoardState' struct.\\n    function _state()\\n      internal pure\\n      returns (WitnetBoardState storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot := _WITNET_BOARD_DATA_SLOTHASH\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0c78c9981103e9ed35ace4e5f886a848f9dfe2aa26928adc0d37dabeff6a19db\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/data/WitnetBoardDataACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetBoardData.sol\\\";\\n\\n/// @title Witnet Access Control Lists storage layout, for Witnet-trusted request boards.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetBoardDataACLs\\n    is\\n        WitnetBoardData\\n{\\n    bytes32 internal constant _WITNET_BOARD_ACLS_SLOTHASH =\\n        /* keccak256(\\\"io.witnet.boards.data.acls\\\") */\\n        0xa6db7263983f337bae2c9fb315730227961d1c1153ae1e10a56b5791465dd6fd;\\n\\n    struct WitnetBoardACLs {\\n        mapping (address => bool) isReporter_;\\n    }\\n\\n    constructor() {\\n        _acls().isReporter_[msg.sender] = true;\\n    }\\n\\n    modifier onlyReporters {\\n        require(\\n            _acls().isReporter_[msg.sender],\\n            \\\"WitnetBoardDataACLs: unauthorized reporter\\\"\\n        );\\n        _;\\n    } \\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function _acls() internal pure returns (WitnetBoardACLs storage _struct) {\\n        assembly {\\n            _struct.slot := _WITNET_BOARD_ACLS_SLOTHASH\\n        }\\n    }\\n}\\n\",\"keccak256\":\"0x558f28fc690d2f7180da9393bc49083da4857aa8480f044f68355a61ebf21257\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetProxy.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n/// @title WitnetProxy: upgradable delegate-proxy contract that routes Witnet data requests coming from a \\n/// `UsingWitnet`-inheriting contract to a currently active `WitnetRequestBoard` implementation. \\n/// @author The Witnet Foundation.\\ncontract WitnetProxy {\\n\\n    struct WitnetProxySlot {\\n        address implementation;\\n    }\\n\\n    /// Event emitted every time the implementation gets updated.\\n    event Upgraded(address indexed implementation);  \\n\\n    /// Constructor with no params as to ease eventual support of Singleton pattern (i.e. ERC-2470).\\n    constructor () {}\\n\\n    /// WitnetProxies will never accept direct transfer of ETHs.\\n    receive() external payable {\\n        revert(\\\"WitnetProxy: no transfers accepted\\\");\\n    }\\n\\n    /// Payable fallback accepts delegating calls to payable functions.  \\n    fallback() external payable { /* solhint-disable no-complex-fallback */\\n        address _implementation = implementation();\\n\\n        assembly { /* solhint-disable avoid-low-level-calls */\\n            // Gas optimized delegate call to 'implementation' contract.\\n            // Note: `msg.data`, `msg.sender` and `msg.value` will be passed over \\n            //       to actual implementation of `msg.sig` within `implementation` contract.\\n            let ptr := mload(0x40)\\n            calldatacopy(ptr, 0, calldatasize())\\n            let result := delegatecall(gas(), _implementation, ptr, calldatasize(), 0, 0)\\n            let size := returndatasize()\\n            returndatacopy(ptr, 0, size)\\n            switch result\\n                case 0  { \\n                    // pass back revert message:\\n                    revert(ptr, size) \\n                }\\n                default {\\n                  // pass back same data as returned by 'implementation' contract:\\n                  return(ptr, size) \\n                }\\n        }\\n    }\\n\\n    /// Returns proxy's current implementation address.\\n    function implementation() public view returns (address) {\\n        return _proxySlot().implementation;\\n    }\\n\\n    /// Upgrades the `implementation` address.\\n    /// @param _newImplementation New implementation address.\\n    /// @param _initData Raw data with which new implementation will be initialized.\\n    /// @return Returns whether new implementation would be further upgradable, or not.\\n    function upgradeTo(address _newImplementation, bytes memory _initData)\\n        public returns (bool)\\n    {\\n        // New implementation cannot be null:\\n        require(_newImplementation != address(0), \\\"WitnetProxy: null implementation\\\");\\n\\n        address _oldImplementation = implementation();\\n        if (_oldImplementation != address(0)) {\\n            // New implementation address must differ from current one:\\n            require(_newImplementation != _oldImplementation, \\\"WitnetProxy: nothing to upgrade\\\");\\n\\n            // Assert whether current implementation is intrinsically upgradable:\\n            try Upgradable(_oldImplementation).isUpgradable() returns (bool _isUpgradable) {\\n                require(_isUpgradable, \\\"WitnetProxy: not upgradable\\\");\\n            } catch {\\n                revert(\\\"WitnetProxy: unable to check upgradability\\\");\\n            }\\n\\n            // Assert whether current implementation allows `msg.sender` to upgrade the proxy:\\n            (bool _wasCalled, bytes memory _result) = _oldImplementation.delegatecall(\\n                abi.encodeWithSignature(\\n                    \\\"isUpgradableFrom(address)\\\",\\n                    msg.sender\\n                )\\n            );\\n            require(_wasCalled, \\\"WitnetProxy: not compliant\\\");\\n            require(abi.decode(_result, (bool)), \\\"WitnetProxy: not authorized\\\");\\n            require(\\n                Upgradable(_oldImplementation).proxiableUUID() == Upgradable(_newImplementation).proxiableUUID(),\\n                \\\"WitnetProxy: proxiableUUIDs mismatch\\\"\\n            );\\n        }\\n\\n        // Initialize new implementation within proxy-context storage:\\n        (bool _wasInitialized,) = _newImplementation.delegatecall(\\n            abi.encodeWithSignature(\\n                \\\"initialize(bytes)\\\",\\n                _initData\\n            )\\n        );\\n        require(_wasInitialized, \\\"WitnetProxy: unable to initialize\\\");\\n\\n        // If all checks and initialization pass, update implementation address:\\n        _proxySlot().implementation = _newImplementation;\\n        emit Upgraded(_newImplementation);\\n\\n        // Asserts new implementation complies w/ minimal implementation of Upgradable interface:\\n        try Upgradable(_newImplementation).isUpgradable() returns (bool _isUpgradable) {\\n            return _isUpgradable;\\n        }\\n        catch {\\n            revert (\\\"WitnetProxy: not compliant\\\");\\n        }\\n    }\\n\\n    /// @dev Complying with EIP-1967, retrieves storage struct containing proxy's current implementation address.\\n    function _proxySlot() private pure returns (WitnetProxySlot storage _slot) {\\n        assembly {\\n            // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)\\n            _slot.slot := 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc\\n        }\\n    }\\n\\n}\\n\",\"keccak256\":\"0xcfdb698b63b9300631b046ecd8e16dbff90e8b4e84fdf1d629195ad17c8234d0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/WitnetRequestBoardUpgradableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\n/* solhint-disable var-name-mixedcase */\\n\\n// Inherits from:\\nimport \\\"../WitnetRequestBoard.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\nimport \\\"../patterns/Upgradable.sol\\\";\\n\\n// Eventual deployment dependencies:\\nimport \\\"./WitnetProxy.sol\\\";\\n\\n/// @title Witnet Request Board base contract, with an Upgradable (and Destructible) touch.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoardUpgradableBase\\n    is\\n        Proxiable,\\n        Upgradable,\\n        WitnetRequestBoard\\n{\\n    bytes32 internal immutable _VERSION;\\n\\n    constructor(\\n            bool _upgradable,\\n            bytes32 _versionTag\\n        )\\n        Upgradable(_upgradable)\\n    {\\n        _VERSION = _versionTag;\\n    }\\n\\n    /// @dev Reverts if proxy delegatecalls to unexistent method.\\n    fallback() external payable {\\n        revert(\\\"WitnetRequestBoardUpgradableBase: not implemented\\\");\\n    }\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Proxiable' --------------------------------------------------------------------------------------\\n\\n    /// @dev Gets immutable \\\"heritage blood line\\\" (ie. genotype) as a Proxiable, and eventually Upgradable, contract.\\n    ///      If implemented as an Upgradable touch, upgrading this contract to another one with a different \\n    ///      `proxiableUUID()` value should fail.\\n    function proxiableUUID() external pure override returns (bytes32) {\\n        return (\\n            /* keccak256(\\\"io.witnet.proxiable.board\\\") */\\n            0x9969c6aff411c5e5f0807500693e8f819ce88529615cfa6cab569b24788a1018\\n        );\\n    }   \\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' --------------------------------------------------------------------------------------\\n\\n    /// Retrieves human-readable version tag of current implementation.\\n    function version() public view override returns (bytes32) {\\n        return _VERSION;\\n    }\\n\\n}\\n\",\"keccak256\":\"0x0930557dfafb03730e716e0af67ba7637a562f304ead6f2cedfa2c0eee91a65c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../WitnetRequestBoardUpgradableBase.sol\\\";\\nimport \\\"../../data/WitnetBoardDataACLs.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdmin.sol\\\";\\nimport \\\"../../interfaces/IWitnetRequestBoardAdminACLs.sol\\\";\\nimport \\\"../../libs/WitnetParserLib.sol\\\";\\nimport \\\"../../patterns/Payable.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" base implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\nabstract contract WitnetRequestBoardTrustableBase\\n    is \\n        Payable,\\n        IWitnetRequestBoardAdmin,\\n        IWitnetRequestBoardAdminACLs,        \\n        WitnetBoardDataACLs,\\n        WitnetRequestBoardUpgradableBase        \\n{\\n    using Witnet for bytes;\\n    using WitnetParserLib for Witnet.Result;\\n    \\n    constructor(bool _upgradable, bytes32 _versionTag, address _currency)\\n        Payable(_currency)\\n        WitnetRequestBoardUpgradableBase(_upgradable, _versionTag)\\n    {}\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Upgradable' -------------------------------------------------------------------------------------\\n\\n    /// Initialize storage-context when invoked as delegatecall. \\n    /// @dev Must fail when trying to initialize same instance more than once.\\n    function initialize(bytes memory _initData) virtual external override {\\n        address _owner = _state().owner;\\n        if (_owner == address(0)) {\\n            // set owner if none set yet\\n            _owner = msg.sender;\\n            _state().owner = _owner;\\n        } else {\\n            // only owner can initialize:\\n            require(msg.sender == _owner, \\\"WitnetRequestBoardTrustableBase: only owner\\\");\\n        }        \\n\\n        if (_state().base != address(0)) {\\n            // current implementation cannot be initialized more than once:\\n            require(_state().base != base(), \\\"WitnetRequestBoardTrustableBase: already initialized\\\");\\n        }        \\n        _state().base = base();\\n\\n        emit Upgraded(msg.sender, base(), codehash(), version());\\n\\n        // Do actual base initialization:\\n        setReporters(abi.decode(_initData, (address[])));\\n    }\\n\\n    /// Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address _from) external view override returns (bool) {\\n        address _owner = _state().owner;\\n        return (\\n            // false if the WRB is intrinsically not upgradable, or `_from` is no owner\\n            isUpgradable()\\n                && _owner == _from\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdmin' ----------------------------------------------------------\\n\\n    /// Gets admin/owner address.\\n    function owner()\\n        public view\\n        override\\n        returns (address)\\n    {\\n        return _state().owner;\\n    }\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address _newOwner)\\n        external\\n        virtual override\\n        onlyOwner\\n    {\\n        address _owner = _state().owner;\\n        if (_newOwner != _owner) {\\n            _state().owner = _newOwner;\\n            emit OwnershipTransferred(_owner, _newOwner);\\n        }\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardAdminACLs' ------------------------------------------------------\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    /// @param _reporter The address to be checked.\\n    function isReporter(address _reporter) public view override returns (bool) {\\n        return _acls().isReporter_[_reporter];\\n    }\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    /// @param _reporters List of addresses to be added to the active reporters control list.\\n    function setReporters(address[] memory _reporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _reporters.length; ix ++) {\\n            address _reporter = _reporters[ix];\\n            _acls().isReporter_[_reporter] = true;\\n        }\\n        emit ReportersSet(_reporters);\\n    }\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    /// @param _exReporters List of addresses to be added to the active reporters control list.\\n    function unsetReporters(address[] memory _exReporters)\\n        public\\n        override\\n        onlyOwner\\n    {\\n        for (uint ix = 0; ix < _exReporters.length; ix ++) {\\n            address _reporter = _exReporters[ix];\\n            _acls().isReporter_[_reporter] = false;\\n        }\\n        emit ReportersUnset(_exReporters);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardReporter' -------------------------------------------------------\\n\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        // solhint-disable not-rely-on-time\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                block.timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the solving tally transaction in Witnet.\\n    /// @param _cborBytes The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _cborBytes\\n        )\\n        external\\n        override\\n        onlyReporters\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        require(_timestamp <= block.timestamp, \\\"WitnetRequestBoardTrustableDefault: bad timestamp\\\");\\n        require(_drTxHash != 0, \\\"WitnetRequestBoardTrustableDefault: Witnet drTxHash cannot be zero\\\");\\n        // Ensures the result bytes do not have zero length\\n        // This would not be a valid encoding with CBOR and could trigger a reentrancy attack\\n        require(_cborBytes.length != 0, \\\"WitnetRequestBoardTrustableDefault: result cannot be empty\\\");\\n        _safeTransferTo(\\n            payable(msg.sender),\\n            __reportResult(\\n                _queryId,\\n                _timestamp,\\n                _drTxHash,\\n                _cborBytes\\n            )\\n        );\\n        emit PostedResult(_queryId, msg.sender);\\n    }\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Fails if called from unauthorized address.\\n    /// @dev Emits a PostedResult event for every succesfully reported result, if any.\\n    /// @param _batchResults Array of BatchedResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, emits a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(\\n            BatchResult[] memory _batchResults,\\n            bool _verbose\\n        )\\n        external\\n        override\\n        onlyReporters\\n    {\\n        uint _batchReward;\\n        uint _batchSize = _batchResults.length;\\n        for ( uint _i = 0; _i < _batchSize; _i ++) {\\n            BatchResult memory _result = _batchResults[_i];\\n            if (_getQueryStatus(_result.queryId) != Witnet.QueryStatus.Posted) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad queryId\\\"\\n                    );\\n                }\\n            } else if (_result.drTxHash == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad drTxHash\\\"\\n                    );\\n                }\\n            } else if (_result.cborBytes.length == 0) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId, \\n                        \\\"WitnetRequestBoardTrustableBase: bad cborBytes\\\"\\n                    );\\n                }\\n            } else if (_result.timestamp > 0 && _result.timestamp > block.timestamp) {\\n                if (_verbose) {\\n                    emit BatchReportError(\\n                        _result.queryId,\\n                        \\\"WitnetRequestBoardTrustableBase: bad timestamp\\\"\\n                    );\\n                }\\n            } else {\\n                _batchReward += __reportResult(\\n                    _result.queryId,\\n                    _result.timestamp == 0 ? block.timestamp : _result.timestamp,\\n                    _result.drTxHash,\\n                    _result.cborBytes\\n                );\\n                emit PostedResult(\\n                    _result.queryId,\\n                    msg.sender\\n                );\\n            }\\n        }   \\n        // Transfer all successful rewards in one single shot to the authorized reporter, if any:\\n        if (_batchReward > 0) {\\n            _safeTransferTo(\\n                payable(msg.sender),\\n                _batchReward\\n            );\\n        }\\n    }\\n    \\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardRequestor' ------------------------------------------------------\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId)\\n        public\\n        virtual override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        require(\\n            msg.sender == __query.from,\\n            \\\"WitnetRequestBoardTrustableBase: only requester\\\"\\n        );\\n        _response = __query.response;\\n        delete _state().queries[_queryId];\\n        emit DeletedQuery(_queryId, msg.sender);\\n    }\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of a IWitnetRequest contract, containing the actual Data Request seralized bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr)\\n        public payable\\n        virtual override\\n        returns (uint256 _queryId)\\n    {\\n        uint256 _value = _getMsgValue();\\n        uint256 _gasPrice = _getGasPrice();\\n\\n        // Checks the tally reward is covering gas cost\\n        uint256 minResultReward = estimateReward(_gasPrice);\\n        require(_value >= minResultReward, \\\"WitnetRequestBoardTrustableBase: reward too low\\\");\\n\\n        // Validates provided script:\\n        require(address(_addr) != address(0), \\\"WitnetRequestBoardTrustableBase: null script\\\");\\n        bytes memory _bytecode = _addr.bytecode();\\n        require(_bytecode.length > 0, \\\"WitnetRequestBoardTrustableBase: empty script\\\");\\n\\n        _queryId = ++ _state().numQueries;\\n        _state().queries[_queryId].from = msg.sender;\\n\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        _request.addr = _addr;\\n        _request.hash = _bytecode.hash();\\n        _request.gasprice = _gasPrice;\\n        _request.reward = _value;\\n\\n        // Let observers know that a new request has been posted\\n        emit PostedRequest(_queryId, msg.sender);\\n    }\\n    \\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId)\\n        public payable\\n        virtual override      \\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n    {\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n\\n        uint256 _newReward = _request.reward + _getMsgValue();\\n        uint256 _newGasPrice = _getGasPrice();\\n\\n        // If gas price is increased, then check if new rewards cover gas costs\\n        if (_newGasPrice > _request.gasprice) {\\n            // Checks the reward is covering gas cost\\n            uint256 _minResultReward = estimateReward(_newGasPrice);\\n            require(\\n                _newReward >= _minResultReward,\\n                \\\"WitnetRequestBoardTrustableBase: reward too low\\\"\\n            );\\n            _request.gasprice = _newGasPrice;\\n        }\\n        _request.reward = _newReward;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestBoardView' -----------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256);\\n\\n    /// Returns next request id to be generated by the Witnet Request Board.\\n    function getNextQueryId()\\n        external view \\n        override\\n        returns (uint256)\\n    {\\n        return _state().numQueries + 1;\\n    }\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId)\\n      external view\\n      override\\n      returns (Witnet.Query memory)\\n    {\\n        return _state().queries[_queryId];\\n    }\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId)\\n        external view\\n        override\\n        returns (Witnet.QueryStatus)\\n    {\\n        return _getQueryStatus(_queryId);\\n\\n    }\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (Witnet.Request memory _request)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        _request = __query.request;\\n        if (__query.from != address(0)) {\\n            _request.requester = __query.from;\\n        }\\n    }\\n    \\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId)\\n        external view\\n        override\\n        returns (bytes memory _bytecode)\\n    {\\n        require(\\n            _getQueryStatus(_queryId) != Witnet.QueryStatus.Unknown,\\n            \\\"WitnetRequestBoardTrustableBase: not yet posted\\\"\\n        );\\n        Witnet.Request storage _request = _getRequestData(_queryId);\\n        if (address(_request.addr) != address(0)) {\\n            // if DR's request contract address is not zero,\\n            // we assume the DR has not been deleted, so\\n            // DR's bytecode can still be fetched:\\n            _bytecode = _request.addr.bytecode();\\n            require(\\n                _bytecode.hash() == _request.hash,\\n                \\\"WitnetRequestBoardTrustableBase: bytecode changed after posting\\\"\\n            );\\n        } \\n    }\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestGasPrice(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.gasprice;\\n    }\\n\\n    /// Retrieves the reward currently set for a previously posted request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier\\n    function readRequestReward(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Posted)\\n        returns (uint256)\\n    {\\n        return _state().queries[_queryId].request.reward;\\n    }\\n\\n    /// Retrieves the Witnet-provided result, and metadata, to a previously posted request.    \\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponse(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Response memory _response)\\n    {\\n        return _getResponseData(_queryId);\\n    }\\n\\n    /// Retrieves the hash of the Witnet transaction that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId)\\n        external view        \\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (bytes32)\\n    {\\n        return _getResponseData(_queryId).drTxHash;\\n    }\\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseReporter(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (address)\\n    {\\n        return _getResponseData(_queryId).reporter;\\n    }\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier\\n    function readResponseResult(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.Response storage _response = _getResponseData(_queryId);\\n        return WitnetParserLib.resultFromCborBytes(_response.cborBytes);\\n    }\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId)\\n        external view\\n        override\\n        inStatus(_queryId, Witnet.QueryStatus.Reported)\\n        returns (uint256)\\n    {\\n        return _getResponseData(_queryId).timestamp;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Full implementation of 'IWitnetRequestParser' interface ----------------------------------------------------\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborBytes(_cborBytes);\\n    }\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        external pure\\n        override\\n        returns (Witnet.Result memory)\\n    {\\n        return WitnetParserLib.resultFromCborValue(_cborValue);\\n    }\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isOk();\\n    }\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.isError();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes memory)\\n    {\\n        return _result.asBytes();\\n    }\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bytes32)\\n    {\\n        return _result.asBytes32();\\n    }\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return _result.asErrorCode();\\n    }\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (Witnet.ErrorCodes, string memory)\\n    {\\n        try _result.asErrorMessage() returns (Witnet.ErrorCodes _code, string memory _message) {\\n            return (_code, _message);\\n        } \\n        catch Error(string memory _reason) {\\n            return (Witnet.ErrorCodes.Unknown, _reason);\\n        }\\n        catch (bytes memory) {\\n            return (Witnet.ErrorCodes.UnhandledIntercept, \\\"WitnetRequestBoardTrustableBase: failing assert\\\");\\n        }\\n    }\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns(uint64[] memory)\\n    {\\n        return _result.asRawError();\\n    }\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (bool)\\n    {\\n        return _result.asBool();\\n    }\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32)\\n    {\\n        return _result.asFixed16();\\n    }\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int32[] memory)\\n    {\\n        return _result.asFixed16Array();\\n    }\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128)\\n    {\\n        return _result.asInt128();\\n    }\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (int128[] memory)\\n    {\\n        return _result.asInt128Array();\\n    }\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string memory)\\n    {\\n        return _result.asString();\\n    }\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (string[] memory)\\n    {\\n        return _result.asStringArray();\\n    }\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure \\n        override\\n        returns(uint64)\\n    {\\n        return _result.asUint64();\\n    }\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        override\\n        returns (uint64[] memory)\\n    {\\n        return _result.asUint64Array();\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Internal functions -----------------------------------------------------------------------------------------\\n\\n    function __reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes memory _cborBytes\\n        )\\n        internal\\n        returns (uint256 _reward)\\n    {\\n        Witnet.Query storage __query = _state().queries[_queryId];\\n        Witnet.Request storage __request = __query.request;\\n        Witnet.Response storage __response = __query.response;\\n\\n        // solhint-disable not-rely-on-time\\n        __response.timestamp = _timestamp;\\n        __response.drTxHash = _drTxHash;\\n        __response.reporter = msg.sender;\\n        __response.cborBytes = _cborBytes;\\n\\n        // return request latest reward\\n        _reward = __request.reward;\\n\\n        // Request data won't be needed anymore, so it can just get deleted right now:  \\n        delete __query.request;\\n    }\\n}\\n\",\"keccak256\":\"0x6b6ccba7e686a69bf0847b9c541e3997f14f3f91246c63fbadd412ba78c4a8d4\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/impls/trustable/WitnetRequestBoardTrustableDefault.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetRequestBoardTrustableBase.sol\\\";\\nimport \\\"../../patterns/Destructible.sol\\\";\\n\\n/// @title Witnet Request Board \\\"trustable\\\" implementation contract.\\n/// @notice Contract to bridge requests to Witnet Decentralized Oracle Network.\\n/// @dev This contract enables posting requests that Witnet bridges will insert into the Witnet network.\\n/// The result of the requests will be posted back to this contract by the bridge nodes too.\\n/// @author The Witnet Foundation\\ncontract WitnetRequestBoardTrustableDefault\\n    is \\n        Destructible,\\n        WitnetRequestBoardTrustableBase\\n{  \\n    uint256 internal immutable _ESTIMATED_REPORT_RESULT_GAS;\\n\\n    constructor(\\n        bool _upgradable,\\n        bytes32 _versionTag,\\n        uint256 _reportResultGasLimit\\n    )\\n        WitnetRequestBoardTrustableBase(_upgradable, _versionTag, address(0))\\n    {\\n        _ESTIMATED_REPORT_RESULT_GAS = _reportResultGasLimit;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides implementation of 'IWitnetRequestBoardView' ------------------------------------------------------\\n\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return _gasPrice * _ESTIMATED_REPORT_RESULT_GAS;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Destructible' -----------------------------------------------------------------------------------\\n\\n    /// Destroys current instance. Only callable by the owner.\\n    function destruct() external override onlyOwner {\\n        selfdestruct(payable(msg.sender));\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- Overrides 'Payable' ----------------------------------------------------------------------------------------\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice()\\n        internal view\\n        override\\n        returns (uint256)\\n    {\\n        return tx.gasprice;\\n    }\\n\\n    /// Gets current payment value.\\n    function _getMsgValue()\\n        internal view\\n        override\\n        returns (uint256)\\n    {\\n        return msg.value;\\n    }\\n\\n    /// Transfers ETHs to given address.\\n    /// @param _to Recipient address.\\n    /// @param _amount Amount of ETHs to transfer.\\n    function _safeTransferTo(address payable _to, uint256 _amount)\\n        internal\\n        override\\n    {\\n        payable(_to).transfer(_amount);\\n    }   \\n}\\n\",\"keccak256\":\"0xc89e1a65e9045323dda045c8552adc0a329697e2f144911b4059c68673999f9c\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC20 standard as defined in the EIP.\\n */\\ninterface IERC20 {\\n    /// Returns the amount of tokens in existence.\\n    function totalSupply() external view returns (uint256);\\n\\n    /// Returns the amount of tokens owned by `_account`.\\n    function balanceOf(address _account) external view returns (uint256);\\n\\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event.\\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\\n\\n    /// Returns the remaining number of tokens that `_spender` will be\\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\\n    /// zero by default.\\n    /// This value changes when {approve} or {transferFrom} are called.\\n    function allowance(address _owner, address _spender) external view returns (uint256);\\n\\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// \\n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\\n    /// that someone may use both the old and the new allowance by unfortunate\\n    /// transaction ordering. One possible solution to mitigate this race\\n    /// condition is to first reduce the spender's allowance to 0 and set the\\n    /// desired value afterwards:\\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\\n    ///\\n    /// Emits an {Approval} event.     \\n    function approve(address _spender, uint256 _amount) external returns (bool);\\n\\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\\n    /// allowance mechanism. `amount` is then deducted from the caller's\\n    /// allowance.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event. \\n    function transferFrom(\\n        address _sender,\\n        address _recipient,\\n        uint256 _amount\\n    ) external returns (bool);\\n\\n    /// Emitted when `value` tokens are moved from one account (`from`) to\\n    /// another (`to`).\\n    /// Note that `:value` may be zero.\\n    event Transfer(address indexed from, address indexed to, uint256 value);\\n\\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\\n    /// a call to {approve}. `value` is the new allowance.\\n    event Approval(address indexed owner, address indexed spender, uint256 value);\\n}\\n\",\"keccak256\":\"0xd6b25613fab1f6172ca58e377371a0b708f1af8982961364fecf9da196213f48\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board basic administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdmin {\\n    event OwnershipTransferred(address indexed from, address indexed to);\\n\\n    /// Gets admin/owner address.\\n    function owner() external view returns (address);\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address) external;\\n}\\n\",\"keccak256\":\"0xa88e828c55cb4e2c1ef02c9204e367d3034fc2e35cc881581d898942b9715d50\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board ACLs administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdminACLs {\\n    event ReportersSet(address[] reporters);\\n    event ReportersUnset(address[] reporters);\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    function isReporter(address) external view returns (bool);\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    function setReporters(address[] calldata reporters) external;\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    function unsetReporters(address[] calldata reporters) external;\\n}\\n\",\"keccak256\":\"0xafcd6f01a977d597032b341fec291ea7e26b1dac3eb13eced8b37d89eb76e4ff\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetBuffer.sol\\\";\\n\\n/// @title A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\\n/// the gas cost of decoding them into a useful native type.\\n/// @dev Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\\n/// @author The Witnet Foundation.\\n/// \\n/// TODO: add support for Array (majorType = 4)\\n/// TODO: add support for Map (majorType = 5)\\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \\n\\nlibrary WitnetDecoderLib {\\n\\n  using WitnetBuffer for Witnet.Buffer;\\n\\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bool` value.\\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\\\");\\n    if (_cborValue.len == 20) {\\n      return false;\\n    } else if (_cborValue.len == 21) {\\n      return true;\\n    } else {\\n      revert(\\\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\\\");\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bytes` value.   \\n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT32_MAX) {\\n      bytes memory bytesData;\\n\\n      // These checks look repetitive but the equivalent loop would be more expensive.\\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n      if (itemLength < _UINT32_MAX) {\\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n        if (itemLength < _UINT32_MAX) {\\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        }\\n      }\\n      return bytesData;\\n    } else {\\n      return _cborValue.buffer.read(uint32(_cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\\n    bytes memory _bb = decodeBytes(_cborValue);\\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\\n    for (uint _i = 0; _i < _len; _i ++) {\\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\\\");\\n    require(_cborValue.additionalInformation == 25, \\\"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\\\");\\n    return _cborValue.buffer.readFloat16();\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\\n  /// as explained in `decodeFixed16`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int32[] memory array = new int32[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeFixed16(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\\n    if (_cborValue.majorType == 1) {\\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n      return int128(-1) - int128(uint128(length));\\n    } else if (_cborValue.majorType == 0) {\\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\\n      // a uniform API for positive and negative numbers\\n      return int128(uint128(decodeUint64(_cborValue)));\\n    }\\n    revert(\\\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\\\");\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int128[] memory array = new int128[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeInt128(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `string` value.\\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT64_MAX) {\\n      bytes memory textData;\\n      bool done;\\n      while (!done) {\\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\\n        if (itemLength < _UINT64_MAX) {\\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\\n        } else {\\n          done = true;\\n        }\\n      }\\n      return string(textData);\\n    } else {\\n      return string(readText(_cborValue.buffer, _cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `string[]` value.\\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    string[] memory array = new string[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeString(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64` value.\\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\\n    require(_cborValue.majorType == 0, \\\"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\\\");\\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64[]` value.\\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    uint64[] memory array = new uint64[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeUint64(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\\n\\n    return valueFromBuffer(buffer);\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\\n    require(_buffer.data.length > 0, \\\"WitnetDecoderLib: Found empty buffer when parsing CBOR value\\\");\\n\\n    uint8 initialByte;\\n    uint8 majorType = 255;\\n    uint8 additionalInformation;\\n    uint64 tag = _UINT64_MAX;\\n\\n    bool isTagged = true;\\n    while (isTagged) {\\n      // Extract basic CBOR properties from input bytes\\n      initialByte = _buffer.readUint8();\\n      majorType = initialByte >> 5;\\n      additionalInformation = initialByte & 0x1f;\\n\\n      // Early CBOR tag parsing.\\n      if (majorType == 6) {\\n        tag = readLength(_buffer, additionalInformation);\\n      } else {\\n        isTagged = false;\\n      }\\n    }\\n\\n    require(majorType <= 7, \\\"WitnetDecoderLib: Invalid CBOR major type\\\");\\n\\n    return Witnet.CBOR(\\n      _buffer,\\n      initialByte,\\n      majorType,\\n      additionalInformation,\\n      0,\\n      tag);\\n  }\\n\\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\\n  /// value of the `additionalInformation` argument.\\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\\n    if (additionalInformation < 24) {\\n      return additionalInformation;\\n    }\\n    if (additionalInformation == 24) {\\n      return _buffer.readUint8();\\n    }\\n    if (additionalInformation == 25) {\\n      return _buffer.readUint16();\\n    }\\n    if (additionalInformation == 26) {\\n      return _buffer.readUint32();\\n    }\\n    if (additionalInformation == 27) {\\n      return _buffer.readUint64();\\n    }\\n    if (additionalInformation == 31) {\\n      return _UINT64_MAX;\\n    }\\n    revert(\\\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\\\");\\n  }\\n\\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\\n  /// as many bytes as specified by the first byte.\\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\\n    uint8 initialByte = _buffer.readUint8();\\n    if (initialByte == 0xff) {\\n      return _UINT64_MAX;\\n    }\\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \\\"WitnetDecoderLib: Invalid indefinite length\\\");\\n    return length;\\n  }\\n\\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\\n  /// but it can be easily casted into a string with `string(result)`.\\n  // solium-disable-next-line security/no-assign-params\\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\\n    bytes memory result;\\n    for (uint64 index = 0; index < _length; index++) {\\n      uint8 value = _buffer.readUint8();\\n      if (value & 0x80 != 0) {\\n        if (value < 0xe0) {\\n          value = (value & 0x1f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 1;\\n        } else if (value < 0xf0) {\\n          value = (value & 0x0f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 2;\\n        } else {\\n          value = (value & 0x0f) << 18 |\\n            (_buffer.readUint8() & 0x3f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6  |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 3;\\n        }\\n      }\\n      result = abi.encodePacked(result, value);\\n    }\\n    return result;\\n  }\\n}\\n\",\"keccak256\":\"0xb8f5b618ebae15a7f5d21870ac8ba7034afe5dce876b53a1a81572378a817c32\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetDecoderLib.sol\\\";\\n\\n/// @title A library for decoding Witnet request results\\n/// @notice The library exposes functions to check the Witnet request success.\\n/// and retrieve Witnet results from CBOR values into solidity types.\\n/// @author The Witnet Foundation.\\nlibrary WitnetParserLib {\\n\\n    using WitnetDecoderLib for bytes;\\n    using WitnetDecoderLib for Witnet.CBOR;\\n\\n    /// @notice Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes calldata _cborBytes)\\n        external pure\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.CBOR memory cborValue = _cborBytes.valueFromBytes();\\n        return resultFromCborValue(cborValue);\\n    }\\n\\n    /// @notice Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.Value`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        public pure\\n        returns (Witnet.Result memory)    \\n    {\\n        // Witnet uses CBOR tag 39 to represent RADON error code identifiers.\\n        // [CBOR tag 39] Identifiers for CBOR: https://github.com/lucas-clemente/cbor-specs/blob/master/id.md\\n        bool success = _cborValue.tag != 39;\\n        return Witnet.Result(success, _cborValue);\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        return _result.success;\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n      external pure\\n      returns (bool)\\n    {\\n        return !_result.success;\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes();\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes32();\\n    }\\n\\n    /// @notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return Witnet.ErrorCodes.Unknown;\\n        }\\n        return _supportedErrorOrElseUnknown(error[0]);\\n    }\\n\\n    /// @notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n      public pure\\n      returns (Witnet.ErrorCodes, string memory)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return (Witnet.ErrorCodes.Unknown, \\\"Unknown error (no error code)\\\");\\n        }\\n        Witnet.ErrorCodes errorCode = _supportedErrorOrElseUnknown(error[0]);\\n        bytes memory errorMessage;\\n\\n        if (errorCode == Witnet.ErrorCodes.SourceScriptNotCBOR && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid CBOR value\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotArray && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not an Array of calls\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotRADON && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid Data Request\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RequestTooManySources && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The request contained too many sources (\\\", \\n                _utoa(error[1]), \\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.ScriptTooManyCalls && error.length >= 4) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Script #\\\",\\n                _utoa(error[2]),\\n                \\\" from the \\\",\\n                stageName(error[1]),\\n                \\\" stage contained too many calls (\\\",\\n                _utoa(error[3]),\\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.UnsupportedOperator && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage is not supported\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.HTTP && error.length >= 3) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved. Failed with HTTP error code: \\\",\\n                _utoa(error[2] / 100),\\n                _utoa(error[2] % 100 / 10),\\n                _utoa(error[2] % 10)\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RetrievalTimeout && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved because of a timeout\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Underflow && error.length >= 5) {\\n              errorMessage = abi.encodePacked(\\n                \\\"Underflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Overflow && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Overflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.DivisionByZero && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Division by zero at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeMalformedRequest) {\\n            errorMessage = \\\"The structure of the request is invalid and it cannot be parsed\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgePoorIncentives) {\\n            errorMessage = \\\"The request has been rejected by the bridge node due to poor incentives\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeOversizedResult) {\\n            errorMessage = \\\"The request result length exceeds a bridge contract defined limit\\\";\\n        } else {\\n            errorMessage = abi.encodePacked(\\\"Unknown error (0x\\\", _utohex(error[0]), \\\")\\\");\\n        }\\n        return (errorCode, string(errorMessage));\\n    }\\n\\n    /// @notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        public pure\\n        returns(uint64[] memory)\\n    {\\n        require(\\n            !_result.success,\\n            \\\"WitnetParserLib: Tried to read error code from successful Witnet.Result\\\"\\n        );\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\\\");\\n        return _result.value.decodeBool();\\n    }\\n\\n    /// @notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        returns (int32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16();\\n    }\\n\\n    /// @notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int32[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16Array();\\n    }\\n\\n    /// @notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n      external pure\\n      returns (int128)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128();\\n    }\\n\\n    /// @notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int128[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128Array();\\n    }\\n\\n    /// @notice Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        returns(string memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\\\");\\n        return _result.value.decodeString();\\n    }\\n\\n    /// @notice Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        returns (string[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeStringArray();\\n    }\\n\\n    /// @notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure\\n        returns(uint64)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64();\\n    }\\n\\n    /// @notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        returns (uint64[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Convert a stage index number into the name of the matching Witnet request stage.\\n    /// @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\\n    /// @return The name of the matching stage.\\n    function stageName(uint64 _stageIndex)\\n        public pure\\n        returns (string memory)\\n    {\\n        if (_stageIndex == 0) {\\n            return \\\"retrieval\\\";\\n        } else if (_stageIndex == 1) {\\n            return \\\"aggregation\\\";\\n        } else if (_stageIndex == 2) {\\n            return \\\"tally\\\";\\n        } else {\\n            return \\\"unknown\\\";\\n        }\\n    }\\n\\n    /// @notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\\n    /// @param _discriminant The numeric identifier of an error.\\n    /// @return A member of `Witnet.ErrorCodes`.\\n    function _supportedErrorOrElseUnknown(uint64 _discriminant)\\n        private pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return Witnet.ErrorCodes(_discriminant);\\n    }\\n\\n    /// @notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\\n    /// three less significant decimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its decimal value.\\n    function _utoa(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        if (_u < 10) {\\n            bytes memory b1 = new bytes(1);\\n            b1[0] = bytes1(uint8(_u) + 48);\\n            return string(b1);\\n        } else if (_u < 100) {\\n            bytes memory b2 = new bytes(2);\\n            b2[0] = bytes1(uint8(_u / 10) + 48);\\n            b2[1] = bytes1(uint8(_u % 10) + 48);\\n            return string(b2);\\n        } else {\\n            bytes memory b3 = new bytes(3);\\n            b3[0] = bytes1(uint8(_u / 100) + 48);\\n            b3[1] = bytes1(uint8(_u % 100 / 10) + 48);\\n            b3[2] = bytes1(uint8(_u % 10) + 48);\\n            return string(b3);\\n        }\\n    }\\n\\n    /// @notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its hexadecimal value.\\n    function _utohex(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        bytes memory b2 = new bytes(2);\\n        uint8 d0 = uint8(_u / 16) + 48;\\n        uint8 d1 = uint8(_u % 16) + 48;\\n        if (d0 > 57)\\n            d0 += 7;\\n        if (d1 > 57)\\n            d1 += 7;\\n        b2[0] = bytes1(d0);\\n        b2[1] = bytes1(d1);\\n        return string(b2);\\n    }\\n}\\n\",\"keccak256\":\"0x250634a50e7ad8aaa9f3dde002ca3718de06a65b93be86896011331b996403f0\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Destructible.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Destructible {\\n    /// @dev Self-destruct the whole contract.\\n    function destruct() external;\\n}\\n\",\"keccak256\":\"0x58c9296ad2920fd26779933226ac807a70d6d70963965b781780e53f69625c87\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Payable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"../interfaces/IERC20.sol\\\";\\n\\nabstract contract Payable {\\n    IERC20 public immutable currency;\\n\\n    event Received(address from, uint256 amount);\\n    event Transfer(address to, uint256 amount);\\n\\n    constructor(address _currency) {\\n        currency = IERC20(_currency);\\n    }\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice() internal view virtual returns (uint256);\\n\\n    /// Gets current payment value.\\n    function _getMsgValue() internal view virtual returns (uint256);\\n\\n    /// Perform safe transfer or whatever token is used for paying rewards.\\n    function _safeTransferTo(address payable, uint256) internal virtual;\\n}\\n\",\"keccak256\":\"0xc7f50e489030643b7f061512ad0d8430abc87351941a77589f6b06376c5831b9\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"DeletedQuery(uint256,address)":{"notice":"Emitted when all data related to given query is deleted from the WRB."},"PostedRequest(uint256,address)":{"notice":"Emitted when a Witnet Data Request is posted to the WRB."},"PostedResult(uint256,address)":{"notice":"Emitted when a Witnet-solved result is reported to the WRB."},"Upgraded(address,address,bytes32,bytes32)":{"notice":"Emitted every time the contract gets upgraded."}},"kind":"user","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a boolean value from a Witnet.Result as an `bool` value."},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes` value."},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes32` value."},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`."},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments."},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value."},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value."},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a integer numeric value from a Witnet.Result as an `int128` value."},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value."},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a raw error from a `Witnet.Result` as a `uint64[]`."},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a string value from a Witnet.Result as a `string` value."},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of string values from a Witnet.Result as a `string[]` value."},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a natural numeric value from a Witnet.Result as a `uint64` value."},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value."},"deleteQuery(uint256)":{"notice":"Retrieves copy of all response data related to a previously posted request, removing the whole query from storage."},"destruct()":{"notice":"Destroys current instance. Only callable by the owner."},"estimateReward(uint256)":{"notice":"Estimates the amount of reward we need to insert for a given gas price."},"getNextQueryId()":{"notice":"Returns next request id to be generated by the Witnet Request Board."},"getQueryData(uint256)":{"notice":"Gets the whole Query data contents, if any, no matter its current status."},"getQueryStatus(uint256)":{"notice":"Gets current status of given query."},"initialize(bytes)":{"notice":"Initialize storage-context when invoked as delegatecall. "},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is errored."},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is successful."},"isReporter(address)":{"notice":"Tells whether given address is included in the active reporters control list."},"isUpgradableFrom(address)":{"notice":"Tells whether provided address could eventually upgrade the contract."},"owner()":{"notice":"Gets admin/owner address."},"postRequest(address)":{"notice":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request."},"readRequest(uint256)":{"notice":"Retrieves the whole Request record posted to the Witnet Request Board."},"readRequestBytecode(uint256)":{"notice":"Retrieves the serialized bytecode of a previously posted Witnet Data Request."},"readRequestGasPrice(uint256)":{"notice":"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request."},"readRequestReward(uint256)":{"notice":"Retrieves the reward currently set for a previously posted request."},"readResponse(uint256)":{"notice":"Retrieves the Witnet-provided result, and metadata, to a previously posted request.    "},"readResponseDrTxHash(uint256)":{"notice":"Retrieves the hash of the Witnet transaction that actually solved the referred query."},"readResponseReporter(uint256)":{"notice":"Retrieves the address that reported the result to a previously-posted request."},"readResponseResult(uint256)":{"notice":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request."},"readResponseTimestamp(uint256)":{"notice":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON."},"reportResult(uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request. "},"reportResult(uint256,uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request."},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"notice":"Reports Witnet-provided results to multiple requests within a single EVM tx."},"resultFromCborBytes(bytes)":{"notice":"Decode raw CBOR bytes into a Witnet.Result instance."},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"notice":"Decode a CBOR value into a Witnet.Result instance."},"setReporters(address[])":{"notice":"Adds given addresses to the active reporters control list."},"transferOwnership(address)":{"notice":"Transfers ownership."},"unsetReporters(address[])":{"notice":"Removes given addresses from the active reporters control list."},"upgradeReward(uint256)":{"notice":"Increments the reward of a previously posted request by adding the transaction value to it."},"version()":{"notice":"Retrieves human-readable version tag of current implementation."}},"notice":"Contract to bridge requests to Witnet Decentralized Oracle Network.","version":1}}},"witnet-solidity-bridge/contracts/interfaces/IERC165.sol":{"IERC165":{"abi":[{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}],"devdoc":{"details":"Interface of the ERC165 standard, as defined in the https://eips.ethereum.org/EIPS/eip-165[EIP]. Implementers can declare support of contract interfaces, which can then be queried by others ({ERC165Checker}). For an implementation, see {ERC165}.","kind":"dev","methods":{"supportsInterface(bytes4)":{"details":"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"supportsInterface(bytes4)":"01ffc9a7"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC165 standard, as defined in the https://eips.ethereum.org/EIPS/eip-165[EIP]. Implementers can declare support of contract interfaces, which can then be queried by others ({ERC165Checker}). For an implementation, see {ERC165}.\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section] to learn more about how these ids are created. This function call must use less than 30 000 gas.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IERC165.sol\":\"IERC165\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IERC165.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC165 standard, as defined in the\\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\\n *\\n * Implementers can declare support of contract interfaces, which can then be\\n * queried by others ({ERC165Checker}).\\n *\\n * For an implementation, see {ERC165}.\\n */\\ninterface IERC165 {\\n    /**\\n     * @dev Returns true if this contract implements the interface defined by\\n     * `interfaceId`. See the corresponding\\n     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\\n     * to learn more about how these ids are created.\\n     *\\n     * This function call must use less than 30 000 gas.\\n     */\\n    function supportsInterface(bytes4 interfaceId) external view returns (bool);\\n}\\n\",\"keccak256\":\"0x14a404607f920aa7ce19e17a0abce07d317c95b427fd8ca7b4aaf0b2999d4847\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IERC20.sol":{"IERC20":{"abi":[{"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":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":"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":[],"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"}],"devdoc":{"details":"Interface of the ERC20 standard as defined in the EIP.","kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\":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\":\"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\":[],\"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\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"events\":{\"Approval(address,address,uint256)\":{\"notice\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"notice\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `:value` may be zero.\"}},\"kind\":\"user\",\"methods\":{\"allowance(address,address)\":{\"notice\":\"Returns the remaining number of tokens that `_spender` will be allowed to spend on behalf of `_owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"notice\":\"Sets `_amount` as the allowance of `_spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded.  IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.     \"},\"balanceOf(address)\":{\"notice\":\"Returns the amount of tokens owned by `_account`.\"},\"totalSupply()\":{\"notice\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"notice\":\"Moves `_amount` tokens from the caller's account to `_recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"notice\":\"Moves `amount` tokens from `_sender` to `_recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event. \"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":\"IERC20\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC20 standard as defined in the EIP.\\n */\\ninterface IERC20 {\\n    /// Returns the amount of tokens in existence.\\n    function totalSupply() external view returns (uint256);\\n\\n    /// Returns the amount of tokens owned by `_account`.\\n    function balanceOf(address _account) external view returns (uint256);\\n\\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event.\\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\\n\\n    /// Returns the remaining number of tokens that `_spender` will be\\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\\n    /// zero by default.\\n    /// This value changes when {approve} or {transferFrom} are called.\\n    function allowance(address _owner, address _spender) external view returns (uint256);\\n\\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// \\n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\\n    /// that someone may use both the old and the new allowance by unfortunate\\n    /// transaction ordering. One possible solution to mitigate this race\\n    /// condition is to first reduce the spender's allowance to 0 and set the\\n    /// desired value afterwards:\\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\\n    ///\\n    /// Emits an {Approval} event.     \\n    function approve(address _spender, uint256 _amount) external returns (bool);\\n\\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\\n    /// allowance mechanism. `amount` is then deducted from the caller's\\n    /// allowance.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event. \\n    function transferFrom(\\n        address _sender,\\n        address _recipient,\\n        uint256 _amount\\n    ) external returns (bool);\\n\\n    /// Emitted when `value` tokens are moved from one account (`from`) to\\n    /// another (`to`).\\n    /// Note that `:value` may be zero.\\n    event Transfer(address indexed from, address indexed to, uint256 value);\\n\\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\\n    /// a call to {approve}. `value` is the new allowance.\\n    event Approval(address indexed owner, address indexed spender, uint256 value);\\n}\\n\",\"keccak256\":\"0xd6b25613fab1f6172ca58e377371a0b708f1af8982961364fecf9da196213f48\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"Approval(address,address,uint256)":{"notice":"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance."},"Transfer(address,address,uint256)":{"notice":"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `:value` may be zero."}},"kind":"user","methods":{"allowance(address,address)":{"notice":"Returns the remaining number of tokens that `_spender` will be allowed to spend on behalf of `_owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"notice":"Sets `_amount` as the allowance of `_spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded.  IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.     "},"balanceOf(address)":{"notice":"Returns the amount of tokens owned by `_account`."},"totalSupply()":{"notice":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"notice":"Moves `_amount` tokens from the caller's account to `_recipient`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"notice":"Moves `amount` tokens from `_sender` to `_recipient` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event. "}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol":{"IWitnetPriceRouter":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"erc2362ID","type":"bytes32"},{"indexed":false,"internalType":"contract IERC165","name":"pricefeed","type":"address"}],"name":"CurrencyPairSet","type":"event"},{"inputs":[{"internalType":"string","name":"","type":"string"}],"name":"currencyPairId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_erc2362id","type":"bytes32"}],"name":"getPriceFeed","outputs":[{"internalType":"contract IERC165","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC165","name":"","type":"address"}],"name":"getPriceFeedCaption","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_erc2362id","type":"bytes32"}],"name":"lookupERC2362ID","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC165","name":"_pricefeed","type":"address"},{"internalType":"uint256","name":"_decimals","type":"uint256"},{"internalType":"string","name":"_base","type":"string"},{"internalType":"string","name":"_quote","type":"string"}],"name":"setPriceFeed","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"supportedCurrencyPairs","outputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_erc2362id","type":"bytes32"}],"name":"supportsCurrencyPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC165","name":"_priceFeed","type":"address"}],"name":"supportsPriceFeed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_id","type":"bytes32"}],"name":"valueFor","outputs":[{"internalType":"int256","name":"","type":"int256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","details":"Guides implementation of price feeds aggregation contracts.","events":{"CurrencyPairSet(bytes32,address)":{"details":"See https://github.com/adoracles/ADOIPs/blob/main/adoip-0010.md to learn how these ids are created."}},"kind":"dev","methods":{"getPriceFeedCaption(address)":{"details":"Should fail if the given price feed contract address is not currentlyregistered in the router."},"setPriceFeed(address,uint256,string,string)":{"details":"Setting zero address to a currency pair implies that it will not be served any longer.Otherwise, should fail if the price feed contract does not support the `IWitnetPriceFeed` interface,or if given price feed is already serving another currency pair (within this WitnetPriceRouter instance)."},"valueFor(bytes32)":{"details":"Exposed function pertaining to EIP standards","params":{"_id":"bytes32 ID of the query"},"returns":{"_0":"int,uint,uint returns the value, timestamp, and status code of query"}}},"title":"The Witnet Price Router basic interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"currencyPairId(string)":"835262f5","getPriceFeed(bytes32)":"8c0adf62","getPriceFeedCaption(address)":"bbfa8118","lookupERC2362ID(bytes32)":"99d32a04","setPriceFeed(address,uint256,string,string)":"77021267","supportedCurrencyPairs()":"3fd29ebd","supportsCurrencyPair(bytes32)":"ca64c540","supportsPriceFeed(address)":"a027ad15","valueFor(bytes32)":"f78eea83"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"erc2362ID\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"contract IERC165\",\"name\":\"pricefeed\",\"type\":\"address\"}],\"name\":\"CurrencyPairSet\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"name\":\"currencyPairId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_erc2362id\",\"type\":\"bytes32\"}],\"name\":\"getPriceFeed\",\"outputs\":[{\"internalType\":\"contract IERC165\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IERC165\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"getPriceFeedCaption\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_erc2362id\",\"type\":\"bytes32\"}],\"name\":\"lookupERC2362ID\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IERC165\",\"name\":\"_pricefeed\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_decimals\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"_base\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_quote\",\"type\":\"string\"}],\"name\":\"setPriceFeed\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"supportedCurrencyPairs\",\"outputs\":[{\"internalType\":\"bytes32[]\",\"name\":\"\",\"type\":\"bytes32[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_erc2362id\",\"type\":\"bytes32\"}],\"name\":\"supportsCurrencyPair\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IERC165\",\"name\":\"_priceFeed\",\"type\":\"address\"}],\"name\":\"supportsPriceFeed\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_id\",\"type\":\"bytes32\"}],\"name\":\"valueFor\",\"outputs\":[{\"internalType\":\"int256\",\"name\":\"\",\"type\":\"int256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"details\":\"Guides implementation of price feeds aggregation contracts.\",\"events\":{\"CurrencyPairSet(bytes32,address)\":{\"details\":\"See https://github.com/adoracles/ADOIPs/blob/main/adoip-0010.md to learn how these ids are created.\"}},\"kind\":\"dev\",\"methods\":{\"getPriceFeedCaption(address)\":{\"details\":\"Should fail if the given price feed contract address is not currentlyregistered in the router.\"},\"setPriceFeed(address,uint256,string,string)\":{\"details\":\"Setting zero address to a currency pair implies that it will not be served any longer.Otherwise, should fail if the price feed contract does not support the `IWitnetPriceFeed` interface,or if given price feed is already serving another currency pair (within this WitnetPriceRouter instance).\"},\"valueFor(bytes32)\":{\"details\":\"Exposed function pertaining to EIP standards\",\"params\":{\"_id\":\"bytes32 ID of the query\"},\"returns\":{\"_0\":\"int,uint,uint returns the value, timestamp, and status code of query\"}}},\"title\":\"The Witnet Price Router basic interface.\",\"version\":1},\"userdoc\":{\"events\":{\"CurrencyPairSet(bytes32,address)\":{\"notice\":\"Emitted everytime a currency pair is attached to a new price feed contract\"}},\"kind\":\"user\",\"methods\":{\"currencyPairId(string)\":{\"notice\":\"Helper pure function: returns hash of the provided ERC2362-compliant currency pair caption (aka ID).\"},\"getPriceFeed(bytes32)\":{\"notice\":\"Returns the ERC-165-compliant price feed contract currently serving  updates on the given currency pair.\"},\"getPriceFeedCaption(address)\":{\"notice\":\"Returns human-readable ERC2362-based caption of the currency pair being served by the given price feed contract address. \"},\"lookupERC2362ID(bytes32)\":{\"notice\":\"Returns human-readable caption of the ERC2362-based currency pair identifier, if known.\"},\"setPriceFeed(address,uint256,string,string)\":{\"notice\":\"Register a price feed contract that will serve updates for the given currency pair.\"},\"supportedCurrencyPairs()\":{\"notice\":\"Returns list of known currency pairs IDs.\"},\"supportsCurrencyPair(bytes32)\":{\"notice\":\"Returns `true` if given pair is currently being served by a compliant price feed contract.\"},\"supportsPriceFeed(address)\":{\"notice\":\"Returns `true` if given price feed contract is currently serving updates to any known currency pair. \"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol\":\"IWitnetPriceRouter\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"ado-contracts/contracts/interfaces/IERC2362.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.5.0 <0.9.0;\\n\\n/**\\n* @dev EIP2362 Interface for pull oracles\\n* https://github.com/adoracles/EIPs/blob/erc-2362/EIPS/eip-2362.md\\n*/\\ninterface IERC2362\\n{\\n\\t/**\\n\\t * @dev Exposed function pertaining to EIP standards\\n\\t * @param _id bytes32 ID of the query\\n\\t * @return int,uint,uint returns the value, timestamp, and status code of query\\n\\t */\\n\\tfunction valueFor(bytes32 _id) external view returns(int256,uint256,uint256);\\n}\",\"keccak256\":\"0x4df66aa83b94d7c3d52aba3522b6eeafc19f2c45299b7c871ef46eb199ee4f6b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IERC165.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC165 standard, as defined in the\\n * https://eips.ethereum.org/EIPS/eip-165[EIP].\\n *\\n * Implementers can declare support of contract interfaces, which can then be\\n * queried by others ({ERC165Checker}).\\n *\\n * For an implementation, see {ERC165}.\\n */\\ninterface IERC165 {\\n    /**\\n     * @dev Returns true if this contract implements the interface defined by\\n     * `interfaceId`. See the corresponding\\n     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]\\n     * to learn more about how these ids are created.\\n     *\\n     * This function call must use less than 30 000 gas.\\n     */\\n    function supportsInterface(bytes4 interfaceId) external view returns (bool);\\n}\\n\",\"keccak256\":\"0x14a404607f920aa7ce19e17a0abce07d317c95b427fd8ca7b4aaf0b2999d4847\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetPriceRouter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"ado-contracts/contracts/interfaces/IERC2362.sol\\\";\\nimport \\\"./IERC165.sol\\\";\\n\\n/// @title The Witnet Price Router basic interface.\\n/// @dev Guides implementation of price feeds aggregation contracts.\\n/// @author The Witnet Foundation.\\nabstract contract IWitnetPriceRouter\\n    is\\n        IERC2362 \\n{\\n    /// Emitted everytime a currency pair is attached to a new price feed contract\\n    /// @dev See https://github.com/adoracles/ADOIPs/blob/main/adoip-0010.md \\n    /// @dev to learn how these ids are created.\\n    event CurrencyPairSet(bytes32 indexed erc2362ID, IERC165 pricefeed);\\n\\n    /// Helper pure function: returns hash of the provided ERC2362-compliant currency pair caption (aka ID).\\n    function currencyPairId(string memory) external pure virtual returns (bytes32);\\n\\n    /// Returns the ERC-165-compliant price feed contract currently serving \\n    /// updates on the given currency pair.\\n    function getPriceFeed(bytes32 _erc2362id) external view virtual returns (IERC165);\\n\\n    /// Returns human-readable ERC2362-based caption of the currency pair being\\n    /// served by the given price feed contract address. \\n    /// @dev Should fail if the given price feed contract address is not currently\\n    /// @dev registered in the router.\\n    function getPriceFeedCaption(IERC165) external view virtual returns (string memory);\\n\\n    /// Returns human-readable caption of the ERC2362-based currency pair identifier, if known.\\n    function lookupERC2362ID(bytes32 _erc2362id) external view virtual returns (string memory);\\n\\n    /// Register a price feed contract that will serve updates for the given currency pair.\\n    /// @dev Setting zero address to a currency pair implies that it will not be served any longer.\\n    /// @dev Otherwise, should fail if the price feed contract does not support the `IWitnetPriceFeed` interface,\\n    /// @dev or if given price feed is already serving another currency pair (within this WitnetPriceRouter instance).\\n    function setPriceFeed(\\n            IERC165 _pricefeed,\\n            uint256 _decimals,\\n            string calldata _base,\\n            string calldata _quote\\n        )\\n        external virtual;\\n\\n    /// Returns list of known currency pairs IDs.\\n    function supportedCurrencyPairs() external view virtual returns (bytes32[] memory);\\n\\n    /// Returns `true` if given pair is currently being served by a compliant price feed contract.\\n    function supportsCurrencyPair(bytes32 _erc2362id) external view virtual returns (bool);\\n\\n    /// Returns `true` if given price feed contract is currently serving updates to any known currency pair. \\n    function supportsPriceFeed(IERC165 _priceFeed) external view virtual returns (bool);\\n}\\n\",\"keccak256\":\"0xeabd84fc5a5676dc88de213245b7199e50bc11af174ebb1a5ef460ba262a7276\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"CurrencyPairSet(bytes32,address)":{"notice":"Emitted everytime a currency pair is attached to a new price feed contract"}},"kind":"user","methods":{"currencyPairId(string)":{"notice":"Helper pure function: returns hash of the provided ERC2362-compliant currency pair caption (aka ID)."},"getPriceFeed(bytes32)":{"notice":"Returns the ERC-165-compliant price feed contract currently serving  updates on the given currency pair."},"getPriceFeedCaption(address)":{"notice":"Returns human-readable ERC2362-based caption of the currency pair being served by the given price feed contract address. "},"lookupERC2362ID(bytes32)":{"notice":"Returns human-readable caption of the ERC2362-based currency pair identifier, if known."},"setPriceFeed(address,uint256,string,string)":{"notice":"Register a price feed contract that will serve updates for the given currency pair."},"supportedCurrencyPairs()":{"notice":"Returns list of known currency pairs IDs."},"supportsCurrencyPair(bytes32)":{"notice":"Returns `true` if given pair is currently being served by a compliant price feed contract."},"supportsPriceFeed(address)":{"notice":"Returns `true` if given price feed contract is currently serving updates to any known currency pair. "}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol":{"IWitnetRandomness":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"uint256","name":"prevBlock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"witnetQueryId","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"witnetRequestHash","type":"bytes32"}],"name":"Randomized","type":"event"},{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateRandomizeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomizeData","outputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"uint256","name":"_prevBlock","type":"uint256"},{"internalType":"uint256","name":"_nextBlock","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessAfter","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessNextBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessPrevBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"isRandomized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestRandomizeBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_range","type":"uint32"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"random","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_range","type":"uint32"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"bytes32","name":"_seed","type":"bytes32"}],"name":"random","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"randomize","outputs":[{"internalType":"uint256","name":"_usedFunds","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"upgradeRandomizeFee","outputs":[{"internalType":"uint256","name":"_usedFunds","type":"uint256"}],"stateMutability":"payable","type":"function"}],"devdoc":{"author":"Witnet Foundation.","events":{"Randomized(address,uint256,uint256,bytes32)":{"params":{"from":"Address from which the randomize() function was called. ","prevBlock":"Block number in which a randomness request got posted just before this one. 0 if none.","witnetQueryId":"Unique query id assigned to this request by the WRB.","witnetRequestHash":"SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB."}}},"kind":"dev","methods":{"getRandomizeData(uint256)":{"details":"Returns zero values if no randomness request was actually posted within a given block.","params":{"_block":"Block number whose randomness request is being queried for."},"returns":{"_from":"Address from which the latest randomness request was posted.","_id":"Unique request identifier as provided by the WRB.","_nextBlock":"Block number in which a randomness request got posted just after this one, 0 if none.","_prevBlock":"Block number in which a randomness request got posted just before this one. 0 if none."}},"getRandomnessAfter(uint256)":{"details":"Fails if:i.   no `randomize()` was not called in either the given block, or afterwards.ii.  a request posted in/after given block does exist, but no result has been provided yet.iii. all requests in/after the given block were solved with errors.","params":{"_block":"Block number from which the search will start."}},"getRandomnessNextBlock(uint256)":{"params":{"_block":"Block number from which the search will start."},"returns":{"_0":"Number of the first block found after the given one, or `0` otherwise."}},"getRandomnessPrevBlock(uint256)":{"params":{"_block":"Block number from which the search will start."},"returns":{"_0":"First block found before the given one, or `0` otherwise."}},"random(uint32,uint256,bytes32)":{"params":{"_nonce":"Nonce value enabling multiple random numbers from the same randomness value.","_range":"Range within which the uniformly-distributed random number will be generated.","_seed":"Seed value used as entropy source."}},"random(uint32,uint256,uint256)":{"details":"Fails under same conditions as `getRandomnessAfter(uint256)` may do.","params":{"_block":"Block number from which the search will start.","_nonce":"Nonce value enabling multiple random numbers from the same randomness value.","_range":"Range within which the uniformly-distributed random number will be generated."}},"randomize()":{"returns":{"_usedFunds":"Amount of funds actually used from those provided by the tx sender."}},"upgradeRandomizeFee(uint256)":{"returns":{"_usedFunds":"Amount of dunds actually used from those provided by the tx sender."}}},"title":"The Witnet Randomness generator interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"estimateRandomizeFee(uint256)":"a60ee268","getRandomizeData(uint256)":"a3252f68","getRandomnessAfter(uint256)":"fb476cad","getRandomnessNextBlock(uint256)":"40b41daa","getRandomnessPrevBlock(uint256)":"36b651bb","isRandomized(uint256)":"9bc86fec","latestRandomizeBlock()":"9938fd0c","random(uint32,uint256,bytes32)":"e7d4a016","random(uint32,uint256,uint256)":"24cbbfc1","randomize()":"699b328a","upgradeRandomizeFee(uint256)":"e35329f8"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"prevBlock\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"witnetQueryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"witnetRequestHash\",\"type\":\"bytes32\"}],\"name\":\"Randomized\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomizeData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_prevBlock\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nextBlock\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessAfter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessNextBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessPrevBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"isRandomized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestRandomizeBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_seed\",\"type\":\"bytes32\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_usedFunds\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"upgradeRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_usedFunds\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Witnet Foundation.\",\"events\":{\"Randomized(address,uint256,uint256,bytes32)\":{\"params\":{\"from\":\"Address from which the randomize() function was called. \",\"prevBlock\":\"Block number in which a randomness request got posted just before this one. 0 if none.\",\"witnetQueryId\":\"Unique query id assigned to this request by the WRB.\",\"witnetRequestHash\":\"SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB.\"}}},\"kind\":\"dev\",\"methods\":{\"getRandomizeData(uint256)\":{\"details\":\"Returns zero values if no randomness request was actually posted within a given block.\",\"params\":{\"_block\":\"Block number whose randomness request is being queried for.\"},\"returns\":{\"_from\":\"Address from which the latest randomness request was posted.\",\"_id\":\"Unique request identifier as provided by the WRB.\",\"_nextBlock\":\"Block number in which a randomness request got posted just after this one, 0 if none.\",\"_prevBlock\":\"Block number in which a randomness request got posted just before this one. 0 if none.\"}},\"getRandomnessAfter(uint256)\":{\"details\":\"Fails if:i.   no `randomize()` was not called in either the given block, or afterwards.ii.  a request posted in/after given block does exist, but no result has been provided yet.iii. all requests in/after the given block were solved with errors.\",\"params\":{\"_block\":\"Block number from which the search will start.\"}},\"getRandomnessNextBlock(uint256)\":{\"params\":{\"_block\":\"Block number from which the search will start.\"},\"returns\":{\"_0\":\"Number of the first block found after the given one, or `0` otherwise.\"}},\"getRandomnessPrevBlock(uint256)\":{\"params\":{\"_block\":\"Block number from which the search will start.\"},\"returns\":{\"_0\":\"First block found before the given one, or `0` otherwise.\"}},\"random(uint32,uint256,bytes32)\":{\"params\":{\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\",\"_seed\":\"Seed value used as entropy source.\"}},\"random(uint32,uint256,uint256)\":{\"details\":\"Fails under same conditions as `getRandomnessAfter(uint256)` may do.\",\"params\":{\"_block\":\"Block number from which the search will start.\",\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\"}},\"randomize()\":{\"returns\":{\"_usedFunds\":\"Amount of funds actually used from those provided by the tx sender.\"}},\"upgradeRandomizeFee(uint256)\":{\"returns\":{\"_usedFunds\":\"Amount of dunds actually used from those provided by the tx sender.\"}}},\"title\":\"The Witnet Randomness generator interface.\",\"version\":1},\"userdoc\":{\"events\":{\"Randomized(address,uint256,uint256,bytes32)\":{\"notice\":\"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\"}},\"kind\":\"user\",\"methods\":{\"estimateRandomizeFee(uint256)\":{\"notice\":\"Returns amount of wei required to be paid as a fee when requesting randomization with a  transaction gas price as the one given.\"},\"getRandomizeData(uint256)\":{\"notice\":\"Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\"},\"getRandomnessAfter(uint256)\":{\"notice\":\"Retrieves the randomness generated upon solving a request that was posted within a given block, if any, or to the _first_ request posted after that block, otherwise. Should the intended  request happen to be finalized with errors on the Witnet oracle network side, this function  will recursively try to return randomness from the next non-faulty randomization request found  in storage, if any. \"},\"getRandomnessNextBlock(uint256)\":{\"notice\":\"Tells what is the number of the next block in which a randomization request was posted after the given one. \"},\"getRandomnessPrevBlock(uint256)\":{\"notice\":\"Gets previous block in which a randomness request was posted before the given one.\"},\"isRandomized(uint256)\":{\"notice\":\"Returns `true` only when the randomness request that got posted within given block was already reported back from the Witnet oracle, either successfully or with an error of any kind.\"},\"latestRandomizeBlock()\":{\"notice\":\"Returns latest block in which a randomness request got sucessfully posted to the WRB.\"},\"random(uint32,uint256,bytes32)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the given `_seed` as a source of entropy.\"},\"random(uint32,uint256,uint256)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \"},\"randomize()\":{\"notice\":\"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness.  Only one randomness request per block will be actually posted to the WRB. Should there  already be a posted request within current block, it will try to upgrade Witnet fee of current's  block randomness request according to current gas price. In both cases, all unused funds shall  be transfered back to the tx sender.\"},\"upgradeRandomizeFee(uint256)\":{\"notice\":\"Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it may be required in proportion to how much bigger the current tx gas price is with respect the  highest gas price that was paid in either previous fee upgrades, or when the given randomness  request was posted. All unused funds shall be transferred back to the tx sender.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\":\"IWitnetRandomness\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet Randomness generator interface.\\n/// @author Witnet Foundation.\\ninterface IWitnetRandomness {\\n\\n    /// Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\\n    /// @param from Address from which the randomize() function was called. \\n    /// @param prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @param witnetQueryId Unique query id assigned to this request by the WRB.\\n    /// @param witnetRequestHash SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB.\\n    event Randomized(\\n        address indexed from,\\n        uint256 indexed prevBlock,\\n        uint256 witnetQueryId,\\n        bytes32 witnetRequestHash\\n    );\\n\\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \\n    /// transaction gas price as the one given.\\n    function estimateRandomizeFee(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view returns (address _from, uint256 _id, uint256 _prevBlock, uint256 _nextBlock);\\n\\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \\n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \\n    /// will recursively try to return randomness from the next non-faulty randomization request found \\n    /// in storage, if any. \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\\n    /// @dev   iii. all requests in/after the given block were solved with errors.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block) external view returns (bytes32); \\n\\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \\n    /// @param _block Block number from which the search will start.\\n    /// @return Number of the first block found after the given one, or `0` otherwise.\\n    function getRandomnessNextBlock(uint256 _block) external view returns (uint256); \\n\\n    /// Gets previous block in which a randomness request was posted before the given one.\\n    /// @param _block Block number from which the search will start.\\n    /// @return First block found before the given one, or `0` otherwise.\\n    function getRandomnessPrevBlock(uint256 _block) external view returns (uint256);\\n\\n    /// Returns `true` only when the randomness request that got posted within given block was already\\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\\n    function isRandomized(uint256 _block) external view returns (bool);\\n\\n    /// Returns latest block in which a randomness request got sucessfully posted to the WRB.\\n    function latestRandomizeBlock() external view returns (uint256);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \\n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _block Block number from which the search will start.\\n    function random(uint32 _range, uint256 _nonce, uint256 _block) external view returns (uint32);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _seed Seed value used as entropy source.\\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed) external pure returns (uint32);\\n\\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \\n    /// Only one randomness request per block will be actually posted to the WRB. Should there \\n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \\n    /// block randomness request according to current gas price. In both cases, all unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize() external payable returns (uint256 _usedFunds);\\n\\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \\n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \\n    /// request was posted. All unused funds shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256 _block) external payable returns (uint256 _usedFunds);\\n}\\n\",\"keccak256\":\"0x67868d08fe2406086cdd9a3860614201911a1ad16e3d34a94151fad721a12934\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"Randomized(address,uint256,uint256,bytes32)":{"notice":"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard."}},"kind":"user","methods":{"estimateRandomizeFee(uint256)":{"notice":"Returns amount of wei required to be paid as a fee when requesting randomization with a  transaction gas price as the one given."},"getRandomizeData(uint256)":{"notice":"Retrieves data of a randomization request that got successfully posted to the WRB within a given block."},"getRandomnessAfter(uint256)":{"notice":"Retrieves the randomness generated upon solving a request that was posted within a given block, if any, or to the _first_ request posted after that block, otherwise. Should the intended  request happen to be finalized with errors on the Witnet oracle network side, this function  will recursively try to return randomness from the next non-faulty randomization request found  in storage, if any. "},"getRandomnessNextBlock(uint256)":{"notice":"Tells what is the number of the next block in which a randomization request was posted after the given one. "},"getRandomnessPrevBlock(uint256)":{"notice":"Gets previous block in which a randomness request was posted before the given one."},"isRandomized(uint256)":{"notice":"Returns `true` only when the randomness request that got posted within given block was already reported back from the Witnet oracle, either successfully or with an error of any kind."},"latestRandomizeBlock()":{"notice":"Returns latest block in which a randomness request got sucessfully posted to the WRB."},"random(uint32,uint256,bytes32)":{"notice":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the given `_seed` as a source of entropy."},"random(uint32,uint256,uint256)":{"notice":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. "},"randomize()":{"notice":"Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness.  Only one randomness request per block will be actually posted to the WRB. Should there  already be a posted request within current block, it will try to upgrade Witnet fee of current's  block randomness request according to current gas price. In both cases, all unused funds shall  be transfered back to the tx sender."},"upgradeRandomizeFee(uint256)":{"notice":"Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it may be required in proportion to how much bigger the current tx gas price is with respect the  highest gas price that was paid in either previous fee upgrades, or when the given randomness  request was posted. All unused funds shall be transferred back to the tx sender."}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol":{"IWitnetRequest":{"abi":[{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{},"title":"The Witnet Data Request basic interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"bytecode()":"f0940002","hash()":"09bd5a60"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"The Witnet Data Request basic interface.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"A `IWitnetRequest` is constructed around a `bytes` value containing  a well-formed Witnet Data Request using Protocol Buffers.\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":\"IWitnetRequest\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"A `IWitnetRequest` is constructed around a `bytes` value containing  a well-formed Witnet Data Request using Protocol Buffers."},"hash()":{"notice":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol":{"IWitnetRequestBoardAdmin":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{},"title":"Witnet Request Board basic administration interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"owner()":"8da5cb5b","transferOwnership(address)":"f2fde38b"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Witnet Request Board basic administration interface.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"owner()\":{\"notice\":\"Gets admin/owner address.\"},\"transferOwnership(address)\":{\"notice\":\"Transfers ownership.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol\":\"IWitnetRequestBoardAdmin\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdmin.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board basic administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdmin {\\n    event OwnershipTransferred(address indexed from, address indexed to);\\n\\n    /// Gets admin/owner address.\\n    function owner() external view returns (address);\\n\\n    /// Transfers ownership.\\n    function transferOwnership(address) external;\\n}\\n\",\"keccak256\":\"0xa88e828c55cb4e2c1ef02c9204e367d3034fc2e35cc881581d898942b9715d50\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"owner()":{"notice":"Gets admin/owner address."},"transferOwnership(address)":{"notice":"Transfers ownership."}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol":{"IWitnetRequestBoardAdminACLs":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"ReportersSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"ReportersUnset","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isReporter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"setReporters","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"reporters","type":"address[]"}],"name":"unsetReporters","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"setReporters(address[])":{"details":"Can only be called from the owner address.Emits the `ReportersSet` event. "},"unsetReporters(address[])":{"details":"Can only be called from the owner address.Emits the `ReportersUnset` event. "}},"title":"Witnet Request Board ACLs administration interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"isReporter(address)":"044ad7be","setReporters(address[])":"4c9f72e3","unsetReporters(address[])":"28a78d9b"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"ReportersSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"ReportersUnset\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"isReporter\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"setReporters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"reporters\",\"type\":\"address[]\"}],\"name\":\"unsetReporters\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"setReporters(address[])\":{\"details\":\"Can only be called from the owner address.Emits the `ReportersSet` event. \"},\"unsetReporters(address[])\":{\"details\":\"Can only be called from the owner address.Emits the `ReportersUnset` event. \"}},\"title\":\"Witnet Request Board ACLs administration interface.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"isReporter(address)\":{\"notice\":\"Tells whether given address is included in the active reporters control list.\"},\"setReporters(address[])\":{\"notice\":\"Adds given addresses to the active reporters control list.\"},\"unsetReporters(address[])\":{\"notice\":\"Removes given addresses from the active reporters control list.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":\"IWitnetRequestBoardAdminACLs\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardAdminACLs.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board ACLs administration interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardAdminACLs {\\n    event ReportersSet(address[] reporters);\\n    event ReportersUnset(address[] reporters);\\n\\n    /// Tells whether given address is included in the active reporters control list.\\n    function isReporter(address) external view returns (bool);\\n\\n    /// Adds given addresses to the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersSet` event. \\n    function setReporters(address[] calldata reporters) external;\\n\\n    /// Removes given addresses from the active reporters control list.\\n    /// @dev Can only be called from the owner address.\\n    /// @dev Emits the `ReportersUnset` event. \\n    function unsetReporters(address[] calldata reporters) external;\\n}\\n\",\"keccak256\":\"0xafcd6f01a977d597032b341fec291ea7e26b1dac3eb13eced8b37d89eb76e4ff\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"isReporter(address)":{"notice":"Tells whether given address is included in the active reporters control list."},"setReporters(address[])":{"notice":"Adds given addresses to the active reporters control list."},"unsetReporters(address[])":{"notice":"Removes given addresses from the active reporters control list."}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol":{"IWitnetRequestBoardEvents":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"DeletedQuery","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedRequest","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"}],"name":"PostedResult","type":"event"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{},"title":"Witnet Request Board emitting events interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"DeletedQuery\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedRequest\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"PostedResult\",\"type\":\"event\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"Witnet Request Board emitting events interface.\",\"version\":1},\"userdoc\":{\"events\":{\"DeletedQuery(uint256,address)\":{\"notice\":\"Emitted when all data related to given query is deleted from the WRB.\"},\"PostedRequest(uint256,address)\":{\"notice\":\"Emitted when a Witnet Data Request is posted to the WRB.\"},\"PostedResult(uint256,address)\":{\"notice\":\"Emitted when a Witnet-solved result is reported to the WRB.\"}},\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":\"IWitnetRequestBoardEvents\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"DeletedQuery(uint256,address)":{"notice":"Emitted when all data related to given query is deleted from the WRB."},"PostedRequest(uint256,address)":{"notice":"Emitted when a Witnet Data Request is posted to the WRB."},"PostedResult(uint256,address)":{"notice":"Emitted when a Witnet-solved result is reported to the WRB."}},"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol":{"IWitnetRequestBoardReporter":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"queryId","type":"uint256"},{"indexed":false,"internalType":"string","name":"reason","type":"string"}],"name":"BatchReportError","type":"event"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_result","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"},{"internalType":"uint256","name":"_timestamp","type":"uint256"},{"internalType":"bytes32","name":"_drTxHash","type":"bytes32"},{"internalType":"bytes","name":"_result","type":"bytes"}],"name":"reportResult","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint256","name":"queryId","type":"uint256"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct IWitnetRequestBoardReporter.BatchResult[]","name":"_batchResults","type":"tuple[]"},{"internalType":"bool","name":"_verbose","type":"bool"}],"name":"reportResultBatch","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"reportResult(uint256,bytes32,bytes)":{"details":"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_drTxHash":"The hash of the corresponding data request transaction in Witnet.","_queryId":"The unique identifier of the data request.","_result":"The result itself as bytes."}},"reportResult(uint256,uint256,bytes32,bytes)":{"details":"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.","params":{"_drTxHash":"The hash of the corresponding data request transaction in Witnet.","_queryId":"The unique query identifier","_result":"The result itself as bytes.","_timestamp":"The timestamp of the solving tally transaction in Witnet."}},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"details":"Must emit a PostedResult event for every succesfully reported result.","params":{"_batchResults":"Array of BatchResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.","_verbose":"If true, must emit a BatchReportError event for every failing report, if any. "}}},"title":"The Witnet Request Board Reporter interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"reportResult(uint256,bytes32,bytes)":"6280bce8","reportResult(uint256,uint256,bytes32,bytes)":"c8f5cdd5","reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":"81a398b5"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"reason\",\"type\":\"string\"}],\"name\":\"BatchReportError\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_result\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"_result\",\"type\":\"bytes\"}],\"name\":\"reportResult\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"uint256\",\"name\":\"queryId\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct IWitnetRequestBoardReporter.BatchResult[]\",\"name\":\"_batchResults\",\"type\":\"tuple[]\"},{\"internalType\":\"bool\",\"name\":\"_verbose\",\"type\":\"bool\"}],\"name\":\"reportResultBatch\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"reportResult(uint256,bytes32,bytes)\":{\"details\":\"Will assume `block.timestamp` as the timestamp at which the request was solved.Fails if:- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_drTxHash\":\"The hash of the corresponding data request transaction in Witnet.\",\"_queryId\":\"The unique identifier of the data request.\",\"_result\":\"The result itself as bytes.\"}},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"details\":\"Fails if:- called from unauthorized address;- the `_queryId` is not in 'Posted' status.- provided `_drTxHash` is zero;- length of provided `_result` is zero.\",\"params\":{\"_drTxHash\":\"The hash of the corresponding data request transaction in Witnet.\",\"_queryId\":\"The unique query identifier\",\"_result\":\"The result itself as bytes.\",\"_timestamp\":\"The timestamp of the solving tally transaction in Witnet.\"}},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"details\":\"Must emit a PostedResult event for every succesfully reported result.\",\"params\":{\"_batchResults\":\"Array of BatchResult structs, every one containing:         - unique query identifier;         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;         - hash of the corresponding data request tx at the Witnet side-chain level;         - data request result in raw bytes.\",\"_verbose\":\"If true, must emit a BatchReportError event for every failing report, if any. \"}}},\"title\":\"The Witnet Request Board Reporter interface.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"reportResult(uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request. \"},\"reportResult(uint256,uint256,bytes32,bytes)\":{\"notice\":\"Reports the Witnet-provided result to a previously posted request.\"},\"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)\":{\"notice\":\"Reports Witnet-provided results to multiple requests within a single EVM tx.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":\"IWitnetRequestBoardReporter\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"reportResult(uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request. "},"reportResult(uint256,uint256,bytes32,bytes)":{"notice":"Reports the Witnet-provided result to a previously posted request."},"reportResultBatch((uint256,uint256,bytes32,bytes)[],bool)":{"notice":"Reports Witnet-provided results to multiple requests within a single EVM tx."}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol":{"IWitnetRequestBoardRequestor":{"abi":[{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"deleteQuery","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IWitnetRequest","name":"_addr","type":"address"}],"name":"postRequest","outputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"upgradeReward","outputs":[],"stateMutability":"payable","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"deleteQuery(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.","params":{"_queryId":"The unique query identifier."}},"postRequest(address)":{"details":"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.","params":{"_addr":"The address of the IWitnetRequest contract that can provide the actual Data Request bytecode."},"returns":{"_queryId":"An unique query identifier."}},"upgradeReward(uint256)":{"details":"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. ","params":{"_queryId":"The unique query identifier."}}},"title":"Witnet Requestor Interface","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"deleteQuery(uint256)":"7c1fbda3","postRequest(address)":"b281a7bd","upgradeReward(uint256)":"66bfdc75"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"deleteQuery\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"_addr\",\"type\":\"address\"}],\"name\":\"postRequest\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"upgradeReward\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"deleteQuery(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status, or called from an address different tothe one that actually posted the given request.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"postRequest(address)\":{\"details\":\"Fails if:- provided reward is too low.- provided script is zero address.- provided script bytecode is empty.\",\"params\":{\"_addr\":\"The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\"},\"returns\":{\"_queryId\":\"An unique query identifier.\"}},\"upgradeReward(uint256)\":{\"details\":\"Updates request `gasPrice` in case this method is called with a higher gas price value than the one used in previous calls to `postRequest` or`upgradeReward`. Fails if the `_queryId` is not in 'Posted' status.Fails also in case the request `gasPrice` is increased, and the new reward value gets below new recalculated threshold. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}}},\"title\":\"Witnet Requestor Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"deleteQuery(uint256)\":{\"notice\":\"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\"},\"postRequest(address)\":{\"notice\":\"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request.\"},\"upgradeReward(uint256)\":{\"notice\":\"Increments the reward of a previously posted request by adding the transaction value to it.\"}},\"notice\":\"It defines how to interact with the Witnet Request Board in order to:   - request the execution of Witnet Radon scripts (data request);   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;   - read the result of any previously posted request, eventually reported by the Witnet DON.   - remove from storage all data related to past and solved data requests, and results.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":\"IWitnetRequestBoardRequestor\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"deleteQuery(uint256)":{"notice":"Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage."},"postRequest(address)":{"notice":"Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON. A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided  result to this request."},"upgradeReward(uint256)":{"notice":"Increments the reward of a previously posted request by adding the transaction value to it."}},"notice":"It defines how to interact with the Witnet Request Board in order to:   - request the execution of Witnet Radon scripts (data request);   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;   - read the result of any previously posted request, eventually reported by the Witnet DON.   - remove from storage all data related to past and solved data requests, and results.","version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol":{"IWitnetRequestBoardView":{"abi":[{"inputs":[{"internalType":"uint256","name":"_gasPrice","type":"uint256"}],"name":"estimateReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNextQueryId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryData","outputs":[{"components":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"request","type":"tuple"},{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"response","type":"tuple"},{"internalType":"address","name":"from","type":"address"}],"internalType":"struct Witnet.Query","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"getQueryStatus","outputs":[{"internalType":"enum Witnet.QueryStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequest","outputs":[{"components":[{"internalType":"contract IWitnetRequest","name":"addr","type":"address"},{"internalType":"address","name":"requester","type":"address"},{"internalType":"bytes32","name":"hash","type":"bytes32"},{"internalType":"uint256","name":"gasprice","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"}],"internalType":"struct Witnet.Request","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestBytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestGasPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readRequestReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponse","outputs":[{"components":[{"internalType":"address","name":"reporter","type":"address"},{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"bytes32","name":"drTxHash","type":"bytes32"},{"internalType":"bytes","name":"cborBytes","type":"bytes"}],"internalType":"struct Witnet.Response","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseDrTxHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseReporter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseResult","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_queryId","type":"uint256"}],"name":"readResponseTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"estimateReward(uint256)":{"params":{"_gasPrice":"The gas price for which we need to calculate the rewards."}},"readRequest(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.","params":{"_queryId":"The unique identifier of a previously posted query."}},"readRequestBytecode(uint256)":{"details":"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.","params":{"_queryId":"The unique query identifier."}},"readRequestGasPrice(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifie"}},"readRequestReward(uint256)":{"details":"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. ","params":{"_queryId":"The unique query identifier."}},"readResponse(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseDrTxHash(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseReporter(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseResult(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}},"readResponseTimestamp(uint256)":{"details":"Fails if the `_queryId` is not in 'Reported' status.","params":{"_queryId":"The unique query identifier."}}},"title":"Witnet Request Board info interface.","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"estimateReward(uint256)":"d2e87561","getNextQueryId()":"c805dd0f","getQueryData(uint256)":"c2485ebd","getQueryStatus(uint256)":"6f07abcc","readRequest(uint256)":"99f65804","readRequestBytecode(uint256)":"3b885f2a","readRequestGasPrice(uint256)":"3ae97295","readRequestReward(uint256)":"1dd27daf","readResponse(uint256)":"754e5bea","readResponseDrTxHash(uint256)":"dc3c71cd","readResponseReporter(uint256)":"9d96fced","readResponseResult(uint256)":"d4da69ac","readResponseTimestamp(uint256)":"20f9241e"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_gasPrice\",\"type\":\"uint256\"}],\"name\":\"estimateReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getNextQueryId\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryData\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"request\",\"type\":\"tuple\"},{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"response\",\"type\":\"tuple\"},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"internalType\":\"struct Witnet.Query\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"getQueryStatus\",\"outputs\":[{\"internalType\":\"enum Witnet.QueryStatus\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequest\",\"outputs\":[{\"components\":[{\"internalType\":\"contract IWitnetRequest\",\"name\":\"addr\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"requester\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"hash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"gasprice\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"reward\",\"type\":\"uint256\"}],\"internalType\":\"struct Witnet.Request\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestBytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestGasPrice\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readRequestReward\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponse\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"reporter\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"timestamp\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"drTxHash\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"cborBytes\",\"type\":\"bytes\"}],\"internalType\":\"struct Witnet.Response\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseDrTxHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseReporter\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseResult\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_queryId\",\"type\":\"uint256\"}],\"name\":\"readResponseTimestamp\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"estimateReward(uint256)\":{\"params\":{\"_gasPrice\":\"The gas price for which we need to calculate the rewards.\"}},\"readRequest(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reportedor deleted.\",\"params\":{\"_queryId\":\"The unique identifier of a previously posted query.\"}},\"readRequestBytecode(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid, or if the related script bytecode got changed after being posted. Returns empty array once it gets reported, or deleted.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readRequestGasPrice(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifie\"}},\"readRequestReward(uint256)\":{\"details\":\"Fails if the `_queryId` is not valid or, if it has already been reported, or deleted. \",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponse(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseDrTxHash(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseReporter(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseResult(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}},\"readResponseTimestamp(uint256)\":{\"details\":\"Fails if the `_queryId` is not in 'Reported' status.\",\"params\":{\"_queryId\":\"The unique query identifier.\"}}},\"title\":\"Witnet Request Board info interface.\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"estimateReward(uint256)\":{\"notice\":\"Estimates the amount of reward we need to insert for a given gas price.\"},\"getNextQueryId()\":{\"notice\":\"Returns next query id to be generated by the Witnet Request Board.\"},\"getQueryData(uint256)\":{\"notice\":\"Gets the whole Query data contents, if any, no matter its current status.\"},\"getQueryStatus(uint256)\":{\"notice\":\"Gets current status of given query.\"},\"readRequest(uint256)\":{\"notice\":\"Retrieves the whole Request record posted to the Witnet Request Board.\"},\"readRequestBytecode(uint256)\":{\"notice\":\"Retrieves the serialized bytecode of a previously posted Witnet Data Request.\"},\"readRequestGasPrice(uint256)\":{\"notice\":\"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request.\"},\"readRequestReward(uint256)\":{\"notice\":\"Retrieves the reward currently set for the referred query.\"},\"readResponse(uint256)\":{\"notice\":\"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\"},\"readResponseDrTxHash(uint256)\":{\"notice\":\"Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\"},\"readResponseReporter(uint256)\":{\"notice\":\"Retrieves the address that reported the result to a previously-posted request.\"},\"readResponseResult(uint256)\":{\"notice\":\"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\"},\"readResponseTimestamp(uint256)\":{\"notice\":\"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":\"IWitnetRequestBoardView\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"estimateReward(uint256)":{"notice":"Estimates the amount of reward we need to insert for a given gas price."},"getNextQueryId()":{"notice":"Returns next query id to be generated by the Witnet Request Board."},"getQueryData(uint256)":{"notice":"Gets the whole Query data contents, if any, no matter its current status."},"getQueryStatus(uint256)":{"notice":"Gets current status of given query."},"readRequest(uint256)":{"notice":"Retrieves the whole Request record posted to the Witnet Request Board."},"readRequestBytecode(uint256)":{"notice":"Retrieves the serialized bytecode of a previously posted Witnet Data Request."},"readRequestGasPrice(uint256)":{"notice":"Retrieves the gas price that any assigned reporter will have to pay when reporting  result to a previously posted Witnet data request."},"readRequestReward(uint256)":{"notice":"Retrieves the reward currently set for the referred query."},"readResponse(uint256)":{"notice":"Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request."},"readResponseDrTxHash(uint256)":{"notice":"Retrieves the hash of the Witnet transaction hash that actually solved the referred query."},"readResponseReporter(uint256)":{"notice":"Retrieves the address that reported the result to a previously-posted request."},"readResponseResult(uint256)":{"notice":"Retrieves the Witnet-provided CBOR-bytes result of a previously posted request."},"readResponseTimestamp(uint256)":{"notice":"Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON."}},"version":1}}},"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol":{"IWitnetRequestParser":{"abi":[{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorCode","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorMessage","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"uint8"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asRawError","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isError","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isOk","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"resultFromCborBytes","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"resultFromCborValue","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bool` decoded from the Witnet.Result."}},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes` decoded from the Witnet.Result."}},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes32` decoded from the Witnet.Result."}},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `CBORValue.Error memory` decoded from the Witnet.Result."}},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function","params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."}},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `uint64[]` raw error as decoded from the `Witnet.Result`."}},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string` decoded from the Witnet.Result."}},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string[]` decoded from the Witnet.Result."}},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64` decoded from the Witnet.Result."}},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64[]` decoded from the Witnet.Result."}},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if errored, `false` if successful."}},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if successful, `false` if errored."}},"resultFromCborBytes(bytes)":{"params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.Result` instance."}},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"A `Witnet.Result` instance."}}},"title":"The Witnet interface for decoding Witnet-provided request to Data Requests. This interface exposes functions to check for the success/failure of a Witnet-provided result, as well as to parse and convert result into Solidity types suitable to the application level. ","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d4ced132","asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c683b465","asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"cf62d115","asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"db04f16d","asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"d74803be","asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2241f2db","asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"0f572d2c","asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"2b905fbb","asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"07e66852","asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"b0768328","asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"109a0e3c","asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"c87d969e","asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"bc7e25ff","asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"4dcffaf3","isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"7780cde1","isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":"a8604c1a","resultFromCborBytes(bytes)":"e99e47f3","resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":"2565082b"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorCode\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorMessage\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"uint8\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asRawError\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isError\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isOk\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"resultFromCborBytes\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"resultFromCborValue\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bool` decoded from the Witnet.Result.\"}},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes` decoded from the Witnet.Result.\"}},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes32` decoded from the Witnet.Result.\"}},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `CBORValue.Error memory` decoded from the Witnet.Result.\"}},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\",\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\"}},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `uint64[]` raw error as decoded from the `Witnet.Result`.\"}},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string` decoded from the Witnet.Result.\"}},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string[]` decoded from the Witnet.Result.\"}},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64` decoded from the Witnet.Result.\"}},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64[]` decoded from the Witnet.Result.\"}},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if errored, `false` if successful.\"}},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if successful, `false` if errored.\"}},\"resultFromCborBytes(bytes)\":{\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}}},\"title\":\"The Witnet interface for decoding Witnet-provided request to Data Requests. This interface exposes functions to check for the success/failure of a Witnet-provided result, as well as to parse and convert result into Solidity types suitable to the application level. \",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a boolean value from a Witnet.Result as an `bool` value.\"},\"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes` value.\"},\"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes32` value.\"},\"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\"},\"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\"},\"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\"},\"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\"},\"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a integer numeric value from a Witnet.Result as an `int128` value.\"},\"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\"},\"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\"},\"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a string value from a Witnet.Result as a `string` value.\"},\"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of string values from a Witnet.Result as a `string[]` value.\"},\"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\"},\"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\"},\"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is errored.\"},\"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))\":{\"notice\":\"Tell if a Witnet.Result is successful.\"},\"resultFromCborBytes(bytes)\":{\"notice\":\"Decode raw CBOR bytes into a Witnet.Result instance.\"},\"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))\":{\"notice\":\"Decode a CBOR value into a Witnet.Result instance.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":\"IWitnetRequestParser\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"asBool((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a boolean value from a Witnet.Result as an `bool` value."},"asBytes((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes` value."},"asBytes32((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes32` value."},"asErrorCode((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`."},"asErrorMessage((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments."},"asFixed16((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value."},"asFixed16Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value."},"asInt128((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a integer numeric value from a Witnet.Result as an `int128` value."},"asInt128Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value."},"asRawError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a raw error from a `Witnet.Result` as a `uint64[]`."},"asString((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a string value from a Witnet.Result as a `string` value."},"asStringArray((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of string values from a Witnet.Result as a `string[]` value."},"asUint64((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode a natural numeric value from a Witnet.Result as a `uint64` value."},"asUint64Array((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value."},"isError((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is errored."},"isOk((bool,((bytes,uint32),uint8,uint8,uint8,uint64,uint64)))":{"notice":"Tell if a Witnet.Result is successful."},"resultFromCborBytes(bytes)":{"notice":"Decode raw CBOR bytes into a Witnet.Result instance."},"resultFromCborValue(((bytes,uint32),uint8,uint8,uint8,uint64,uint64))":{"notice":"Decode a CBOR value into a Witnet.Result instance."}},"version":1}}},"witnet-solidity-bridge/contracts/libs/Witnet.sol":{"Witnet":{"abi":[],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f44cdb5f6da1e305c920597467bac9972ea95d73cbcbdd4aac6907349f6c412364736f6c63430008070033","opcodes":"PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DELEGATECALL 0x4C 0xDB 0x5F PUSH14 0xA1E305C920597467BAC9972EA95D PUSH20 0xCBCBDD4AAC6907349F6C412364736F6C63430008 SMOD STOP CALLER ","sourceMap":"144:10937:29:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f44cdb5f6da1e305c920597467bac9972ea95d73cbcbdd4aac6907349f6c412364736f6c63430008070033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 DELEGATECALL 0x4C 0xDB 0x5F PUSH14 0xA1E305C920597467BAC9972EA95D PUSH20 0xCBCBDD4AAC6907349F6C412364736F6C63430008 SMOD STOP CALLER ","sourceMap":"144:10937:29:-:0;;;;;;;;"},"gasEstimates":{"creation":{"codeDepositCost":"17200","executionCost":"97","totalCost":"17297"},"internal":{"hash(bytes memory)":"infinite"}},"methodIdentifiers":{}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":\"Witnet\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol":{"WitnetBuffer":{"abi":[],"devdoc":{"author":"The Witnet Foundation.","details":"`uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.","kind":"dev","methods":{},"title":"A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220a2ae8f580b3a1f373e9fbacb203fba73234a63bbed5739fbc03fe9e410e981dc64736f6c63430008070033","opcodes":"PUSH1 0x56 PUSH1 0x50 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH1 0x43 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 LOG2 0xAE DUP16 PC SIGNEXTEND GASPRICE 0x1F CALLDATACOPY RETURNDATACOPY SWAP16 0xBA 0xCB KECCAK256 EXTCODEHASH 0xBA PUSH20 0x234A63BBED5739FBC03FE9E410E981DC64736F6C PUSH4 0x43000807 STOP CALLER ","sourceMap":"658:10287:30:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220a2ae8f580b3a1f373e9fbacb203fba73234a63bbed5739fbc03fe9e410e981dc64736f6c63430008070033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x0 DUP1 REVERT INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 LOG2 0xAE DUP16 PC SIGNEXTEND GASPRICE 0x1F CALLDATACOPY RETURNDATACOPY SWAP16 0xBA 0xCB KECCAK256 EXTCODEHASH 0xBA PUSH20 0x234A63BBED5739FBC03FE9E410E981DC64736F6C PUSH4 0x43000807 STOP CALLER ","sourceMap":"658:10287:30:-:0;;;;;;;;"},"gasEstimates":{"creation":{"codeDepositCost":"17200","executionCost":"97","totalCost":"17297"},"internal":{"memcpy(uint256,uint256,uint256)":"infinite","next(struct Witnet.Buffer memory)":"infinite","read(struct Witnet.Buffer memory,uint32)":"infinite","readFloat16(struct Witnet.Buffer memory)":"infinite","readUint128(struct Witnet.Buffer memory)":"infinite","readUint16(struct Witnet.Buffer memory)":"infinite","readUint256(struct Witnet.Buffer memory)":"infinite","readUint32(struct Witnet.Buffer memory)":"infinite","readUint64(struct Witnet.Buffer memory)":"infinite","readUint8(struct Witnet.Buffer memory)":"infinite","rewind(struct Witnet.Buffer memory)":"infinite","seek(struct Witnet.Buffer memory,uint32)":"infinite","seek(struct Witnet.Buffer memory,uint32,bool)":"infinite"}},"methodIdentifiers":{}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"details\":\"`uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will start with the byte that goes right after the last one in the previous read.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":\"WitnetBuffer\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"notice":"The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will start with the byte that goes right after the last one in the previous read.","version":1}}},"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol":{"WitnetDecoderLib":{"abi":[{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeBytes32","outputs":[{"internalType":"bytes32","name":"_bytes32","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"decodeUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"_buffer","type":"tuple"}],"name":"valueFromBuffer","outputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"valueFromBytes","outputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"}],"devdoc":{"author":"The Witnet Foundation.  TODO: add support for Array (majorType = 4) TODO: add support for Map (majorType = 5) TODO: add support for Float32 (majorType = 7, additionalInformation = 26) TODO: add support for Float64 (majorType = 7, additionalInformation = 27) ","details":"Most of the logic has been borrowed from Patrick Gansterer’s cbor.js library: https://github.com/paroga/cbor-js","kind":"dev","methods":{"decodeBool(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as a `bool` value."}},"decodeBytes(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as a `bytes` value.   "}},"decodeBytes32(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_bytes32":"The value represented by the input, as a `bytes32` value."}},"decodeFixed16(Witnet.CBOR)":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16` use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `int128` value."}},"decodeFixed16Array(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `int128[]` value."}},"decodeInt128(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `int128` value."}},"decodeInt128Array(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `int128[]` value."}},"decodeString(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as a `string` value."}},"decodeStringArray(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `string[]` value."}},"decodeUint64(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `uint64` value."}},"decodeUint64Array(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.CBOR`."},"returns":{"_0":"The value represented by the input, as an `uint64[]` value."}},"valueFromBuffer(Witnet.Buffer)":{"details":"This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.","params":{"_buffer":"A Buffer structure representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.CBOR` instance containing a partially decoded value."}},"valueFromBytes(bytes)":{"details":"This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.","params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.CBOR` instance containing a partially decoded value."}}},"title":"A minimalistic implementation of “RFC 7049 Concise Binary Object Representation”","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"613c0d610053600b82828239805160001a607314610046577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100d95760003560e01c806394863ea411610096578063c5e88ff211610070578063c5e88ff21461028e578063dfca5d34146102be578063e67c5bd1146102ee578063f8a597d31461031e576100d9565b806394863ea4146101fe5780639eee60ca1461022e578063bb6ef6cf1461025e576100d9565b806308c05c33146100de5780633380d8161461010e578063531f4ba71461013e5780637a8acab11461016e5780637f3fb7ca1461019e5780638138799a146101ce575b600080fd5b6100f860048036038101906100f39190611d88565b61034e565b60405161010591906125cc565b60405180910390f35b61012860048036038101906101239190611d88565b6103f2565b6040516101359190612529565b60405180910390f35b61015860048036038101906101539190611d88565b61058a565b604051610165919061254b565b60405180910390f35b61018860048036038101906101839190611d88565b610722565b60405161019591906128e3565b60405180910390f35b6101b860048036038101906101b39190611d3f565b610786565b6040516101c591906128c1565b60405180910390f35b6101e860048036038101906101e39190611d88565b6108d8565b6040516101f59190612624565b60405180910390f35b61021860048036038101906102139190611d88565b610982565b6040516102259190612609565b60405180910390f35b61024860048036038101906102439190611d88565b610a52565b60405161025591906125b1565b60405180910390f35b61027860048036038101906102739190611d88565b610b4f565b60405161028591906125e7565b60405180910390f35b6102a860048036038101906102a39190611d88565b610c95565b6040516102b5919061256d565b60405180910390f35b6102d860048036038101906102d39190611cf6565b610e29565b6040516102e591906128c1565b60405180910390f35b61030860048036038101906103039190611d88565b610e62565b604051610315919061263f565b60405180910390f35b61033860048036038101906103339190611d88565b610f62565b604051610345919061258f565b60405180910390f35b60008061035a83610b4f565b90506000602082511161036e578151610371565b60205b905060005b818110156103ea5760088161038b9190612f40565b60ff60f81b8483815181106103a3576103a2613346565b5b602001015160f81c60f81b167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c8417935080806103e2906131e6565b915050610376565b505050919050565b60606004826040015160ff161461043e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043590612761565b60405180910390fd5b600061045283600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff16106104aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104a190612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff8111156104d0576104cf613375565b5b6040519080825280602002602001820160405280156104fe5781602001602082028036833780820191505090505b50905060005b8267ffffffffffffffff168167ffffffffffffffff16101561057f57600061052f8660000151610786565b905061053a81610982565b838367ffffffffffffffff168151811061055757610556613346565b5b6020026020010190600f0b9081600f0b815250505080806105779061325c565b915050610504565b508092505050919050565b60606004826040015160ff16146105d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105cd90612761565b60405180910390fd5b60006105ea83600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff1610610642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063990612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff81111561066857610667613375565b5b6040519080825280602002602001820160405280156106965781602001602082028036833780820191505090505b50905060005b8267ffffffffffffffff168167ffffffffffffffff1610156107175760006106c78660000151610786565b90506106d2816108d8565b838367ffffffffffffffff16815181106106ef576106ee613346565b5b602002602001019060030b908160030b8152505050808061070f9061325c565b91505061069c565b508092505050919050565b600080826040015160ff161461076d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610764906126a1565b60405180910390fd5b61077f82600001518360600151611108565b9050919050565b61078e611aa6565b6000826000015151116107d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107cd906127a1565b60405180910390fd5b60008060ff905060008067ffffffffffffffff90506000600190505b801561083a57610801876111fb565b945060058560ff16901c9350601f8516925060068460ff161415610830576108298784611108565b9150610835565b600090505b6107f2565b60078460ff161115610881576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610878906127e1565b60405180910390fd5b6040518060c001604052808881526020018660ff1681526020018560ff1681526020018460ff168152602001600067ffffffffffffffff1681526020018367ffffffffffffffff1681525095505050505050919050565b60006007826040015160ff1614610924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091b90612681565b60405180910390fd5b6019826060015160ff161461096e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096590612881565b60405180910390fd5b61097b826000015161129c565b9050919050565b60006001826040015160ff1614156109e85760006109a883600001518460600151611108565b90508067ffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6109e09190612f9a565b915050610a4d565b6000826040015160ff161415610a1257610a0182610722565b67ffffffffffffffff169050610a4d565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4490612841565b60405180910390fd5b919050565b6000610a6682600001518360600151611108565b826080019067ffffffffffffffff16908167ffffffffffffffff16815250506007826040015160ff1614610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac690612741565b60405180910390fd5b6014826080015167ffffffffffffffff161415610aef5760009050610b4a565b6015826080015167ffffffffffffffff161415610b0f5760019050610b4a565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4190612801565b60405180910390fd5b919050565b6060610b6382600001518360600151611108565b826080019067ffffffffffffffff16908167ffffffffffffffff168152505063ffffffff8016826080015167ffffffffffffffff161415610c725760606000610bb4846000015185604001516113af565b905063ffffffff80168163ffffffff161015610c685781610be282866000015161146590919063ffffffff16565b604051602001610bf39291906124dd565b6040516020818303038152906040529150610c16846000015185604001516113af565b905063ffffffff80168163ffffffff161015610c675781610c4482866000015161146590919063ffffffff16565b604051602001610c559291906124dd565b60405160208183030381529060405291505b5b8192505050610c90565b610c8d8260800151836000015161146590919063ffffffff16565b90505b919050565b60606004826040015160ff1614610ce1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd890612861565b60405180910390fd5b6000610cf583600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff1610610d4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4490612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff811115610d7357610d72613375565b5b604051908082528060200260200182016040528015610da657816020015b6060815260200190600190039081610d915790505b50905060005b8267ffffffffffffffff168167ffffffffffffffff161015610e1e576000610dd78660000151610786565b9050610de281610e62565b838367ffffffffffffffff1681518110610dff57610dfe613346565b5b6020026020010181905250508080610e169061325c565b915050610dac565b508092505050919050565b610e31611aa6565b60006040518060400160405280848152602001600063ffffffff168152509050610e5a81610786565b915050919050565b6060610e7682600001518360600151611108565b826080019067ffffffffffffffff16908167ffffffffffffffff168152505067ffffffffffffffff8016826080015167ffffffffffffffff161415610f4857606060005b80610f3e576000610ed3856000015186604001516113af565b905067ffffffffffffffff80168167ffffffffffffffff161015610f335782610f0c8660000151600484610f079190612ba8565b611579565b604051602001610f1d9291906124dd565b6040516020818303038152906040529250610f38565b600191505b50610eba565b8192505050610f5d565b610f5a82600001518360800151611579565b90505b919050565b60606004826040015160ff1614610fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa5906127c1565b60405180910390fd5b6000610fc283600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff161061101a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101190612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff8111156110405761103f613375565b5b60405190808252806020026020018201604052801561106e5781602001602082028036833780820191505090505b50905060005b8267ffffffffffffffff168167ffffffffffffffff1610156110fd57600061109f8660000151610786565b90506110aa81610722565b838367ffffffffffffffff16815181106110c7576110c6613346565b5b602002602001019067ffffffffffffffff16908167ffffffffffffffff16815250505080806110f59061325c565b915050611074565b508092505050919050565b600060188260ff161015611121578160ff1690506111f5565b60188260ff16141561114057611136836111fb565b60ff1690506111f5565b60198260ff16141561116057611155836116d5565b61ffff1690506111f5565b601a8260ff1614156111825761117583611788565b63ffffffff1690506111f5565b601b8260ff16141561119e576111978361183b565b90506111f5565b601f8260ff1614156111ba5767ffffffffffffffff90506111f5565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ec906126e1565b60405180910390fd5b92915050565b60008160200151826000015151808263ffffffff1610611250576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611247906126c1565b60405180910390fd5b600084600001519050600085602001519050600081600184010151905086602001805180919061127f9061322f565b63ffffffff1663ffffffff16815250508095505050505050919050565b6000806112a8836116d5565b61ffff1690506000618000821690506000600f600a617c00851660030b901d6112d1919061301e565b905060006103ff84169050600f8260030b14156112f057610400811790505b6000808360030b1261132e57600a6104008360030b176127108560030b6001901b61131b9190612d4a565b6113259190612d4a565b901d9050611365565b600a8361133a9061329f565b60030b6001901b6127106104008560030b176113569190612d4a565b6113609190612b3e565b901d90505b60008463ffffffff16146113a2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8161139f9190612e61565b90505b8095505050505050919050565b6000806113bb846111fb565b905060ff8160ff1614156113da5767ffffffffffffffff91505061145f565b60006113e985601f8416611108565b905067ffffffffffffffff80168167ffffffffffffffff1610801561141a57508360ff1660058360ff16901c60ff16145b611459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145090612781565b60405180910390fd5b80925050505b92915050565b606082600001515182846020015161147d9190612b04565b63ffffffff1611156114c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bb90612701565b60405180910390fd5b60008263ffffffff1667ffffffffffffffff8111156114e6576114e5613375565b5b6040519080825280601f01601f1916602001820160405280156115185781602001600182028036833780820191505090505b50905060008363ffffffff161461156f57600084600001519050600085602001519050600080826020850101915060208501905061155d81838963ffffffff166118ee565b611569888860016119ba565b50505050505b8091505092915050565b60608060005b8367ffffffffffffffff168167ffffffffffffffff1610156116ca5760006115a6866111fb565b905060006080821660ff16146116925760e08160ff1610156115f057603f6115cd876111fb565b166006601f831660ff16901b1790506001856115e991906130ca565b9450611691565b60f08160ff16101561163e57603f611607876111fb565b166006603f611615896111fb565b1660ff16901b600c600f841660ff16901b1717905060028561163791906130ca565b9450611690565b603f611649876111fb565b166006603f611657896111fb565b1660ff16901b600c603f61166a8a6111fb565b1660ff16901b6012600f851660ff16901b171717905060038561168d91906130ca565b94505b5b5b82816040516020016116a5929190612501565b60405160208183030381529060405292505080806116c29061325c565b91505061157f565b508091505092915050565b6000600182602001516116e89190612b04565b826000015151808263ffffffff1610611736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172d906126c1565b60405180910390fd5b60008460000151905060008560200151905060008160028401015190506002876020018181516117669190612b04565b91509063ffffffff16908163ffffffff16815250508095505050505050919050565b60006003826020015161179b9190612b04565b826000015151808263ffffffff16106117e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e0906126c1565b60405180910390fd5b60008460000151905060008560200151905060008160048401015190506004876020018181516118199190612b04565b91509063ffffffff16908163ffffffff16815250508095505050505050919050565b60006007826020015161184e9190612b04565b826000015151808263ffffffff161061189c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611893906126c1565b60405180910390fd5b60008460000151905060008560200151905060008160088401015190506008876020018181516118cc9190612b04565b91509063ffffffff16908163ffffffff16815250508095505050505050919050565b60008111611931576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192890612821565b60405180910390fd5b5b60208110611970578151835260208361194b9190612aae565b925060208261195a9190612aae565b91506020816119699190613096565b9050611932565b60008111156119b5576000600182602061198a9190613096565b6101006119979190612c2c565b6119a19190613096565b905080198351168185511681811786525050505b505050565b60008115611a32578263ffffffff168460200151846119d99190612b04565b63ffffffff1611611a1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a16906128a1565b60405180910390fd5b836020015183611a2f9190612b04565b92505b8360000151518363ffffffff161115611a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7790612661565b60405180910390fd5b82846020019063ffffffff16908163ffffffff1681525050836020015190509392505050565b6040518060c00160405280611ab9611aff565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b604051806040016040528060608152602001600063ffffffff1681525090565b6000611b32611b2d84612923565b6128fe565b905082815260208101848484011115611b4e57611b4d6133b3565b5b611b59848285613173565b509392505050565b600082601f830112611b7657611b756133a4565b5b8135611b86848260208601611b1f565b91505092915050565b600060408284031215611ba557611ba46133a9565b5b611baf60406128fe565b9050600082013567ffffffffffffffff811115611bcf57611bce6133ae565b5b611bdb84828501611b61565b6000830152506020611bef84828501611cb7565b60208301525092915050565b600060c08284031215611c1157611c106133a9565b5b611c1b60c06128fe565b9050600082013567ffffffffffffffff811115611c3b57611c3a6133ae565b5b611c4784828501611b8f565b6000830152506020611c5b84828501611ce1565b6020830152506040611c6f84828501611ce1565b6040830152506060611c8384828501611ce1565b6060830152506080611c9784828501611ccc565b60808301525060a0611cab84828501611ccc565b60a08301525092915050565b600081359050611cc681613b92565b92915050565b600081359050611cdb81613ba9565b92915050565b600081359050611cf081613bc0565b92915050565b600060208284031215611d0c57611d0b6133bd565b5b600082013567ffffffffffffffff811115611d2a57611d296133b8565b5b611d3684828501611b61565b91505092915050565b600060208284031215611d5557611d546133bd565b5b600082013567ffffffffffffffff811115611d7357611d726133b8565b5b611d7f84828501611b8f565b91505092915050565b600060208284031215611d9e57611d9d6133bd565b5b600082013567ffffffffffffffff811115611dbc57611dbb6133b8565b5b611dc884828501611bfb565b91505092915050565b6000611ddd838361208c565b60208301905092915050565b6000611df583836120aa565b60208301905092915050565b6000611e0d83836120f2565b905092915050565b6000611e2183836124a8565b60208301905092915050565b6000611e3882612994565b611e428185612a0a565b9350611e4d83612954565b8060005b83811015611e7e578151611e658882611dd1565b9750611e70836129d6565b925050600181019050611e51565b5085935050505092915050565b6000611e968261299f565b611ea08185612a1b565b9350611eab83612964565b8060005b83811015611edc578151611ec38882611de9565b9750611ece836129e3565b925050600181019050611eaf565b5085935050505092915050565b6000611ef4826129aa565b611efe8185612a2c565b935083602082028501611f1085612974565b8060005b85811015611f4c5784840389528151611f2d8582611e01565b9450611f38836129f0565b925060208a01995050600181019050611f14565b50829750879550505050505092915050565b6000611f69826129b5565b611f738185612a3d565b9350611f7e83612984565b8060005b83811015611faf578151611f968882611e15565b9750611fa1836129fd565b925050600181019050611f82565b5085935050505092915050565b611fc5816130fe565b82525050565b611fd48161310a565b82525050565b6000611fe5826129c0565b611fef8185612a4e565b9350611fff818560208601613182565b612008816133c2565b840191505092915050565b600061201e826129c0565b6120288185612a5f565b9350612038818560208601613182565b612041816133c2565b840191505092915050565b6000612057826129c0565b6120618185612a70565b9350612071818560208601613182565b80840191505092915050565b61208681613114565b82525050565b61209581613114565b82525050565b6120a48161312b565b82525050565b6120b38161312b565b82525050565b60006120c4826129cb565b6120ce8185612a8c565b93506120de818560208601613182565b6120e7816133c2565b840191505092915050565b60006120fd826129cb565b6121078185612a9d565b9350612117818560208601613182565b612120816133c2565b840191505092915050565b6000612138603583612a7b565b9150612143826133ed565b604082019050919050565b600061215b605483612a7b565b91506121668261343c565b606082019050919050565b600061217e605183612a7b565b9150612189826134b1565b606082019050919050565b60006121a1604983612a7b565b91506121ac82613526565b606082019050919050565b60006121c4605483612a7b565b91506121cf8261359b565b606082019050919050565b60006121e7603583612a7b565b91506121f282613610565b604082019050919050565b600061220a604183612a7b565b91506122158261365f565b606082019050919050565b600061222d605783612a7b565b9150612238826136d4565b606082019050919050565b6000612250605383612a7b565b915061225b82613749565b606082019050919050565b6000612273602b83612a7b565b915061227e826137be565b604082019050919050565b6000612296603c83612a7b565b91506122a18261380d565b604082019050919050565b60006122b9605383612a7b565b91506122c48261385c565b606082019050919050565b60006122dc602983612a7b565b91506122e7826138d1565b604082019050919050565b60006122ff605c83612a7b565b915061230a82613920565b606082019050919050565b6000612322602183612a7b565b915061232d82613995565b604082019050919050565b6000612345605783612a7b565b9150612350826139e4565b606082019050919050565b6000612368605383612a7b565b915061237382613a59565b606082019050919050565b600061238b605b83612a7b565b915061239682613ace565b606082019050919050565b60006123ae602b83612a7b565b91506123b982613b43565b604082019050919050565b600060408301600083015184820360008601526123e18282612013565b91505060208301516123f6602086018261248a565b508091505092915050565b600060c083016000830151848203600086015261241e82826123c4565b915050602083015161243360208601826124b7565b50604083015161244660408601826124b7565b50606083015161245960608601826124b7565b50608083015161246c60808601826124a8565b5060a083015161247f60a08601826124a8565b508091505092915050565b61249381613142565b82525050565b6124a281613152565b82525050565b6124b181613152565b82525050565b6124c081613166565b82525050565b6124d76124d282613166565b61328d565b82525050565b60006124e9828561204c565b91506124f5828461204c565b91508190509392505050565b600061250d828561204c565b915061251982846124c6565b6001820191508190509392505050565b600060208201905081810360008301526125438184611e2d565b905092915050565b600060208201905081810360008301526125658184611e8b565b905092915050565b600060208201905081810360008301526125878184611ee9565b905092915050565b600060208201905081810360008301526125a98184611f5e565b905092915050565b60006020820190506125c66000830184611fbc565b92915050565b60006020820190506125e16000830184611fcb565b92915050565b600060208201905081810360008301526126018184611fda565b905092915050565b600060208201905061261e600083018461207d565b92915050565b6000602082019050612639600083018461209b565b92915050565b6000602082019050818103600083015261265981846120b9565b905092915050565b6000602082019050818103600083015261267a8161212b565b9050919050565b6000602082019050818103600083015261269a8161214e565b9050919050565b600060208201905081810360008301526126ba81612171565b9050919050565b600060208201905081810360008301526126da81612194565b9050919050565b600060208201905081810360008301526126fa816121b7565b9050919050565b6000602082019050818103600083015261271a816121da565b9050919050565b6000602082019050818103600083015261273a816121fd565b9050919050565b6000602082019050818103600083015261275a81612220565b9050919050565b6000602082019050818103600083015261277a81612243565b9050919050565b6000602082019050818103600083015261279a81612266565b9050919050565b600060208201905081810360008301526127ba81612289565b9050919050565b600060208201905081810360008301526127da816122ac565b9050919050565b600060208201905081810360008301526127fa816122cf565b9050919050565b6000602082019050818103600083015261281a816122f2565b9050919050565b6000602082019050818103600083015261283a81612315565b9050919050565b6000602082019050818103600083015261285a81612338565b9050919050565b6000602082019050818103600083015261287a8161235b565b9050919050565b6000602082019050818103600083015261289a8161237e565b9050919050565b600060208201905081810360008301526128ba816123a1565b9050919050565b600060208201905081810360008301526128db8184612401565b905092915050565b60006020820190506128f86000830184612499565b92915050565b6000612908612919565b905061291482826131b5565b919050565b6000604051905090565b600067ffffffffffffffff82111561293e5761293d613375565b5b612947826133c2565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ab982613138565b9150612ac483613138565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612af957612af86132e8565b5b828201905092915050565b6000612b0f82613142565b9150612b1a83613142565b92508263ffffffff03821115612b3357612b326132e8565b5b828201905092915050565b6000612b4982613121565b9150612b5483613121565b925082612b6457612b63613317565b5b600160000383147f800000000000000000000000000000000000000000000000000000000000000083141615612b9d57612b9c6132e8565b5b828205905092915050565b6000612bb382613152565b9150612bbe83613152565b925082612bce57612bcd613317565b5b828204905092915050565b6000808291508390505b6001851115612c2357808604811115612bff57612bfe6132e8565b5b6001851615612c0e5780820291505b8081029050612c1c856133e0565b9450612be3565b94509492505050565b6000612c3782613138565b9150612c4283613138565b9250612c6f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612c77565b905092915050565b600082612c875760019050612d43565b81612c955760009050612d43565b8160018114612cab5760028114612cb557612ce4565b6001915050612d43565b60ff841115612cc757612cc66132e8565b5b8360020a915084821115612cde57612cdd6132e8565b5b50612d43565b5060208310610133831016604e8410600b8410161715612d195782820a905083811115612d1457612d136132e8565b5b612d43565b612d268484846001612bd9565b92509050818404811115612d3d57612d3c6132e8565b5b81810290505b9392505050565b6000612d5582613121565b9150612d6083613121565b9250827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482116000841360008413161615612d9f57612d9e6132e8565b5b817f80000000000000000000000000000000000000000000000000000000000000000583126000841260008413161615612ddc57612ddb6132e8565b5b827f80000000000000000000000000000000000000000000000000000000000000000582126000841360008412161615612e1957612e186132e8565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0582126000841260008412161615612e5657612e556132e8565b5b828202905092915050565b6000612e6c8261312b565b9150612e778361312b565b925082637fffffff0482116000841360008413161615612e9a57612e996132e8565b5b817fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000583126000841260008413161615612ed757612ed66132e8565b5b827fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000582126000841360008412161615612f1457612f136132e8565b5b82637fffffff0582126000841260008412161615612f3557612f346132e8565b5b828202905092915050565b6000612f4b82613138565b9150612f5683613138565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612f8f57612f8e6132e8565b5b828202905092915050565b6000612fa582613114565b9150612fb083613114565b9250827fffffffffffffffffffffffffffffffff8000000000000000000000000000000001821260008412151615612feb57612fea6132e8565b5b826f7fffffffffffffffffffffffffffffff018213600084121615613013576130126132e8565b5b828203905092915050565b60006130298261312b565b91506130348361312b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000182126000841215161561306f5761306e6132e8565b5b82637fffffff01821360008412161561308b5761308a6132e8565b5b828203905092915050565b60006130a182613138565b91506130ac83613138565b9250828210156130bf576130be6132e8565b5b828203905092915050565b60006130d582613152565b91506130e083613152565b9250828210156130f3576130f26132e8565b5b828203905092915050565b60008115159050919050565b6000819050919050565b600081600f0b9050919050565b6000819050919050565b60008160030b9050919050565b6000819050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b838110156131a0578082015181840152602081019050613185565b838111156131af576000848401525b50505050565b6131be826133c2565b810181811067ffffffffffffffff821117156131dd576131dc613375565b5b80604052505050565b60006131f182613138565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613224576132236132e8565b5b600182019050919050565b600061323a82613142565b915063ffffffff821415613251576132506132e8565b5b600182019050919050565b600061326782613152565b915067ffffffffffffffff821415613282576132816132e8565b5b600182019050919050565b6000613298826133d3565b9050919050565b60006132aa8261312b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000008214156132dd576132dc6132e8565b5b816000039050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160f81b9050919050565b60008160011c9050919050565b7f5769746e65744275666665723a204e6f7420656e6f756768206279746573206960008201527f6e20627566666572207768656e207365656b696e670000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6120606669786564602076616c75652066726f6d2061206057542e43424f526060208201527f2077697468206d616a6f725479706520213d2037000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6075696e743634602066726f6d206120605769746e65742e43424f526020776960208201527f7468206d616a6f725479706520213d2030000000000000000000000000000000604082015250565b7f5769746e65744275666665723a20547269656420746f20726561642066726f6d60008201527f206120636f6e73756d65642042756666657220286d75737420726577696e642060208201527f6974206669727374290000000000000000000000000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20496e76616c6964206c656e67746860008201527f20656e636f64696e6720286e6f6e2d6578697374656e74206164646974696f6e60208201527f616c496e666f726d6174696f6e2076616c756529000000000000000000000000604082015250565b7f5769746e65744275666665723a204e6f7420656e6f756768206279746573206960008201527f6e20627566666572207768656e2072656164696e670000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e60008201527f6774682043424f522061727261797320617265206e6f7420737570706f72746560208201527f6400000000000000000000000000000000000000000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f612060626f6f6c602076616c75652066726f6d206120605769746e65742e434260208201527f4f52602077697468206d616a6f725479706520213d2037000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60696e743132385b5d602066726f6d206120605769746e65742e43424f52602060208201527f77697468206d616a6f725479706520213d203400000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20496e76616c696420696e6465666960008201527f6e697465206c656e677468000000000000000000000000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20466f756e6420656d70747920627560008201527f66666572207768656e2070617273696e672043424f522076616c756500000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6075696e7436345b5d602066726f6d206120605769746e65742e43424f52602060208201527f77697468206d616a6f725479706520213d203400000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20496e76616c69642043424f52206d60008201527f616a6f7220747970650000000000000000000000000000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60626f6f6c602066726f6d206120605769746e65742e43424f5260207769746860208201527f206c656e20646966666572656e74207468616e203230206f7220323100000000604082015250565b7f5769746e65744275666665723a2043616e6e6f7420636f70792030206279746560008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60696e74313238602066726f6d206120605769746e65742e43424f526020776960208201527f7468206d616a6f7254797065206e6f742030206f722031000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60737472696e675b5d602066726f6d206120605769746e65742e43424f52602060208201527f77697468206d616a6f725479706520213d203400000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6066697865643136602066726f6d2061206057542e43424f526020776974682060208201527f6164646974696f6e616c496e666f726d6174696f6e20213d2032350000000000604082015250565b7f5769746e65744275666665723a20496e7465676572206f766572666c6f77207760008201527f68656e207365656b696e67000000000000000000000000000000000000000000602082015250565b613b9b81613142565b8114613ba657600080fd5b50565b613bb281613152565b8114613bbd57600080fd5b50565b613bc981613166565b8114613bd457600080fd5b5056fea2646970667358221220a4d4d110e1ca9e6f5fbecbc2cd493e629dfa4ae32d005565f69c63361d2074fd64736f6c63430008070033","opcodes":"PUSH2 0x3C0D PUSH2 0x53 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH2 0x46 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xD9 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x94863EA4 GT PUSH2 0x96 JUMPI DUP1 PUSH4 0xC5E88FF2 GT PUSH2 0x70 JUMPI DUP1 PUSH4 0xC5E88FF2 EQ PUSH2 0x28E JUMPI DUP1 PUSH4 0xDFCA5D34 EQ PUSH2 0x2BE JUMPI DUP1 PUSH4 0xE67C5BD1 EQ PUSH2 0x2EE JUMPI DUP1 PUSH4 0xF8A597D3 EQ PUSH2 0x31E JUMPI PUSH2 0xD9 JUMP JUMPDEST DUP1 PUSH4 0x94863EA4 EQ PUSH2 0x1FE JUMPI DUP1 PUSH4 0x9EEE60CA EQ PUSH2 0x22E JUMPI DUP1 PUSH4 0xBB6EF6CF EQ PUSH2 0x25E JUMPI PUSH2 0xD9 JUMP JUMPDEST DUP1 PUSH4 0x8C05C33 EQ PUSH2 0xDE JUMPI DUP1 PUSH4 0x3380D816 EQ PUSH2 0x10E JUMPI DUP1 PUSH4 0x531F4BA7 EQ PUSH2 0x13E JUMPI DUP1 PUSH4 0x7A8ACAB1 EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0x7F3FB7CA EQ PUSH2 0x19E JUMPI DUP1 PUSH4 0x8138799A EQ PUSH2 0x1CE JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF3 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x34E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x105 SWAP2 SWAP1 PUSH2 0x25CC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x128 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x123 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x3F2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x135 SWAP2 SWAP1 PUSH2 0x2529 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x158 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x153 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x58A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP2 SWAP1 PUSH2 0x254B 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 0x1D88 JUMP JUMPDEST PUSH2 0x722 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x195 SWAP2 SWAP1 PUSH2 0x28E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1B8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B3 SWAP2 SWAP1 PUSH2 0x1D3F JUMP JUMPDEST PUSH2 0x786 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C5 SWAP2 SWAP1 PUSH2 0x28C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1E8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E3 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x8D8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F5 SWAP2 SWAP1 PUSH2 0x2624 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x218 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x213 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x982 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x225 SWAP2 SWAP1 PUSH2 0x2609 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x248 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x243 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xA52 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x255 SWAP2 SWAP1 PUSH2 0x25B1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x278 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x273 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xB4F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x285 SWAP2 SWAP1 PUSH2 0x25E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2A8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A3 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xC95 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B5 SWAP2 SWAP1 PUSH2 0x256D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2D8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D3 SWAP2 SWAP1 PUSH2 0x1CF6 JUMP JUMPDEST PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2E5 SWAP2 SWAP1 PUSH2 0x28C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x308 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x303 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xE62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x315 SWAP2 SWAP1 PUSH2 0x263F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x338 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x333 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xF62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x345 SWAP2 SWAP1 PUSH2 0x258F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x35A DUP4 PUSH2 0xB4F JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x20 DUP3 MLOAD GT PUSH2 0x36E JUMPI DUP2 MLOAD PUSH2 0x371 JUMP JUMPDEST PUSH1 0x20 JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3EA JUMPI PUSH1 0x8 DUP2 PUSH2 0x38B SWAP2 SWAP1 PUSH2 0x2F40 JUMP JUMPDEST PUSH1 0xFF PUSH1 0xF8 SHL DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3A3 JUMPI PUSH2 0x3A2 PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 SHR DUP5 OR SWAP4 POP DUP1 DUP1 PUSH2 0x3E2 SWAP1 PUSH2 0x31E6 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x376 JUMP JUMPDEST POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x43E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x435 SWAP1 PUSH2 0x2761 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x452 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x4AA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4A1 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4D0 JUMPI PUSH2 0x4CF PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x4FE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x57F JUMPI PUSH1 0x0 PUSH2 0x52F DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0x53A DUP2 PUSH2 0x982 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x557 JUMPI PUSH2 0x556 PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD SWAP1 PUSH1 0xF SIGNEXTEND SWAP1 DUP2 PUSH1 0xF SIGNEXTEND DUP2 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x577 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x504 JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x5D6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5CD SWAP1 PUSH2 0x2761 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x5EA DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x642 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x639 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x668 JUMPI PUSH2 0x667 PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x696 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x717 JUMPI PUSH1 0x0 PUSH2 0x6C7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0x6D2 DUP2 PUSH2 0x8D8 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x6EF JUMPI PUSH2 0x6EE PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD SWAP1 PUSH1 0x3 SIGNEXTEND SWAP1 DUP2 PUSH1 0x3 SIGNEXTEND DUP2 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x70F SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x69C JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x76D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x764 SWAP1 PUSH2 0x26A1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x77F DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x78E PUSH2 0x1AA6 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD MLOAD GT PUSH2 0x7D6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CD SWAP1 PUSH2 0x27A1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0xFF SWAP1 POP PUSH1 0x0 DUP1 PUSH8 0xFFFFFFFFFFFFFFFF SWAP1 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP1 ISZERO PUSH2 0x83A JUMPI PUSH2 0x801 DUP8 PUSH2 0x11FB JUMP JUMPDEST SWAP5 POP PUSH1 0x5 DUP6 PUSH1 0xFF AND SWAP1 SHR SWAP4 POP PUSH1 0x1F DUP6 AND SWAP3 POP PUSH1 0x6 DUP5 PUSH1 0xFF AND EQ ISZERO PUSH2 0x830 JUMPI PUSH2 0x829 DUP8 DUP5 PUSH2 0x1108 JUMP JUMPDEST SWAP2 POP PUSH2 0x835 JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST PUSH2 0x7F2 JUMP JUMPDEST PUSH1 0x7 DUP5 PUSH1 0xFF AND GT ISZERO PUSH2 0x881 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x878 SWAP1 PUSH2 0x27E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 DUP9 DUP2 MSTORE PUSH1 0x20 ADD DUP7 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP6 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP5 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x924 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x91B SWAP1 PUSH2 0x2681 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x19 DUP3 PUSH1 0x60 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x96E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x965 SWAP1 PUSH2 0x2881 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x97B DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x129C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ ISZERO PUSH2 0x9E8 JUMPI PUSH1 0x0 PUSH2 0x9A8 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP DUP1 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH2 0x9E0 SWAP2 SWAP1 PUSH2 0x2F9A JUMP JUMPDEST SWAP2 POP POP PUSH2 0xA4D JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ ISZERO PUSH2 0xA12 JUMPI PUSH2 0xA01 DUP3 PUSH2 0x722 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH2 0xA4D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA44 SWAP1 PUSH2 0x2841 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA66 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH1 0x7 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0xACF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAC6 SWAP1 PUSH2 0x2741 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x14 DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xAEF JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0xB4A JUMP JUMPDEST PUSH1 0x15 DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xB0F JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0xB4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB41 SWAP1 PUSH2 0x2801 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xB63 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH4 0xFFFFFFFF DUP1 AND DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC72 JUMPI PUSH1 0x60 PUSH1 0x0 PUSH2 0xBB4 DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x40 ADD MLOAD PUSH2 0x13AF JUMP JUMPDEST SWAP1 POP PUSH4 0xFFFFFFFF DUP1 AND DUP2 PUSH4 0xFFFFFFFF AND LT ISZERO PUSH2 0xC68 JUMPI DUP2 PUSH2 0xBE2 DUP3 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x1465 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBF3 SWAP3 SWAP2 SWAP1 PUSH2 0x24DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP2 POP PUSH2 0xC16 DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x40 ADD MLOAD PUSH2 0x13AF JUMP JUMPDEST SWAP1 POP PUSH4 0xFFFFFFFF DUP1 AND DUP2 PUSH4 0xFFFFFFFF AND LT ISZERO PUSH2 0xC67 JUMPI DUP2 PUSH2 0xC44 DUP3 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x1465 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC55 SWAP3 SWAP2 SWAP1 PUSH2 0x24DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP2 POP JUMPDEST JUMPDEST DUP2 SWAP3 POP POP POP PUSH2 0xC90 JUMP JUMPDEST PUSH2 0xC8D DUP3 PUSH1 0x80 ADD MLOAD DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x1465 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0xCE1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCD8 SWAP1 PUSH2 0x2861 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xCF5 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0xD4D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD44 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD73 JUMPI PUSH2 0xD72 PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xDA6 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xD91 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0xE1E JUMPI PUSH1 0x0 PUSH2 0xDD7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0xDE2 DUP2 PUSH2 0xE62 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0xDFF JUMPI PUSH2 0xDFE PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP DUP1 DUP1 PUSH2 0xE16 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0xDAC JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE31 PUSH2 0x1AA6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 POP PUSH2 0xE5A DUP2 PUSH2 0x786 JUMP JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xE76 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xF48 JUMPI PUSH1 0x60 PUSH1 0x0 JUMPDEST DUP1 PUSH2 0xF3E JUMPI PUSH1 0x0 PUSH2 0xED3 DUP6 PUSH1 0x0 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD PUSH2 0x13AF JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0xF33 JUMPI DUP3 PUSH2 0xF0C DUP7 PUSH1 0x0 ADD MLOAD PUSH1 0x4 DUP5 PUSH2 0xF07 SWAP2 SWAP1 PUSH2 0x2BA8 JUMP JUMPDEST PUSH2 0x1579 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xF1D SWAP3 SWAP2 SWAP1 PUSH2 0x24DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP3 POP PUSH2 0xF38 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP JUMPDEST POP PUSH2 0xEBA JUMP JUMPDEST DUP2 SWAP3 POP POP POP PUSH2 0xF5D JUMP JUMPDEST PUSH2 0xF5A DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x1579 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0xFAE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFA5 SWAP1 PUSH2 0x27C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xFC2 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x101A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1011 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1040 JUMPI PUSH2 0x103F PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x106E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x10FD JUMPI PUSH1 0x0 PUSH2 0x109F DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0x10AA DUP2 PUSH2 0x722 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x10C7 JUMPI PUSH2 0x10C6 PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x10F5 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1074 JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x18 DUP3 PUSH1 0xFF AND LT ISZERO PUSH2 0x1121 JUMPI DUP2 PUSH1 0xFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x18 DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x1140 JUMPI PUSH2 0x1136 DUP4 PUSH2 0x11FB JUMP JUMPDEST PUSH1 0xFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x19 DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x1160 JUMPI PUSH2 0x1155 DUP4 PUSH2 0x16D5 JUMP JUMPDEST PUSH2 0xFFFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x1A DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x1182 JUMPI PUSH2 0x1175 DUP4 PUSH2 0x1788 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x1B DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x119E JUMPI PUSH2 0x1197 DUP4 PUSH2 0x183B JUMP JUMPDEST SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x1F DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x11BA JUMPI PUSH8 0xFFFFFFFFFFFFFFFF SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11EC SWAP1 PUSH2 0x26E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x20 ADD MLOAD DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x1250 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1247 SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 DUP5 ADD ADD MLOAD SWAP1 POP DUP7 PUSH1 0x20 ADD DUP1 MLOAD DUP1 SWAP2 SWAP1 PUSH2 0x127F SWAP1 PUSH2 0x322F JUMP JUMPDEST PUSH4 0xFFFFFFFF AND PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x12A8 DUP4 PUSH2 0x16D5 JUMP JUMPDEST PUSH2 0xFFFF AND SWAP1 POP PUSH1 0x0 PUSH2 0x8000 DUP3 AND SWAP1 POP PUSH1 0x0 PUSH1 0xF PUSH1 0xA PUSH2 0x7C00 DUP6 AND PUSH1 0x3 SIGNEXTEND SWAP1 SAR PUSH2 0x12D1 SWAP2 SWAP1 PUSH2 0x301E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3FF DUP5 AND SWAP1 POP PUSH1 0xF DUP3 PUSH1 0x3 SIGNEXTEND EQ ISZERO PUSH2 0x12F0 JUMPI PUSH2 0x400 DUP2 OR SWAP1 POP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x3 SIGNEXTEND SLT PUSH2 0x132E JUMPI PUSH1 0xA PUSH2 0x400 DUP4 PUSH1 0x3 SIGNEXTEND OR PUSH2 0x2710 DUP6 PUSH1 0x3 SIGNEXTEND PUSH1 0x1 SWAP1 SHL PUSH2 0x131B SWAP2 SWAP1 PUSH2 0x2D4A JUMP JUMPDEST PUSH2 0x1325 SWAP2 SWAP1 PUSH2 0x2D4A JUMP JUMPDEST SWAP1 SAR SWAP1 POP PUSH2 0x1365 JUMP JUMPDEST PUSH1 0xA DUP4 PUSH2 0x133A SWAP1 PUSH2 0x329F JUMP JUMPDEST PUSH1 0x3 SIGNEXTEND PUSH1 0x1 SWAP1 SHL PUSH2 0x2710 PUSH2 0x400 DUP6 PUSH1 0x3 SIGNEXTEND OR PUSH2 0x1356 SWAP2 SWAP1 PUSH2 0x2D4A JUMP JUMPDEST PUSH2 0x1360 SWAP2 SWAP1 PUSH2 0x2B3E JUMP JUMPDEST SWAP1 SAR SWAP1 POP JUMPDEST PUSH1 0x0 DUP5 PUSH4 0xFFFFFFFF AND EQ PUSH2 0x13A2 JUMPI PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 PUSH2 0x139F SWAP2 SWAP1 PUSH2 0x2E61 JUMP JUMPDEST SWAP1 POP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x13BB DUP5 PUSH2 0x11FB JUMP JUMPDEST SWAP1 POP PUSH1 0xFF DUP2 PUSH1 0xFF AND EQ ISZERO PUSH2 0x13DA JUMPI PUSH8 0xFFFFFFFFFFFFFFFF SWAP2 POP POP PUSH2 0x145F JUMP JUMPDEST PUSH1 0x0 PUSH2 0x13E9 DUP6 PUSH1 0x1F DUP5 AND PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT DUP1 ISZERO PUSH2 0x141A JUMPI POP DUP4 PUSH1 0xFF AND PUSH1 0x5 DUP4 PUSH1 0xFF AND SWAP1 SHR PUSH1 0xFF AND EQ JUMPDEST PUSH2 0x1459 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1450 SWAP1 PUSH2 0x2781 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP3 POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP3 DUP5 PUSH1 0x20 ADD MLOAD PUSH2 0x147D SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND GT ISZERO PUSH2 0x14C4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14BB SWAP1 PUSH2 0x2701 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH4 0xFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x14E6 JUMPI PUSH2 0x14E5 PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1518 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP4 PUSH4 0xFFFFFFFF AND EQ PUSH2 0x156F JUMPI PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP1 DUP3 PUSH1 0x20 DUP6 ADD ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP1 POP PUSH2 0x155D DUP2 DUP4 DUP10 PUSH4 0xFFFFFFFF AND PUSH2 0x18EE JUMP JUMPDEST PUSH2 0x1569 DUP9 DUP9 PUSH1 0x1 PUSH2 0x19BA JUMP JUMPDEST POP POP POP POP POP JUMPDEST DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP1 PUSH1 0x0 JUMPDEST DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x16CA JUMPI PUSH1 0x0 PUSH2 0x15A6 DUP7 PUSH2 0x11FB JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x80 DUP3 AND PUSH1 0xFF AND EQ PUSH2 0x1692 JUMPI PUSH1 0xE0 DUP2 PUSH1 0xFF AND LT ISZERO PUSH2 0x15F0 JUMPI PUSH1 0x3F PUSH2 0x15CD DUP8 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0x6 PUSH1 0x1F DUP4 AND PUSH1 0xFF AND SWAP1 SHL OR SWAP1 POP PUSH1 0x1 DUP6 PUSH2 0x15E9 SWAP2 SWAP1 PUSH2 0x30CA JUMP JUMPDEST SWAP5 POP PUSH2 0x1691 JUMP JUMPDEST PUSH1 0xF0 DUP2 PUSH1 0xFF AND LT ISZERO PUSH2 0x163E JUMPI PUSH1 0x3F PUSH2 0x1607 DUP8 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0x6 PUSH1 0x3F PUSH2 0x1615 DUP10 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0xFF AND SWAP1 SHL PUSH1 0xC PUSH1 0xF DUP5 AND PUSH1 0xFF AND SWAP1 SHL OR OR SWAP1 POP PUSH1 0x2 DUP6 PUSH2 0x1637 SWAP2 SWAP1 PUSH2 0x30CA JUMP JUMPDEST SWAP5 POP PUSH2 0x1690 JUMP JUMPDEST PUSH1 0x3F PUSH2 0x1649 DUP8 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0x6 PUSH1 0x3F PUSH2 0x1657 DUP10 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0xFF AND SWAP1 SHL PUSH1 0xC PUSH1 0x3F PUSH2 0x166A DUP11 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0xFF AND SWAP1 SHL PUSH1 0x12 PUSH1 0xF DUP6 AND PUSH1 0xFF AND SWAP1 SHL OR OR OR SWAP1 POP PUSH1 0x3 DUP6 PUSH2 0x168D SWAP2 SWAP1 PUSH2 0x30CA JUMP JUMPDEST SWAP5 POP JUMPDEST JUMPDEST JUMPDEST DUP3 DUP2 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x16A5 SWAP3 SWAP2 SWAP1 PUSH2 0x2501 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP3 POP POP DUP1 DUP1 PUSH2 0x16C2 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x157F JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x16E8 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x1736 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x172D SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 DUP5 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 DUP8 PUSH1 0x20 ADD DUP2 DUP2 MLOAD PUSH2 0x1766 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP2 POP SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x179B SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x17E9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17E0 SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x4 DUP5 ADD ADD MLOAD SWAP1 POP PUSH1 0x4 DUP8 PUSH1 0x20 ADD DUP2 DUP2 MLOAD PUSH2 0x1819 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP2 POP SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x184E SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x189C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1893 SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x8 DUP5 ADD ADD MLOAD SWAP1 POP PUSH1 0x8 DUP8 PUSH1 0x20 ADD DUP2 DUP2 MLOAD PUSH2 0x18CC SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP2 POP SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 GT PUSH2 0x1931 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1928 SWAP1 PUSH2 0x2821 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH1 0x20 DUP2 LT PUSH2 0x1970 JUMPI DUP2 MLOAD DUP4 MSTORE PUSH1 0x20 DUP4 PUSH2 0x194B SWAP2 SWAP1 PUSH2 0x2AAE JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 PUSH2 0x195A SWAP2 SWAP1 PUSH2 0x2AAE JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP2 PUSH2 0x1969 SWAP2 SWAP1 PUSH2 0x3096 JUMP JUMPDEST SWAP1 POP PUSH2 0x1932 JUMP JUMPDEST PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x19B5 JUMPI PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x20 PUSH2 0x198A SWAP2 SWAP1 PUSH2 0x3096 JUMP JUMPDEST PUSH2 0x100 PUSH2 0x1997 SWAP2 SWAP1 PUSH2 0x2C2C JUMP JUMPDEST PUSH2 0x19A1 SWAP2 SWAP1 PUSH2 0x3096 JUMP JUMPDEST SWAP1 POP DUP1 NOT DUP4 MLOAD AND DUP2 DUP6 MLOAD AND DUP2 DUP2 OR DUP7 MSTORE POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO PUSH2 0x1A32 JUMPI DUP3 PUSH4 0xFFFFFFFF AND DUP5 PUSH1 0x20 ADD MLOAD DUP5 PUSH2 0x19D9 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND GT PUSH2 0x1A1F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A16 SWAP1 PUSH2 0x28A1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 PUSH1 0x20 ADD MLOAD DUP4 PUSH2 0x1A2F SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP3 POP JUMPDEST DUP4 PUSH1 0x0 ADD MLOAD MLOAD DUP4 PUSH4 0xFFFFFFFF AND GT ISZERO PUSH2 0x1A80 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A77 SWAP1 PUSH2 0x2661 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP5 PUSH1 0x20 ADD SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP4 PUSH1 0x20 ADD MLOAD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x1AB9 PUSH2 0x1AFF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B32 PUSH2 0x1B2D DUP5 PUSH2 0x2923 JUMP JUMPDEST PUSH2 0x28FE JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1B4E JUMPI PUSH2 0x1B4D PUSH2 0x33B3 JUMP JUMPDEST JUMPDEST PUSH2 0x1B59 DUP5 DUP3 DUP6 PUSH2 0x3173 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B76 JUMPI PUSH2 0x1B75 PUSH2 0x33A4 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B86 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1B1F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BA5 JUMPI PUSH2 0x1BA4 PUSH2 0x33A9 JUMP JUMPDEST JUMPDEST PUSH2 0x1BAF PUSH1 0x40 PUSH2 0x28FE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1BCF JUMPI PUSH2 0x1BCE PUSH2 0x33AE JUMP JUMPDEST JUMPDEST PUSH2 0x1BDB DUP5 DUP3 DUP6 ADD PUSH2 0x1B61 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1BEF DUP5 DUP3 DUP6 ADD PUSH2 0x1CB7 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1C11 JUMPI PUSH2 0x1C10 PUSH2 0x33A9 JUMP JUMPDEST JUMPDEST PUSH2 0x1C1B PUSH1 0xC0 PUSH2 0x28FE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C3B JUMPI PUSH2 0x1C3A PUSH2 0x33AE JUMP JUMPDEST JUMPDEST PUSH2 0x1C47 DUP5 DUP3 DUP6 ADD PUSH2 0x1B8F JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1C5B DUP5 DUP3 DUP6 ADD PUSH2 0x1CE1 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x1C6F DUP5 DUP3 DUP6 ADD PUSH2 0x1CE1 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1C83 DUP5 DUP3 DUP6 ADD PUSH2 0x1CE1 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x1C97 DUP5 DUP3 DUP6 ADD PUSH2 0x1CCC JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x1CAB DUP5 DUP3 DUP6 ADD PUSH2 0x1CCC JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1CC6 DUP2 PUSH2 0x3B92 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1CDB DUP2 PUSH2 0x3BA9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1CF0 DUP2 PUSH2 0x3BC0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D0C JUMPI PUSH2 0x1D0B PUSH2 0x33BD JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D2A JUMPI PUSH2 0x1D29 PUSH2 0x33B8 JUMP JUMPDEST JUMPDEST PUSH2 0x1D36 DUP5 DUP3 DUP6 ADD PUSH2 0x1B61 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D55 JUMPI PUSH2 0x1D54 PUSH2 0x33BD JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D73 JUMPI PUSH2 0x1D72 PUSH2 0x33B8 JUMP JUMPDEST JUMPDEST PUSH2 0x1D7F DUP5 DUP3 DUP6 ADD PUSH2 0x1B8F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D9E JUMPI PUSH2 0x1D9D PUSH2 0x33BD JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DBC JUMPI PUSH2 0x1DBB PUSH2 0x33B8 JUMP JUMPDEST JUMPDEST PUSH2 0x1DC8 DUP5 DUP3 DUP6 ADD PUSH2 0x1BFB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DDD DUP4 DUP4 PUSH2 0x208C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DF5 DUP4 DUP4 PUSH2 0x20AA JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E0D DUP4 DUP4 PUSH2 0x20F2 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E21 DUP4 DUP4 PUSH2 0x24A8 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E38 DUP3 PUSH2 0x2994 JUMP JUMPDEST PUSH2 0x1E42 DUP2 DUP6 PUSH2 0x2A0A JUMP JUMPDEST SWAP4 POP PUSH2 0x1E4D DUP4 PUSH2 0x2954 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E7E JUMPI DUP2 MLOAD PUSH2 0x1E65 DUP9 DUP3 PUSH2 0x1DD1 JUMP JUMPDEST SWAP8 POP PUSH2 0x1E70 DUP4 PUSH2 0x29D6 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1E51 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E96 DUP3 PUSH2 0x299F JUMP JUMPDEST PUSH2 0x1EA0 DUP2 DUP6 PUSH2 0x2A1B JUMP JUMPDEST SWAP4 POP PUSH2 0x1EAB DUP4 PUSH2 0x2964 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1EDC JUMPI DUP2 MLOAD PUSH2 0x1EC3 DUP9 DUP3 PUSH2 0x1DE9 JUMP JUMPDEST SWAP8 POP PUSH2 0x1ECE DUP4 PUSH2 0x29E3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1EAF JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF4 DUP3 PUSH2 0x29AA JUMP JUMPDEST PUSH2 0x1EFE DUP2 DUP6 PUSH2 0x2A2C JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x1F10 DUP6 PUSH2 0x2974 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x1F4C JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x1F2D DUP6 DUP3 PUSH2 0x1E01 JUMP JUMPDEST SWAP5 POP PUSH2 0x1F38 DUP4 PUSH2 0x29F0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1F14 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F69 DUP3 PUSH2 0x29B5 JUMP JUMPDEST PUSH2 0x1F73 DUP2 DUP6 PUSH2 0x2A3D JUMP JUMPDEST SWAP4 POP PUSH2 0x1F7E DUP4 PUSH2 0x2984 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1FAF JUMPI DUP2 MLOAD PUSH2 0x1F96 DUP9 DUP3 PUSH2 0x1E15 JUMP JUMPDEST SWAP8 POP PUSH2 0x1FA1 DUP4 PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1F82 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1FC5 DUP2 PUSH2 0x30FE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1FD4 DUP2 PUSH2 0x310A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FE5 DUP3 PUSH2 0x29C0 JUMP JUMPDEST PUSH2 0x1FEF DUP2 DUP6 PUSH2 0x2A4E JUMP JUMPDEST SWAP4 POP PUSH2 0x1FFF DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x2008 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x201E DUP3 PUSH2 0x29C0 JUMP JUMPDEST PUSH2 0x2028 DUP2 DUP6 PUSH2 0x2A5F JUMP JUMPDEST SWAP4 POP PUSH2 0x2038 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x2041 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2057 DUP3 PUSH2 0x29C0 JUMP JUMPDEST PUSH2 0x2061 DUP2 DUP6 PUSH2 0x2A70 JUMP JUMPDEST SWAP4 POP PUSH2 0x2071 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2086 DUP2 PUSH2 0x3114 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2095 DUP2 PUSH2 0x3114 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x20A4 DUP2 PUSH2 0x312B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x20B3 DUP2 PUSH2 0x312B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20C4 DUP3 PUSH2 0x29CB JUMP JUMPDEST PUSH2 0x20CE DUP2 DUP6 PUSH2 0x2A8C JUMP JUMPDEST SWAP4 POP PUSH2 0x20DE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x20E7 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20FD DUP3 PUSH2 0x29CB JUMP JUMPDEST PUSH2 0x2107 DUP2 DUP6 PUSH2 0x2A9D JUMP JUMPDEST SWAP4 POP PUSH2 0x2117 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x2120 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2138 PUSH1 0x35 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2143 DUP3 PUSH2 0x33ED JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x215B PUSH1 0x54 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2166 DUP3 PUSH2 0x343C JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x217E PUSH1 0x51 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2189 DUP3 PUSH2 0x34B1 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21A1 PUSH1 0x49 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x21AC DUP3 PUSH2 0x3526 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21C4 PUSH1 0x54 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x21CF DUP3 PUSH2 0x359B JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21E7 PUSH1 0x35 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x21F2 DUP3 PUSH2 0x3610 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x220A PUSH1 0x41 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2215 DUP3 PUSH2 0x365F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x222D PUSH1 0x57 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2238 DUP3 PUSH2 0x36D4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2250 PUSH1 0x53 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x225B DUP3 PUSH2 0x3749 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2273 PUSH1 0x2B DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x227E DUP3 PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2296 PUSH1 0x3C DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x22A1 DUP3 PUSH2 0x380D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22B9 PUSH1 0x53 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x22C4 DUP3 PUSH2 0x385C JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22DC PUSH1 0x29 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x22E7 DUP3 PUSH2 0x38D1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22FF PUSH1 0x5C DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x230A DUP3 PUSH2 0x3920 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2322 PUSH1 0x21 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x232D DUP3 PUSH2 0x3995 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2345 PUSH1 0x57 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2350 DUP3 PUSH2 0x39E4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2368 PUSH1 0x53 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2373 DUP3 PUSH2 0x3A59 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x238B PUSH1 0x5B DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2396 DUP3 PUSH2 0x3ACE JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23AE PUSH1 0x2B DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x23B9 DUP3 PUSH2 0x3B43 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x23E1 DUP3 DUP3 PUSH2 0x2013 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x23F6 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x248A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x241E DUP3 DUP3 PUSH2 0x23C4 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x2433 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x24B7 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x2446 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x24B7 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x2459 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x24B7 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x246C PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x24A8 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x247F PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x24A8 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2493 DUP2 PUSH2 0x3142 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24A2 DUP2 PUSH2 0x3152 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24B1 DUP2 PUSH2 0x3152 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24C0 DUP2 PUSH2 0x3166 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24D7 PUSH2 0x24D2 DUP3 PUSH2 0x3166 JUMP JUMPDEST PUSH2 0x328D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24E9 DUP3 DUP6 PUSH2 0x204C JUMP JUMPDEST SWAP2 POP PUSH2 0x24F5 DUP3 DUP5 PUSH2 0x204C JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x250D DUP3 DUP6 PUSH2 0x204C JUMP JUMPDEST SWAP2 POP PUSH2 0x2519 DUP3 DUP5 PUSH2 0x24C6 JUMP JUMPDEST PUSH1 0x1 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2543 DUP2 DUP5 PUSH2 0x1E2D 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 0x2565 DUP2 DUP5 PUSH2 0x1E8B 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 0x2587 DUP2 DUP5 PUSH2 0x1EE9 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 0x25A9 DUP2 DUP5 PUSH2 0x1F5E JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25C6 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FBC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25E1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FCB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2601 DUP2 DUP5 PUSH2 0x1FDA JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x261E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x207D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2639 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x209B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2659 DUP2 DUP5 PUSH2 0x20B9 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 0x267A DUP2 PUSH2 0x212B 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 0x269A DUP2 PUSH2 0x214E 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 0x26BA DUP2 PUSH2 0x2171 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 0x26DA DUP2 PUSH2 0x2194 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 0x26FA DUP2 PUSH2 0x21B7 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 0x271A DUP2 PUSH2 0x21DA 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 0x273A DUP2 PUSH2 0x21FD 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 0x275A DUP2 PUSH2 0x2220 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 0x277A DUP2 PUSH2 0x2243 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 0x279A DUP2 PUSH2 0x2266 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 0x27BA DUP2 PUSH2 0x2289 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 0x27DA DUP2 PUSH2 0x22AC 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 0x27FA DUP2 PUSH2 0x22CF 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 0x281A DUP2 PUSH2 0x22F2 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 0x283A DUP2 PUSH2 0x2315 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 0x285A DUP2 PUSH2 0x2338 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 0x287A DUP2 PUSH2 0x235B 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 0x289A DUP2 PUSH2 0x237E 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 0x28BA DUP2 PUSH2 0x23A1 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 0x28DB DUP2 DUP5 PUSH2 0x2401 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x28F8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2499 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2908 PUSH2 0x2919 JUMP JUMPDEST SWAP1 POP PUSH2 0x2914 DUP3 DUP3 PUSH2 0x31B5 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 0x293E JUMPI PUSH2 0x293D PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH2 0x2947 DUP3 PUSH2 0x33C2 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 SWAP1 POP PUSH1 0x20 DUP3 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 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 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 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD 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 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 DUP2 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 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AB9 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x2AC4 DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2AF9 JUMPI PUSH2 0x2AF8 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B0F DUP3 PUSH2 0x3142 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B1A DUP4 PUSH2 0x3142 JUMP JUMPDEST SWAP3 POP DUP3 PUSH4 0xFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2B33 JUMPI PUSH2 0x2B32 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B49 DUP3 PUSH2 0x3121 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B54 DUP4 PUSH2 0x3121 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2B64 JUMPI PUSH2 0x2B63 PUSH2 0x3317 JUMP JUMPDEST JUMPDEST PUSH1 0x1 PUSH1 0x0 SUB DUP4 EQ PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 DUP4 EQ AND ISZERO PUSH2 0x2B9D JUMPI PUSH2 0x2B9C PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SDIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BB3 DUP3 PUSH2 0x3152 JUMP JUMPDEST SWAP2 POP PUSH2 0x2BBE DUP4 PUSH2 0x3152 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2BCE JUMPI PUSH2 0x2BCD PUSH2 0x3317 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x2C23 JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x2BFF JUMPI PUSH2 0x2BFE PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x2C0E JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x2C1C DUP6 PUSH2 0x33E0 JUMP JUMPDEST SWAP5 POP PUSH2 0x2BE3 JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C37 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C42 DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP PUSH2 0x2C6F PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x2C77 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x2C87 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x2D43 JUMP JUMPDEST DUP2 PUSH2 0x2C95 JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x2D43 JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x2CAB JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x2CB5 JUMPI PUSH2 0x2CE4 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x2D43 JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x2CC7 JUMPI PUSH2 0x2CC6 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x2CDE JUMPI PUSH2 0x2CDD PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST POP PUSH2 0x2D43 JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x2D19 JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x2D14 JUMPI PUSH2 0x2D13 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH2 0x2D43 JUMP JUMPDEST PUSH2 0x2D26 DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x2BD9 JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x2D3D JUMPI PUSH2 0x2D3C PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D55 DUP3 PUSH2 0x3121 JUMP JUMPDEST SWAP2 POP PUSH2 0x2D60 DUP4 PUSH2 0x3121 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP3 GT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2D9F JUMPI PUSH2 0x2D9E PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 SDIV DUP4 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2DDC JUMPI PUSH2 0x2DDB PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 SDIV DUP3 SLT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2E19 JUMPI PUSH2 0x2E18 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SDIV DUP3 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2E56 JUMPI PUSH2 0x2E55 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E6C DUP3 PUSH2 0x312B JUMP JUMPDEST SWAP2 POP PUSH2 0x2E77 DUP4 PUSH2 0x312B JUMP JUMPDEST SWAP3 POP DUP3 PUSH4 0x7FFFFFFF DIV DUP3 GT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2E9A JUMPI PUSH2 0x2E99 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 SDIV DUP4 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2ED7 JUMPI PUSH2 0x2ED6 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 SDIV DUP3 SLT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2F14 JUMPI PUSH2 0x2F13 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH4 0x7FFFFFFF SDIV DUP3 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2F35 JUMPI PUSH2 0x2F34 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F4B DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x2F56 DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2F8F JUMPI PUSH2 0x2F8E PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2FA5 DUP3 PUSH2 0x3114 JUMP JUMPDEST SWAP2 POP PUSH2 0x2FB0 DUP4 PUSH2 0x3114 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000000000000000000000000000 ADD DUP3 SLT PUSH1 0x0 DUP5 SLT ISZERO AND ISZERO PUSH2 0x2FEB JUMPI PUSH2 0x2FEA PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH16 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ADD DUP3 SGT PUSH1 0x0 DUP5 SLT AND ISZERO PUSH2 0x3013 JUMPI PUSH2 0x3012 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3029 DUP3 PUSH2 0x312B JUMP JUMPDEST SWAP2 POP PUSH2 0x3034 DUP4 PUSH2 0x312B JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 ADD DUP3 SLT PUSH1 0x0 DUP5 SLT ISZERO AND ISZERO PUSH2 0x306F JUMPI PUSH2 0x306E PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH4 0x7FFFFFFF ADD DUP3 SGT PUSH1 0x0 DUP5 SLT AND ISZERO PUSH2 0x308B JUMPI PUSH2 0x308A PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30A1 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x30AC DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x30BF JUMPI PUSH2 0x30BE PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30D5 DUP3 PUSH2 0x3152 JUMP JUMPDEST SWAP2 POP PUSH2 0x30E0 DUP4 PUSH2 0x3152 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x30F3 JUMPI PUSH2 0x30F2 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP 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 PUSH1 0xF SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x3 SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND 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 0x31A0 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x3185 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x31AF JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x31BE DUP3 PUSH2 0x33C2 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x31DD JUMPI PUSH2 0x31DC PUSH2 0x3375 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31F1 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x3224 JUMPI PUSH2 0x3223 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x323A DUP3 PUSH2 0x3142 JUMP JUMPDEST SWAP2 POP PUSH4 0xFFFFFFFF DUP3 EQ ISZERO PUSH2 0x3251 JUMPI PUSH2 0x3250 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3267 DUP3 PUSH2 0x3152 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x3282 JUMPI PUSH2 0x3281 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3298 DUP3 PUSH2 0x33D3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32AA DUP3 PUSH2 0x312B JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 DUP3 EQ ISZERO PUSH2 0x32DD JUMPI PUSH2 0x32DC PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 PUSH1 0x0 SUB 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 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF8 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A204E6F7420656E6F7567682062797465732069 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E20627566666572207768656E207365656B696E670000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6120606669786564602076616C75652066726F6D2061206057542E43424F5260 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x2077697468206D616A6F725479706520213D2037000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6075696E743634602066726F6D206120605769746E65742E43424F5260207769 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x7468206D616A6F725479706520213D2030000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A20547269656420746F20726561642066726F6D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206120636F6E73756D65642042756666657220286D75737420726577696E6420 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6974206669727374290000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E76616C6964206C656E677468 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20656E636F64696E6720286E6F6E2D6578697374656E74206164646974696F6E PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x616C496E666F726D6174696F6E2076616C756529000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A204E6F7420656E6F7567682062797465732069 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E20627566666572207768656E2072656164696E670000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E646566696E6974652D6C656E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6774682043424F522061727261797320617265206E6F7420737570706F727465 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6400000000000000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x612060626F6F6C602076616C75652066726F6D206120605769746E65742E4342 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x4F52602077697468206D616A6F725479706520213D2037000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60696E743132385B5D602066726F6D206120605769746E65742E43424F526020 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x77697468206D616A6F725479706520213D203400000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E76616C696420696E64656669 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E697465206C656E677468000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20466F756E6420656D707479206275 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x66666572207768656E2070617273696E672043424F522076616C756500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6075696E7436345B5D602066726F6D206120605769746E65742E43424F526020 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x77697468206D616A6F725479706520213D203400000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E76616C69642043424F52206D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616A6F7220747970650000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60626F6F6C602066726F6D206120605769746E65742E43424F52602077697468 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x206C656E20646966666572656E74207468616E203230206F7220323100000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A2043616E6E6F7420636F707920302062797465 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60696E74313238602066726F6D206120605769746E65742E43424F5260207769 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x7468206D616A6F7254797065206E6F742030206F722031000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60737472696E675B5D602066726F6D206120605769746E65742E43424F526020 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x77697468206D616A6F725479706520213D203400000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6066697865643136602066726F6D2061206057542E43424F5260207769746820 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6164646974696F6E616C496E666F726D6174696F6E20213D2032350000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A20496E7465676572206F766572666C6F772077 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x68656E207365656B696E67000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3B9B DUP2 PUSH2 0x3142 JUMP JUMPDEST DUP2 EQ PUSH2 0x3BA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3BB2 DUP2 PUSH2 0x3152 JUMP JUMPDEST DUP2 EQ PUSH2 0x3BBD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3BC9 DUP2 PUSH2 0x3166 JUMP JUMPDEST DUP2 EQ PUSH2 0x3BD4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 LOG4 0xD4 0xD1 LT 0xE1 0xCA SWAP15 PUSH16 0x5FBECBC2CD493E629DFA4AE32D005565 0xF6 SWAP13 PUSH4 0x361D2074 REVERT PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"814:13642:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@decodeBool_5334":{"entryPoint":2642,"id":5334,"parameterSlots":1,"returnSlots":1},"@decodeBytes32_5490":{"entryPoint":846,"id":5490,"parameterSlots":1,"returnSlots":1},"@decodeBytes_5435":{"entryPoint":2895,"id":5435,"parameterSlots":1,"returnSlots":1},"@decodeFixed16Array_5599":{"entryPoint":1418,"id":5599,"parameterSlots":1,"returnSlots":1},"@decodeFixed16_5521":{"entryPoint":2264,"id":5521,"parameterSlots":1,"returnSlots":1},"@decodeInt128Array_5736":{"entryPoint":1010,"id":5736,"parameterSlots":1,"returnSlots":1},"@decodeInt128_5658":{"entryPoint":2434,"id":5658,"parameterSlots":1,"returnSlots":1},"@decodeStringArray_5900":{"entryPoint":3221,"id":5900,"parameterSlots":1,"returnSlots":1},"@decodeString_5822":{"entryPoint":3682,"id":5822,"parameterSlots":1,"returnSlots":1},"@decodeUint64Array_6003":{"entryPoint":3938,"id":6003,"parameterSlots":1,"returnSlots":1},"@decodeUint64_5925":{"entryPoint":1826,"id":5925,"parameterSlots":1,"returnSlots":1},"@memcpy_5260":{"entryPoint":6382,"id":5260,"parameterSlots":3,"returnSlots":0},"@readFloat16_5207":{"entryPoint":4764,"id":5207,"parameterSlots":1,"returnSlots":1},"@readIndefiniteStringLength_6237":{"entryPoint":5039,"id":6237,"parameterSlots":2,"returnSlots":1},"@readLength_6187":{"entryPoint":4360,"id":6187,"parameterSlots":2,"returnSlots":1},"@readText_6385":{"entryPoint":5497,"id":6385,"parameterSlots":2,"returnSlots":1},"@readUint16_4893":{"entryPoint":5845,"id":4893,"parameterSlots":1,"returnSlots":1},"@readUint32_4934":{"entryPoint":6024,"id":4934,"parameterSlots":1,"returnSlots":1},"@readUint64_4975":{"entryPoint":6203,"id":4975,"parameterSlots":1,"returnSlots":1},"@readUint8_4852":{"entryPoint":4603,"id":4852,"parameterSlots":1,"returnSlots":1},"@read_4708":{"entryPoint":5221,"id":4708,"parameterSlots":2,"returnSlots":1},"@seek_4782":{"entryPoint":6586,"id":4782,"parameterSlots":3,"returnSlots":1},"@valueFromBuffer_6121":{"entryPoint":1926,"id":6121,"parameterSlots":1,"returnSlots":1},"@valueFromBytes_6028":{"entryPoint":3625,"id":6028,"parameterSlots":1,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":6943,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":7009,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Buffer_$4361_memory_ptr":{"entryPoint":7055,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":7163,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32":{"entryPoint":7351,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64":{"entryPoint":7372,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8":{"entryPoint":7393,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":7414,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_Buffer_$4361_memory_ptr":{"entryPoint":7487,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":7560,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_int128_to_t_int128_library":{"entryPoint":7633,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_int32_to_t_int32_library":{"entryPoint":7657,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library":{"entryPoint":7681,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_uint64_to_t_uint64_library":{"entryPoint":7701,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library":{"entryPoint":7725,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library":{"entryPoint":7819,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library":{"entryPoint":7913,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library":{"entryPoint":8030,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bool_to_t_bool_fromStack_library":{"entryPoint":8124,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32_fromStack_library":{"entryPoint":8139,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library":{"entryPoint":8154,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library":{"entryPoint":8211,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":8268,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_int128_to_t_int128_fromStack_library":{"entryPoint":8317,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int128_to_t_int128_library":{"entryPoint":8332,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int32_to_t_int32_fromStack_library":{"entryPoint":8347,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int32_to_t_int32_library":{"entryPoint":8362,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library":{"entryPoint":8377,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library":{"entryPoint":8434,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758_to_t_string_memory_ptr_fromStack":{"entryPoint":8491,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e_to_t_string_memory_ptr_fromStack":{"entryPoint":8526,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0_to_t_string_memory_ptr_fromStack":{"entryPoint":8561,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804_to_t_string_memory_ptr_fromStack":{"entryPoint":8596,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865_to_t_string_memory_ptr_fromStack":{"entryPoint":8631,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271_to_t_string_memory_ptr_fromStack":{"entryPoint":8666,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90_to_t_string_memory_ptr_fromStack":{"entryPoint":8701,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567_to_t_string_memory_ptr_fromStack":{"entryPoint":8736,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf_to_t_string_memory_ptr_fromStack":{"entryPoint":8771,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8_to_t_string_memory_ptr_fromStack":{"entryPoint":8806,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d_to_t_string_memory_ptr_fromStack":{"entryPoint":8841,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1_to_t_string_memory_ptr_fromStack":{"entryPoint":8876,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175_to_t_string_memory_ptr_fromStack":{"entryPoint":8911,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73_to_t_string_memory_ptr_fromStack":{"entryPoint":8946,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea_to_t_string_memory_ptr_fromStack":{"entryPoint":8981,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae_to_t_string_memory_ptr_fromStack":{"entryPoint":9016,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c_to_t_string_memory_ptr_fromStack":{"entryPoint":9051,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad_to_t_string_memory_ptr_fromStack":{"entryPoint":9086,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b_to_t_string_memory_ptr_fromStack":{"entryPoint":9121,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library":{"entryPoint":9156,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library":{"entryPoint":9217,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_uint32_to_t_uint32_library":{"entryPoint":9354,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_fromStack_library":{"entryPoint":9369,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_library":{"entryPoint":9384,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8_library":{"entryPoint":9399,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack":{"entryPoint":9414,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":9437,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_packed_t_bytes_memory_ptr_t_uint8__to_t_bytes_memory_ptr_t_uint8__nonPadded_inplace_fromStack_reversed":{"entryPoint":9473,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":9513,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":9547,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":9581,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":9615,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed":{"entryPoint":9649,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed":{"entryPoint":9676,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed":{"entryPoint":9703,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int128__to_t_int128__fromStack_library_reversed":{"entryPoint":9737,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int32__to_t_int32__fromStack_library_reversed":{"entryPoint":9764,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed":{"entryPoint":9791,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9825,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9857,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9889,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9921,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9953,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":9985,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10017,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10049,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10081,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10113,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10145,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10177,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10209,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10241,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10273,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10305,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10337,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10369,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":10401,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed":{"entryPoint":10433,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint64__to_t_uint64__fromStack_library_reversed":{"entryPoint":10467,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_memory":{"entryPoint":10494,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":10521,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":10531,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":10580,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":10596,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":10612,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":10628,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":10644,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":10655,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":10666,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":10677,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":10688,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_string_memory_ptr":{"entryPoint":10699,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":10710,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":10723,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":10736,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":10749,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library":{"entryPoint":10762,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library":{"entryPoint":10779,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library":{"entryPoint":10796,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library":{"entryPoint":10813,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library":{"entryPoint":10830,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_library":{"entryPoint":10847,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":10864,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":10875,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library":{"entryPoint":10892,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_library":{"entryPoint":10909,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint256":{"entryPoint":10926,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint32":{"entryPoint":11012,"id":null,"parameterSlots":2,"returnSlots":1},"checked_div_t_int256":{"entryPoint":11070,"id":null,"parameterSlots":2,"returnSlots":1},"checked_div_t_uint64":{"entryPoint":11176,"id":null,"parameterSlots":2,"returnSlots":1},"checked_exp_helper":{"entryPoint":11225,"id":null,"parameterSlots":4,"returnSlots":2},"checked_exp_t_uint256_t_uint256":{"entryPoint":11308,"id":null,"parameterSlots":2,"returnSlots":1},"checked_exp_unsigned":{"entryPoint":11383,"id":null,"parameterSlots":3,"returnSlots":1},"checked_mul_t_int256":{"entryPoint":11594,"id":null,"parameterSlots":2,"returnSlots":1},"checked_mul_t_int32":{"entryPoint":11873,"id":null,"parameterSlots":2,"returnSlots":1},"checked_mul_t_uint256":{"entryPoint":12096,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_int128":{"entryPoint":12186,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_int32":{"entryPoint":12318,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint256":{"entryPoint":12438,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint64":{"entryPoint":12490,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_bool":{"entryPoint":12542,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":12554,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int128":{"entryPoint":12564,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int256":{"entryPoint":12577,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int32":{"entryPoint":12587,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":12600,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint32":{"entryPoint":12610,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint64":{"entryPoint":12626,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":12646,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":12659,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":12674,"id":null,"parameterSlots":3,"returnSlots":0},"finalize_allocation":{"entryPoint":12725,"id":null,"parameterSlots":2,"returnSlots":0},"increment_t_uint256":{"entryPoint":12774,"id":null,"parameterSlots":1,"returnSlots":1},"increment_t_uint32":{"entryPoint":12847,"id":null,"parameterSlots":1,"returnSlots":1},"increment_t_uint64":{"entryPoint":12892,"id":null,"parameterSlots":1,"returnSlots":1},"leftAlign_t_uint8":{"entryPoint":12941,"id":null,"parameterSlots":1,"returnSlots":1},"negate_t_int32":{"entryPoint":12959,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x11":{"entryPoint":13032,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x12":{"entryPoint":13079,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":13126,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":13173,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":13220,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f":{"entryPoint":13225,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421":{"entryPoint":13230,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":13235,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":13240,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":13245,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":13250,"id":null,"parameterSlots":1,"returnSlots":1},"shift_left_248":{"entryPoint":13267,"id":null,"parameterSlots":1,"returnSlots":1},"shift_right_1_unsigned":{"entryPoint":13280,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758":{"entryPoint":13293,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e":{"entryPoint":13372,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0":{"entryPoint":13489,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804":{"entryPoint":13606,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865":{"entryPoint":13723,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271":{"entryPoint":13840,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90":{"entryPoint":13919,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567":{"entryPoint":14036,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf":{"entryPoint":14153,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8":{"entryPoint":14270,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d":{"entryPoint":14349,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1":{"entryPoint":14428,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175":{"entryPoint":14545,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73":{"entryPoint":14624,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea":{"entryPoint":14741,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae":{"entryPoint":14820,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c":{"entryPoint":14937,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad":{"entryPoint":15054,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b":{"entryPoint":15171,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint32":{"entryPoint":15250,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint64":{"entryPoint":15273,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint8":{"entryPoint":15296,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:55636:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"497:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"546:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"548:77:46"},"nodeType":"YulFunctionCall","src":"548:79:46"},"nodeType":"YulExpressionStatement","src":"548:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"525:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"533:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"521:3:46"},"nodeType":"YulFunctionCall","src":"521:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"540:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"517:3:46"},"nodeType":"YulFunctionCall","src":"517:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"510:6:46"},"nodeType":"YulFunctionCall","src":"510:35:46"},"nodeType":"YulIf","src":"507:122:46"},{"nodeType":"YulVariableDeclaration","src":"638:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"665:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"652:12:46"},"nodeType":"YulFunctionCall","src":"652:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"642:6:46","type":""}]},{"nodeType":"YulAssignment","src":"681:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"741:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"749:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"737:3:46"},"nodeType":"YulFunctionCall","src":"737:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"756:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"764:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"690:46:46"},"nodeType":"YulFunctionCall","src":"690:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"681:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"475:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"483:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"491:5:46","type":""}],"src":"436:338:46"},{"body":{"nodeType":"YulBlock","src":"887:664:46","statements":[{"body":{"nodeType":"YulBlock","src":"931:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"933:77:46"},"nodeType":"YulFunctionCall","src":"933:79:46"},"nodeType":"YulExpressionStatement","src":"933:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"908:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"913:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"904:3:46"},"nodeType":"YulFunctionCall","src":"904:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"925:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"900:3:46"},"nodeType":"YulFunctionCall","src":"900:30:46"},"nodeType":"YulIf","src":"897:117:46"},{"nodeType":"YulAssignment","src":"1023:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1048:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"1032:15:46"},"nodeType":"YulFunctionCall","src":"1032:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1023:5:46"}]},{"nodeType":"YulBlock","src":"1063:319:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1098:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1129:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1140:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1125:3:46"},"nodeType":"YulFunctionCall","src":"1125:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1112:12:46"},"nodeType":"YulFunctionCall","src":"1112:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1102:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1190:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"1192:77:46"},"nodeType":"YulFunctionCall","src":"1192:79:46"},"nodeType":"YulExpressionStatement","src":"1192:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1162:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1170:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1159:2:46"},"nodeType":"YulFunctionCall","src":"1159:30:46"},"nodeType":"YulIf","src":"1156:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1298:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1305:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1294:3:46"},"nodeType":"YulFunctionCall","src":"1294:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1346:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1357:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1342:3:46"},"nodeType":"YulFunctionCall","src":"1342:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"1366:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1312:29:46"},"nodeType":"YulFunctionCall","src":"1312:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1287:6:46"},"nodeType":"YulFunctionCall","src":"1287:84:46"},"nodeType":"YulExpressionStatement","src":"1287:84:46"}]},{"nodeType":"YulBlock","src":"1392:152:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1429:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1443:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1433:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1470:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1477:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1466:3:46"},"nodeType":"YulFunctionCall","src":"1466:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1508:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1519:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1504:3:46"},"nodeType":"YulFunctionCall","src":"1504:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"1528:3:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"1484:19:46"},"nodeType":"YulFunctionCall","src":"1484:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1459:6:46"},"nodeType":"YulFunctionCall","src":"1459:74:46"},"nodeType":"YulExpressionStatement","src":"1459:74:46"}]}]},"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"862:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"873:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"881:5:46","type":""}],"src":"808:743:46"},{"body":{"nodeType":"YulBlock","src":"1660:1345:46","statements":[{"body":{"nodeType":"YulBlock","src":"1704:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"1706:77:46"},"nodeType":"YulFunctionCall","src":"1706:79:46"},"nodeType":"YulExpressionStatement","src":"1706:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"1681:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1686:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1677:3:46"},"nodeType":"YulFunctionCall","src":"1677:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"1698:4:46","type":"","value":"0xc0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1673:3:46"},"nodeType":"YulFunctionCall","src":"1673:30:46"},"nodeType":"YulIf","src":"1670:117:46"},{"nodeType":"YulAssignment","src":"1796:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1821:4:46","type":"","value":"0xc0"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"1805:15:46"},"nodeType":"YulFunctionCall","src":"1805:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1796:5:46"}]},{"nodeType":"YulBlock","src":"1836:336:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1873:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1904:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1915:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1900:3:46"},"nodeType":"YulFunctionCall","src":"1900:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1887:12:46"},"nodeType":"YulFunctionCall","src":"1887:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1877:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1965:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"1967:77:46"},"nodeType":"YulFunctionCall","src":"1967:79:46"},"nodeType":"YulExpressionStatement","src":"1967:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1937:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1945:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1934:2:46"},"nodeType":"YulFunctionCall","src":"1934:30:46"},"nodeType":"YulIf","src":"1931:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2073:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2080:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2069:3:46"},"nodeType":"YulFunctionCall","src":"2069:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2136:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2147:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2132:3:46"},"nodeType":"YulFunctionCall","src":"2132:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"2156:3:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulIdentifier","src":"2087:44:46"},"nodeType":"YulFunctionCall","src":"2087:73:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2062:6:46"},"nodeType":"YulFunctionCall","src":"2062:99:46"},"nodeType":"YulExpressionStatement","src":"2062:99:46"}]},{"nodeType":"YulBlock","src":"2182:156:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2224:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2238:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2228:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2265:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2272:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2261:3:46"},"nodeType":"YulFunctionCall","src":"2261:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2302:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2313:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2298:3:46"},"nodeType":"YulFunctionCall","src":"2298:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"2322:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"2279:18:46"},"nodeType":"YulFunctionCall","src":"2279:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2254:6:46"},"nodeType":"YulFunctionCall","src":"2254:73:46"},"nodeType":"YulExpressionStatement","src":"2254:73:46"}]},{"nodeType":"YulBlock","src":"2348:154:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2388:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2402:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2392:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2429:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2436:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2425:3:46"},"nodeType":"YulFunctionCall","src":"2425:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2466:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2477:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2462:3:46"},"nodeType":"YulFunctionCall","src":"2462:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"2486:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"2443:18:46"},"nodeType":"YulFunctionCall","src":"2443:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2418:6:46"},"nodeType":"YulFunctionCall","src":"2418:73:46"},"nodeType":"YulExpressionStatement","src":"2418:73:46"}]},{"nodeType":"YulBlock","src":"2512:166:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2564:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2578:2:46","type":"","value":"96"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2568:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2605:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2612:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2601:3:46"},"nodeType":"YulFunctionCall","src":"2601:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2642:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2653:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2638:3:46"},"nodeType":"YulFunctionCall","src":"2638:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"2662:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"2619:18:46"},"nodeType":"YulFunctionCall","src":"2619:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2594:6:46"},"nodeType":"YulFunctionCall","src":"2594:73:46"},"nodeType":"YulExpressionStatement","src":"2594:73:46"}]},{"nodeType":"YulBlock","src":"2688:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2722:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2736:3:46","type":"","value":"128"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2726:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2764:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2771:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2760:3:46"},"nodeType":"YulFunctionCall","src":"2760:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2802:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2813:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2798:3:46"},"nodeType":"YulFunctionCall","src":"2798:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"2822:3:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"2778:19:46"},"nodeType":"YulFunctionCall","src":"2778:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2753:6:46"},"nodeType":"YulFunctionCall","src":"2753:74:46"},"nodeType":"YulExpressionStatement","src":"2753:74:46"}]},{"nodeType":"YulBlock","src":"2848:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2882:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2896:3:46","type":"","value":"160"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2886:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2924:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2931:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2920:3:46"},"nodeType":"YulFunctionCall","src":"2920:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2962:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2973:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2958:3:46"},"nodeType":"YulFunctionCall","src":"2958:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"2982:3:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"2938:19:46"},"nodeType":"YulFunctionCall","src":"2938:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2913:6:46"},"nodeType":"YulFunctionCall","src":"2913:74:46"},"nodeType":"YulExpressionStatement","src":"2913:74:46"}]}]},"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1635:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1646:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1654:5:46","type":""}],"src":"1583:1422:46"},{"body":{"nodeType":"YulBlock","src":"3062:86:46","statements":[{"nodeType":"YulAssignment","src":"3072:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3094:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"3081:12:46"},"nodeType":"YulFunctionCall","src":"3081:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"3072:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3136:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"3110:25:46"},"nodeType":"YulFunctionCall","src":"3110:32:46"},"nodeType":"YulExpressionStatement","src":"3110:32:46"}]},"name":"abi_decode_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"3040:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3048:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"3056:5:46","type":""}],"src":"3011:137:46"},{"body":{"nodeType":"YulBlock","src":"3205:86:46","statements":[{"nodeType":"YulAssignment","src":"3215:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3237:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"3224:12:46"},"nodeType":"YulFunctionCall","src":"3224:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"3215:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3279:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"3253:25:46"},"nodeType":"YulFunctionCall","src":"3253:32:46"},"nodeType":"YulExpressionStatement","src":"3253:32:46"}]},"name":"abi_decode_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"3183:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3191:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"3199:5:46","type":""}],"src":"3154:137:46"},{"body":{"nodeType":"YulBlock","src":"3347:85:46","statements":[{"nodeType":"YulAssignment","src":"3357:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3379:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"3366:12:46"},"nodeType":"YulFunctionCall","src":"3366:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"3357:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3420:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"3395:24:46"},"nodeType":"YulFunctionCall","src":"3395:31:46"},"nodeType":"YulExpressionStatement","src":"3395:31:46"}]},"name":"abi_decode_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"3325:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3333:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"3341:5:46","type":""}],"src":"3297:135:46"},{"body":{"nodeType":"YulBlock","src":"3513:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"3559:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"3561:77:46"},"nodeType":"YulFunctionCall","src":"3561:79:46"},"nodeType":"YulExpressionStatement","src":"3561:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"3534:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3543:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3530:3:46"},"nodeType":"YulFunctionCall","src":"3530:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"3555:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3526:3:46"},"nodeType":"YulFunctionCall","src":"3526:32:46"},"nodeType":"YulIf","src":"3523:119:46"},{"nodeType":"YulBlock","src":"3652:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3667:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3698:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3709:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3694:3:46"},"nodeType":"YulFunctionCall","src":"3694:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"3681:12:46"},"nodeType":"YulFunctionCall","src":"3681:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3671:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3759:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"3761:77:46"},"nodeType":"YulFunctionCall","src":"3761:79:46"},"nodeType":"YulExpressionStatement","src":"3761:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3731:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"3739:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3728:2:46"},"nodeType":"YulFunctionCall","src":"3728:30:46"},"nodeType":"YulIf","src":"3725:117:46"},{"nodeType":"YulAssignment","src":"3856:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3900:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3911:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3896:3:46"},"nodeType":"YulFunctionCall","src":"3896:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3920:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"3866:29:46"},"nodeType":"YulFunctionCall","src":"3866:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"3856:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3483:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"3494:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"3506:6:46","type":""}],"src":"3438:507:46"},{"body":{"nodeType":"YulBlock","src":"4041:447:46","statements":[{"body":{"nodeType":"YulBlock","src":"4087:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"4089:77:46"},"nodeType":"YulFunctionCall","src":"4089:79:46"},"nodeType":"YulExpressionStatement","src":"4089:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"4062:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"4071:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"4058:3:46"},"nodeType":"YulFunctionCall","src":"4058:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"4083:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"4054:3:46"},"nodeType":"YulFunctionCall","src":"4054:32:46"},"nodeType":"YulIf","src":"4051:119:46"},{"nodeType":"YulBlock","src":"4180:301:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4195:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4226:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"4237:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4222:3:46"},"nodeType":"YulFunctionCall","src":"4222:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"4209:12:46"},"nodeType":"YulFunctionCall","src":"4209:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4199:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4287:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"4289:77:46"},"nodeType":"YulFunctionCall","src":"4289:79:46"},"nodeType":"YulExpressionStatement","src":"4289:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"4259:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4267:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4256:2:46"},"nodeType":"YulFunctionCall","src":"4256:30:46"},"nodeType":"YulIf","src":"4253:117:46"},{"nodeType":"YulAssignment","src":"4384:87:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4443:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4454:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4439:3:46"},"nodeType":"YulFunctionCall","src":"4439:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4463:7:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulIdentifier","src":"4394:44:46"},"nodeType":"YulFunctionCall","src":"4394:77:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"4384:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4011:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"4022:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"4034:6:46","type":""}],"src":"3951:537:46"},{"body":{"nodeType":"YulBlock","src":"4582:445:46","statements":[{"body":{"nodeType":"YulBlock","src":"4628:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"4630:77:46"},"nodeType":"YulFunctionCall","src":"4630:79:46"},"nodeType":"YulExpressionStatement","src":"4630:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"4603:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"4612:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"4599:3:46"},"nodeType":"YulFunctionCall","src":"4599:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"4624:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"4595:3:46"},"nodeType":"YulFunctionCall","src":"4595:32:46"},"nodeType":"YulIf","src":"4592:119:46"},{"nodeType":"YulBlock","src":"4721:299:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4736:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4767:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"4778:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4763:3:46"},"nodeType":"YulFunctionCall","src":"4763:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"4750:12:46"},"nodeType":"YulFunctionCall","src":"4750:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4740:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4828:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"4830:77:46"},"nodeType":"YulFunctionCall","src":"4830:79:46"},"nodeType":"YulExpressionStatement","src":"4830:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"4800:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4808:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4797:2:46"},"nodeType":"YulFunctionCall","src":"4797:30:46"},"nodeType":"YulIf","src":"4794:117:46"},{"nodeType":"YulAssignment","src":"4925:85:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4982:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4993:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4978:3:46"},"nodeType":"YulFunctionCall","src":"4978:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"5002:7:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"4935:42:46"},"nodeType":"YulFunctionCall","src":"4935:75:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"4925:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4552:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"4563:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"4575:6:46","type":""}],"src":"4494:533:46"},{"body":{"nodeType":"YulBlock","src":"5119:105:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"5169:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5177:3:46"}],"functionName":{"name":"abi_encode_t_int128_to_t_int128_library","nodeType":"YulIdentifier","src":"5129:39:46"},"nodeType":"YulFunctionCall","src":"5129:52:46"},"nodeType":"YulExpressionStatement","src":"5129:52:46"},{"nodeType":"YulAssignment","src":"5190:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5208:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5213:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5204:3:46"},"nodeType":"YulFunctionCall","src":"5204:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"5190:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_int128_to_t_int128_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"5092:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5100:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"5108:10:46","type":""}],"src":"5033:191:46"},{"body":{"nodeType":"YulBlock","src":"5314:103:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"5362:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5370:3:46"}],"functionName":{"name":"abi_encode_t_int32_to_t_int32_library","nodeType":"YulIdentifier","src":"5324:37:46"},"nodeType":"YulFunctionCall","src":"5324:50:46"},"nodeType":"YulExpressionStatement","src":"5324:50:46"},{"nodeType":"YulAssignment","src":"5383:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5401:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5406:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5397:3:46"},"nodeType":"YulFunctionCall","src":"5397:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"5383:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_int32_to_t_int32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"5287:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5295:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"5303:10:46","type":""}],"src":"5230:187:46"},{"body":{"nodeType":"YulBlock","src":"5531:104:46","statements":[{"nodeType":"YulAssignment","src":"5541:88:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"5617:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5625:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulIdentifier","src":"5555:61:46"},"nodeType":"YulFunctionCall","src":"5555:74:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"5541:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"5504:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5512:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"5520:10:46","type":""}],"src":"5423:212:46"},{"body":{"nodeType":"YulBlock","src":"5727:105:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"5777:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5785:3:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"5737:39:46"},"nodeType":"YulFunctionCall","src":"5737:52:46"},"nodeType":"YulExpressionStatement","src":"5737:52:46"},{"nodeType":"YulAssignment","src":"5798:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5816:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5821:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5812:3:46"},"nodeType":"YulFunctionCall","src":"5812:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"5798:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_uint64_to_t_uint64_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"5700:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5708:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"5716:10:46","type":""}],"src":"5641:191:46"},{"body":{"nodeType":"YulBlock","src":"5996:618:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6006:67:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6067:5:46"}],"functionName":{"name":"array_length_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"6020:46:46"},"nodeType":"YulFunctionCall","src":"6020:53:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"6010:6:46","type":""}]},{"nodeType":"YulAssignment","src":"6082:100:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6170:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6175:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"6089:80:46"},"nodeType":"YulFunctionCall","src":"6089:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6082:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"6191:70:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6255:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"6206:48:46"},"nodeType":"YulFunctionCall","src":"6206:55:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"6195:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"6270:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"6284:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"6274:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6360:229:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6374:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"6401:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6395:5:46"},"nodeType":"YulFunctionCall","src":"6395:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"6378:13:46","type":""}]},{"nodeType":"YulAssignment","src":"6421:76:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"6478:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"6493:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_int128_to_t_int128_library","nodeType":"YulIdentifier","src":"6428:49:46"},"nodeType":"YulFunctionCall","src":"6428:69:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6421:3:46"}]},{"nodeType":"YulAssignment","src":"6510:69:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"6572:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"6520:51:46"},"nodeType":"YulFunctionCall","src":"6520:59:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"6510:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"6322:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"6325:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6319:2:46"},"nodeType":"YulFunctionCall","src":"6319:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"6333:18:46","statements":[{"nodeType":"YulAssignment","src":"6335:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"6344:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"6347:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6340:3:46"},"nodeType":"YulFunctionCall","src":"6340:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"6335:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"6304:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6306:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"6315:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"6310:1:46","type":""}]}]},"src":"6300:289:46"},{"nodeType":"YulAssignment","src":"6598:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"6605:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"6598:3:46"}]}]},"name":"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5975:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5982:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"5991:3:46","type":""}],"src":"5866:748:46"},{"body":{"nodeType":"YulBlock","src":"6774:612:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6784:66:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6844:5:46"}],"functionName":{"name":"array_length_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"6798:45:46"},"nodeType":"YulFunctionCall","src":"6798:52:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"6788:6:46","type":""}]},{"nodeType":"YulAssignment","src":"6859:99:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6946:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6951:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"6866:79:46"},"nodeType":"YulFunctionCall","src":"6866:92:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6859:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"6967:69:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7030:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"6982:47:46"},"nodeType":"YulFunctionCall","src":"6982:54:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"6971:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"7045:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"7059:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"7049:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"7135:226:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7149:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"7176:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"7170:5:46"},"nodeType":"YulFunctionCall","src":"7170:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"7153:13:46","type":""}]},{"nodeType":"YulAssignment","src":"7196:74:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"7251:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"7266:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_int32_to_t_int32_library","nodeType":"YulIdentifier","src":"7203:47:46"},"nodeType":"YulFunctionCall","src":"7203:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7196:3:46"}]},{"nodeType":"YulAssignment","src":"7283:68:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"7344:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"7293:50:46"},"nodeType":"YulFunctionCall","src":"7293:58:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"7283:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"7097:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"7100:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"7094:2:46"},"nodeType":"YulFunctionCall","src":"7094:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"7108:18:46","statements":[{"nodeType":"YulAssignment","src":"7110:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"7119:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"7122:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7115:3:46"},"nodeType":"YulFunctionCall","src":"7115:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"7110:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"7079:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7081:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"7090:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"7085:1:46","type":""}]}]},"src":"7075:286:46"},{"nodeType":"YulAssignment","src":"7370:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"7377:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"7370:3:46"}]}]},"name":"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"6753:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"6760:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"6769:3:46","type":""}],"src":"6646:740:46"},{"body":{"nodeType":"YulBlock","src":"7572:863:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7582:78:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7654:5:46"}],"functionName":{"name":"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"7596:57:46"},"nodeType":"YulFunctionCall","src":"7596:64:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"7586:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7669:111:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7768:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"7773:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"7676:91:46"},"nodeType":"YulFunctionCall","src":"7676:104:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7669:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"7789:20:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"7806:3:46"},"variables":[{"name":"headStart","nodeType":"YulTypedName","src":"7793:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"7818:39:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7834:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"7843:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7851:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"7839:3:46"},"nodeType":"YulFunctionCall","src":"7839:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7830:3:46"},"nodeType":"YulFunctionCall","src":"7830:27:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"7822:4:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"7866:81:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7941:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"7881:59:46"},"nodeType":"YulFunctionCall","src":"7881:66:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"7870:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"7956:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"7970:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"7960:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"8046:344:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8067:3:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"8076:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"8082:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8072:3:46"},"nodeType":"YulFunctionCall","src":"8072:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8060:6:46"},"nodeType":"YulFunctionCall","src":"8060:33:46"},"nodeType":"YulExpressionStatement","src":"8060:33:46"},{"nodeType":"YulVariableDeclaration","src":"8106:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"8133:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8127:5:46"},"nodeType":"YulFunctionCall","src":"8127:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"8110:13:46","type":""}]},{"nodeType":"YulAssignment","src":"8153:100:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"8233:13:46"},{"name":"tail","nodeType":"YulIdentifier","src":"8248:4:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulIdentifier","src":"8161:71:46"},"nodeType":"YulFunctionCall","src":"8161:92:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"8153:4:46"}]},{"nodeType":"YulAssignment","src":"8266:80:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"8339:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"8276:62:46"},"nodeType":"YulFunctionCall","src":"8276:70:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"8266:6:46"}]},{"nodeType":"YulAssignment","src":"8359:21:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8370:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8375:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8366:3:46"},"nodeType":"YulFunctionCall","src":"8366:14:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8359:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"8008:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"8011:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"8005:2:46"},"nodeType":"YulFunctionCall","src":"8005:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"8019:18:46","statements":[{"nodeType":"YulAssignment","src":"8021:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"8030:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"8033:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8026:3:46"},"nodeType":"YulFunctionCall","src":"8026:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"8021:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"7990:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"7992:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"8001:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"7996:1:46","type":""}]}]},"src":"7986:404:46"},{"nodeType":"YulAssignment","src":"8399:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"8406:4:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8399:3:46"}]},{"nodeType":"YulAssignment","src":"8419:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"8426:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8419:3:46"}]}]},"name":"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"7551:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"7558:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7567:3:46","type":""}],"src":"7420:1015:46"},{"body":{"nodeType":"YulBlock","src":"8599:618:46","statements":[{"nodeType":"YulVariableDeclaration","src":"8609:67:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"8670:5:46"}],"functionName":{"name":"array_length_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"8623:46:46"},"nodeType":"YulFunctionCall","src":"8623:53:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"8613:6:46","type":""}]},{"nodeType":"YulAssignment","src":"8685:100:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8773:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"8778:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"8692:80:46"},"nodeType":"YulFunctionCall","src":"8692:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8685:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"8794:70:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"8858:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"8809:48:46"},"nodeType":"YulFunctionCall","src":"8809:55:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"8798:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"8873:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"8887:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"8877:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"8963:229:46","statements":[{"nodeType":"YulVariableDeclaration","src":"8977:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"9004:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8998:5:46"},"nodeType":"YulFunctionCall","src":"8998:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"8981:13:46","type":""}]},{"nodeType":"YulAssignment","src":"9024:76:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"9081:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"9096:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"9031:49:46"},"nodeType":"YulFunctionCall","src":"9031:69:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"9024:3:46"}]},{"nodeType":"YulAssignment","src":"9113:69:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"9175:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"9123:51:46"},"nodeType":"YulFunctionCall","src":"9123:59:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"9113:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"8925:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"8928:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"8922:2:46"},"nodeType":"YulFunctionCall","src":"8922:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"8936:18:46","statements":[{"nodeType":"YulAssignment","src":"8938:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"8947:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"8950:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8943:3:46"},"nodeType":"YulFunctionCall","src":"8943:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"8938:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"8907:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"8909:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"8918:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"8913:1:46","type":""}]}]},"src":"8903:289:46"},{"nodeType":"YulAssignment","src":"9201:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"9208:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"9201:3:46"}]}]},"name":"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"8578:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"8585:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"8594:3:46","type":""}],"src":"8469:748:46"},{"body":{"nodeType":"YulBlock","src":"9290:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9307:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9327:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"9312:14:46"},"nodeType":"YulFunctionCall","src":"9312:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9300:6:46"},"nodeType":"YulFunctionCall","src":"9300:34:46"},"nodeType":"YulExpressionStatement","src":"9300:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9278:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"9285:3:46","type":""}],"src":"9223:117:46"},{"body":{"nodeType":"YulBlock","src":"9419:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9436:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9459:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"9441:17:46"},"nodeType":"YulFunctionCall","src":"9441:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9429:6:46"},"nodeType":"YulFunctionCall","src":"9429:37:46"},"nodeType":"YulExpressionStatement","src":"9429:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9407:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"9414:3:46","type":""}],"src":"9346:126:46"},{"body":{"nodeType":"YulBlock","src":"9576:278:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9586:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9632:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"9600:31:46"},"nodeType":"YulFunctionCall","src":"9600:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"9590:6:46","type":""}]},{"nodeType":"YulAssignment","src":"9647:85:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9720:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"9725:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"9654:65:46"},"nodeType":"YulFunctionCall","src":"9654:78:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"9647:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9767:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"9774:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9763:3:46"},"nodeType":"YulFunctionCall","src":"9763:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"9781:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"9786:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"9741:21:46"},"nodeType":"YulFunctionCall","src":"9741:52:46"},"nodeType":"YulExpressionStatement","src":"9741:52:46"},{"nodeType":"YulAssignment","src":"9802:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9813:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"9840:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"9818:21:46"},"nodeType":"YulFunctionCall","src":"9818:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9809:3:46"},"nodeType":"YulFunctionCall","src":"9809:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"9802:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9557:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"9564:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"9572:3:46","type":""}],"src":"9478:376:46"},{"body":{"nodeType":"YulBlock","src":"9948:268:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9958:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10004:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"9972:31:46"},"nodeType":"YulFunctionCall","src":"9972:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"9962:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10019:75:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10082:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"10087:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_library","nodeType":"YulIdentifier","src":"10026:55:46"},"nodeType":"YulFunctionCall","src":"10026:68:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"10019:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10129:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10136:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10125:3:46"},"nodeType":"YulFunctionCall","src":"10125:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"10143:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"10148:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"10103:21:46"},"nodeType":"YulFunctionCall","src":"10103:52:46"},"nodeType":"YulExpressionStatement","src":"10103:52:46"},{"nodeType":"YulAssignment","src":"10164:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10175:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"10202:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"10180:21:46"},"nodeType":"YulFunctionCall","src":"10180:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10171:3:46"},"nodeType":"YulFunctionCall","src":"10171:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"10164:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9929:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"9936:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"9944:3:46","type":""}],"src":"9860:356:46"},{"body":{"nodeType":"YulBlock","src":"10330:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10340:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10386:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"10354:31:46"},"nodeType":"YulFunctionCall","src":"10354:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"10344:6:46","type":""}]},{"nodeType":"YulAssignment","src":"10401:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10484:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"10489:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"10408:75:46"},"nodeType":"YulFunctionCall","src":"10408:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"10401:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10531:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10538:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10527:3:46"},"nodeType":"YulFunctionCall","src":"10527:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"10545:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"10550:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"10505:21:46"},"nodeType":"YulFunctionCall","src":"10505:52:46"},"nodeType":"YulExpressionStatement","src":"10505:52:46"},{"nodeType":"YulAssignment","src":"10566:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10577:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"10582:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10573:3:46"},"nodeType":"YulFunctionCall","src":"10573:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"10566:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"10311:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"10318:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"10326:3:46","type":""}],"src":"10222:373:46"},{"body":{"nodeType":"YulBlock","src":"10672:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10689:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10711:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"10694:16:46"},"nodeType":"YulFunctionCall","src":"10694:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10682:6:46"},"nodeType":"YulFunctionCall","src":"10682:36:46"},"nodeType":"YulExpressionStatement","src":"10682:36:46"}]},"name":"abi_encode_t_int128_to_t_int128_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"10660:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"10667:3:46","type":""}],"src":"10601:123:46"},{"body":{"nodeType":"YulBlock","src":"10791:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10808:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10830:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"10813:16:46"},"nodeType":"YulFunctionCall","src":"10813:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10801:6:46"},"nodeType":"YulFunctionCall","src":"10801:36:46"},"nodeType":"YulExpressionStatement","src":"10801:36:46"}]},"name":"abi_encode_t_int128_to_t_int128_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"10779:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"10786:3:46","type":""}],"src":"10730:113:46"},{"body":{"nodeType":"YulBlock","src":"10918:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10935:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10956:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"10940:15:46"},"nodeType":"YulFunctionCall","src":"10940:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10928:6:46"},"nodeType":"YulFunctionCall","src":"10928:35:46"},"nodeType":"YulExpressionStatement","src":"10928:35:46"}]},"name":"abi_encode_t_int32_to_t_int32_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"10906:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"10913:3:46","type":""}],"src":"10849:120:46"},{"body":{"nodeType":"YulBlock","src":"11034:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11051:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11072:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"11056:15:46"},"nodeType":"YulFunctionCall","src":"11056:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11044:6:46"},"nodeType":"YulFunctionCall","src":"11044:35:46"},"nodeType":"YulExpressionStatement","src":"11044:35:46"}]},"name":"abi_encode_t_int32_to_t_int32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"11022:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"11029:3:46","type":""}],"src":"10975:110:46"},{"body":{"nodeType":"YulBlock","src":"11191:280:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11201:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11248:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"11215:32:46"},"nodeType":"YulFunctionCall","src":"11215:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"11205:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11263:86:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11337:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"11342:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"11270:66:46"},"nodeType":"YulFunctionCall","src":"11270:79:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"11263:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11384:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11391:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11380:3:46"},"nodeType":"YulFunctionCall","src":"11380:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"11398:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"11403:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"11358:21:46"},"nodeType":"YulFunctionCall","src":"11358:52:46"},"nodeType":"YulExpressionStatement","src":"11358:52:46"},{"nodeType":"YulAssignment","src":"11419:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11430:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"11457:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"11435:21:46"},"nodeType":"YulFunctionCall","src":"11435:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11426:3:46"},"nodeType":"YulFunctionCall","src":"11426:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"11419:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"11172:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"11179:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"11187:3:46","type":""}],"src":"11091:380:46"},{"body":{"nodeType":"YulBlock","src":"11567:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11577:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11624:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"11591:32:46"},"nodeType":"YulFunctionCall","src":"11591:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"11581:6:46","type":""}]},{"nodeType":"YulAssignment","src":"11639:76:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11703:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"11708:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_library","nodeType":"YulIdentifier","src":"11646:56:46"},"nodeType":"YulFunctionCall","src":"11646:69:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"11639:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11750:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11757:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11746:3:46"},"nodeType":"YulFunctionCall","src":"11746:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"11764:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"11769:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"11724:21:46"},"nodeType":"YulFunctionCall","src":"11724:52:46"},"nodeType":"YulExpressionStatement","src":"11724:52:46"},{"nodeType":"YulAssignment","src":"11785:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11796:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"11823:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"11801:21:46"},"nodeType":"YulFunctionCall","src":"11801:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11792:3:46"},"nodeType":"YulFunctionCall","src":"11792:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"11785:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"11548:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"11555:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"11563:3:46","type":""}],"src":"11477:360:46"},{"body":{"nodeType":"YulBlock","src":"11989:220:46","statements":[{"nodeType":"YulAssignment","src":"11999:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12065:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12070:2:46","type":"","value":"53"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"12006:58:46"},"nodeType":"YulFunctionCall","src":"12006:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"11999:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12171:3:46"}],"functionName":{"name":"store_literal_in_memory_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758","nodeType":"YulIdentifier","src":"12082:88:46"},"nodeType":"YulFunctionCall","src":"12082:93:46"},"nodeType":"YulExpressionStatement","src":"12082:93:46"},{"nodeType":"YulAssignment","src":"12184:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12195:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12200:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12191:3:46"},"nodeType":"YulFunctionCall","src":"12191:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"12184:3:46"}]}]},"name":"abi_encode_t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"11977:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"11985:3:46","type":""}],"src":"11843:366:46"},{"body":{"nodeType":"YulBlock","src":"12361:220:46","statements":[{"nodeType":"YulAssignment","src":"12371:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12437:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12442:2:46","type":"","value":"84"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"12378:58:46"},"nodeType":"YulFunctionCall","src":"12378:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"12371:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12543:3:46"}],"functionName":{"name":"store_literal_in_memory_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e","nodeType":"YulIdentifier","src":"12454:88:46"},"nodeType":"YulFunctionCall","src":"12454:93:46"},"nodeType":"YulExpressionStatement","src":"12454:93:46"},{"nodeType":"YulAssignment","src":"12556:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12567:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12572:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12563:3:46"},"nodeType":"YulFunctionCall","src":"12563:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"12556:3:46"}]}]},"name":"abi_encode_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"12349:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"12357:3:46","type":""}],"src":"12215:366:46"},{"body":{"nodeType":"YulBlock","src":"12733:220:46","statements":[{"nodeType":"YulAssignment","src":"12743:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12809:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12814:2:46","type":"","value":"81"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"12750:58:46"},"nodeType":"YulFunctionCall","src":"12750:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"12743:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12915:3:46"}],"functionName":{"name":"store_literal_in_memory_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0","nodeType":"YulIdentifier","src":"12826:88:46"},"nodeType":"YulFunctionCall","src":"12826:93:46"},"nodeType":"YulExpressionStatement","src":"12826:93:46"},{"nodeType":"YulAssignment","src":"12928:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12939:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"12944:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12935:3:46"},"nodeType":"YulFunctionCall","src":"12935:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"12928:3:46"}]}]},"name":"abi_encode_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"12721:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"12729:3:46","type":""}],"src":"12587:366:46"},{"body":{"nodeType":"YulBlock","src":"13105:220:46","statements":[{"nodeType":"YulAssignment","src":"13115:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13181:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"13186:2:46","type":"","value":"73"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"13122:58:46"},"nodeType":"YulFunctionCall","src":"13122:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13115:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13287:3:46"}],"functionName":{"name":"store_literal_in_memory_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804","nodeType":"YulIdentifier","src":"13198:88:46"},"nodeType":"YulFunctionCall","src":"13198:93:46"},"nodeType":"YulExpressionStatement","src":"13198:93:46"},{"nodeType":"YulAssignment","src":"13300:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13311:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"13316:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13307:3:46"},"nodeType":"YulFunctionCall","src":"13307:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"13300:3:46"}]}]},"name":"abi_encode_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"13093:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"13101:3:46","type":""}],"src":"12959:366:46"},{"body":{"nodeType":"YulBlock","src":"13477:220:46","statements":[{"nodeType":"YulAssignment","src":"13487:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13553:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"13558:2:46","type":"","value":"84"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"13494:58:46"},"nodeType":"YulFunctionCall","src":"13494:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13487:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13659:3:46"}],"functionName":{"name":"store_literal_in_memory_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865","nodeType":"YulIdentifier","src":"13570:88:46"},"nodeType":"YulFunctionCall","src":"13570:93:46"},"nodeType":"YulExpressionStatement","src":"13570:93:46"},{"nodeType":"YulAssignment","src":"13672:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13683:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"13688:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13679:3:46"},"nodeType":"YulFunctionCall","src":"13679:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"13672:3:46"}]}]},"name":"abi_encode_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"13465:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"13473:3:46","type":""}],"src":"13331:366:46"},{"body":{"nodeType":"YulBlock","src":"13849:220:46","statements":[{"nodeType":"YulAssignment","src":"13859:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"13925:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"13930:2:46","type":"","value":"53"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"13866:58:46"},"nodeType":"YulFunctionCall","src":"13866:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13859:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14031:3:46"}],"functionName":{"name":"store_literal_in_memory_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271","nodeType":"YulIdentifier","src":"13942:88:46"},"nodeType":"YulFunctionCall","src":"13942:93:46"},"nodeType":"YulExpressionStatement","src":"13942:93:46"},{"nodeType":"YulAssignment","src":"14044:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14055:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14060:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14051:3:46"},"nodeType":"YulFunctionCall","src":"14051:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"14044:3:46"}]}]},"name":"abi_encode_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"13837:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"13845:3:46","type":""}],"src":"13703:366:46"},{"body":{"nodeType":"YulBlock","src":"14221:220:46","statements":[{"nodeType":"YulAssignment","src":"14231:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14297:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14302:2:46","type":"","value":"65"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14238:58:46"},"nodeType":"YulFunctionCall","src":"14238:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"14231:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14403:3:46"}],"functionName":{"name":"store_literal_in_memory_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","nodeType":"YulIdentifier","src":"14314:88:46"},"nodeType":"YulFunctionCall","src":"14314:93:46"},"nodeType":"YulExpressionStatement","src":"14314:93:46"},{"nodeType":"YulAssignment","src":"14416:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14427:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14432:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14423:3:46"},"nodeType":"YulFunctionCall","src":"14423:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"14416:3:46"}]}]},"name":"abi_encode_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"14209:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"14217:3:46","type":""}],"src":"14075:366:46"},{"body":{"nodeType":"YulBlock","src":"14593:220:46","statements":[{"nodeType":"YulAssignment","src":"14603:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14669:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14674:2:46","type":"","value":"87"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14610:58:46"},"nodeType":"YulFunctionCall","src":"14610:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"14603:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14775:3:46"}],"functionName":{"name":"store_literal_in_memory_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567","nodeType":"YulIdentifier","src":"14686:88:46"},"nodeType":"YulFunctionCall","src":"14686:93:46"},"nodeType":"YulExpressionStatement","src":"14686:93:46"},{"nodeType":"YulAssignment","src":"14788:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"14799:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"14804:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14795:3:46"},"nodeType":"YulFunctionCall","src":"14795:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"14788:3:46"}]}]},"name":"abi_encode_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"14581:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"14589:3:46","type":""}],"src":"14447:366:46"},{"body":{"nodeType":"YulBlock","src":"14965:220:46","statements":[{"nodeType":"YulAssignment","src":"14975:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15041:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15046:2:46","type":"","value":"83"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14982:58:46"},"nodeType":"YulFunctionCall","src":"14982:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"14975:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15147:3:46"}],"functionName":{"name":"store_literal_in_memory_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf","nodeType":"YulIdentifier","src":"15058:88:46"},"nodeType":"YulFunctionCall","src":"15058:93:46"},"nodeType":"YulExpressionStatement","src":"15058:93:46"},{"nodeType":"YulAssignment","src":"15160:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15171:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15176:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15167:3:46"},"nodeType":"YulFunctionCall","src":"15167:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"15160:3:46"}]}]},"name":"abi_encode_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"14953:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"14961:3:46","type":""}],"src":"14819:366:46"},{"body":{"nodeType":"YulBlock","src":"15337:220:46","statements":[{"nodeType":"YulAssignment","src":"15347:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15413:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15418:2:46","type":"","value":"43"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"15354:58:46"},"nodeType":"YulFunctionCall","src":"15354:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"15347:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15519:3:46"}],"functionName":{"name":"store_literal_in_memory_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8","nodeType":"YulIdentifier","src":"15430:88:46"},"nodeType":"YulFunctionCall","src":"15430:93:46"},"nodeType":"YulExpressionStatement","src":"15430:93:46"},{"nodeType":"YulAssignment","src":"15532:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15543:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15548:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15539:3:46"},"nodeType":"YulFunctionCall","src":"15539:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"15532:3:46"}]}]},"name":"abi_encode_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"15325:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"15333:3:46","type":""}],"src":"15191:366:46"},{"body":{"nodeType":"YulBlock","src":"15709:220:46","statements":[{"nodeType":"YulAssignment","src":"15719:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15785:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15790:2:46","type":"","value":"60"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"15726:58:46"},"nodeType":"YulFunctionCall","src":"15726:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"15719:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15891:3:46"}],"functionName":{"name":"store_literal_in_memory_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d","nodeType":"YulIdentifier","src":"15802:88:46"},"nodeType":"YulFunctionCall","src":"15802:93:46"},"nodeType":"YulExpressionStatement","src":"15802:93:46"},{"nodeType":"YulAssignment","src":"15904:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"15915:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"15920:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15911:3:46"},"nodeType":"YulFunctionCall","src":"15911:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"15904:3:46"}]}]},"name":"abi_encode_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"15697:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"15705:3:46","type":""}],"src":"15563:366:46"},{"body":{"nodeType":"YulBlock","src":"16081:220:46","statements":[{"nodeType":"YulAssignment","src":"16091:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16157:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16162:2:46","type":"","value":"83"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16098:58:46"},"nodeType":"YulFunctionCall","src":"16098:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"16091:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16263:3:46"}],"functionName":{"name":"store_literal_in_memory_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1","nodeType":"YulIdentifier","src":"16174:88:46"},"nodeType":"YulFunctionCall","src":"16174:93:46"},"nodeType":"YulExpressionStatement","src":"16174:93:46"},{"nodeType":"YulAssignment","src":"16276:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16287:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16292:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16283:3:46"},"nodeType":"YulFunctionCall","src":"16283:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"16276:3:46"}]}]},"name":"abi_encode_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"16069:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"16077:3:46","type":""}],"src":"15935:366:46"},{"body":{"nodeType":"YulBlock","src":"16453:220:46","statements":[{"nodeType":"YulAssignment","src":"16463:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16529:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16534:2:46","type":"","value":"41"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16470:58:46"},"nodeType":"YulFunctionCall","src":"16470:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"16463:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16635:3:46"}],"functionName":{"name":"store_literal_in_memory_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175","nodeType":"YulIdentifier","src":"16546:88:46"},"nodeType":"YulFunctionCall","src":"16546:93:46"},"nodeType":"YulExpressionStatement","src":"16546:93:46"},{"nodeType":"YulAssignment","src":"16648:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16659:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16664:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16655:3:46"},"nodeType":"YulFunctionCall","src":"16655:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"16648:3:46"}]}]},"name":"abi_encode_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"16441:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"16449:3:46","type":""}],"src":"16307:366:46"},{"body":{"nodeType":"YulBlock","src":"16825:220:46","statements":[{"nodeType":"YulAssignment","src":"16835:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16901:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16906:2:46","type":"","value":"92"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16842:58:46"},"nodeType":"YulFunctionCall","src":"16842:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"16835:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17007:3:46"}],"functionName":{"name":"store_literal_in_memory_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73","nodeType":"YulIdentifier","src":"16918:88:46"},"nodeType":"YulFunctionCall","src":"16918:93:46"},"nodeType":"YulExpressionStatement","src":"16918:93:46"},{"nodeType":"YulAssignment","src":"17020:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17031:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17036:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17027:3:46"},"nodeType":"YulFunctionCall","src":"17027:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"17020:3:46"}]}]},"name":"abi_encode_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"16813:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"16821:3:46","type":""}],"src":"16679:366:46"},{"body":{"nodeType":"YulBlock","src":"17197:220:46","statements":[{"nodeType":"YulAssignment","src":"17207:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17273:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17278:2:46","type":"","value":"33"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"17214:58:46"},"nodeType":"YulFunctionCall","src":"17214:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"17207:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17379:3:46"}],"functionName":{"name":"store_literal_in_memory_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea","nodeType":"YulIdentifier","src":"17290:88:46"},"nodeType":"YulFunctionCall","src":"17290:93:46"},"nodeType":"YulExpressionStatement","src":"17290:93:46"},{"nodeType":"YulAssignment","src":"17392:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17403:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17408:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17399:3:46"},"nodeType":"YulFunctionCall","src":"17399:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"17392:3:46"}]}]},"name":"abi_encode_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"17185:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"17193:3:46","type":""}],"src":"17051:366:46"},{"body":{"nodeType":"YulBlock","src":"17569:220:46","statements":[{"nodeType":"YulAssignment","src":"17579:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17645:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17650:2:46","type":"","value":"87"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"17586:58:46"},"nodeType":"YulFunctionCall","src":"17586:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"17579:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17751:3:46"}],"functionName":{"name":"store_literal_in_memory_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae","nodeType":"YulIdentifier","src":"17662:88:46"},"nodeType":"YulFunctionCall","src":"17662:93:46"},"nodeType":"YulExpressionStatement","src":"17662:93:46"},{"nodeType":"YulAssignment","src":"17764:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"17775:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"17780:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17771:3:46"},"nodeType":"YulFunctionCall","src":"17771:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"17764:3:46"}]}]},"name":"abi_encode_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"17557:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"17565:3:46","type":""}],"src":"17423:366:46"},{"body":{"nodeType":"YulBlock","src":"17941:220:46","statements":[{"nodeType":"YulAssignment","src":"17951:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18017:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18022:2:46","type":"","value":"83"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"17958:58:46"},"nodeType":"YulFunctionCall","src":"17958:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"17951:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18123:3:46"}],"functionName":{"name":"store_literal_in_memory_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c","nodeType":"YulIdentifier","src":"18034:88:46"},"nodeType":"YulFunctionCall","src":"18034:93:46"},"nodeType":"YulExpressionStatement","src":"18034:93:46"},{"nodeType":"YulAssignment","src":"18136:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18147:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18152:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18143:3:46"},"nodeType":"YulFunctionCall","src":"18143:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"18136:3:46"}]}]},"name":"abi_encode_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"17929:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"17937:3:46","type":""}],"src":"17795:366:46"},{"body":{"nodeType":"YulBlock","src":"18313:220:46","statements":[{"nodeType":"YulAssignment","src":"18323:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18389:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18394:2:46","type":"","value":"91"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"18330:58:46"},"nodeType":"YulFunctionCall","src":"18330:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"18323:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18495:3:46"}],"functionName":{"name":"store_literal_in_memory_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad","nodeType":"YulIdentifier","src":"18406:88:46"},"nodeType":"YulFunctionCall","src":"18406:93:46"},"nodeType":"YulExpressionStatement","src":"18406:93:46"},{"nodeType":"YulAssignment","src":"18508:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18519:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18524:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18515:3:46"},"nodeType":"YulFunctionCall","src":"18515:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"18508:3:46"}]}]},"name":"abi_encode_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"18301:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"18309:3:46","type":""}],"src":"18167:366:46"},{"body":{"nodeType":"YulBlock","src":"18685:220:46","statements":[{"nodeType":"YulAssignment","src":"18695:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18761:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18766:2:46","type":"","value":"43"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"18702:58:46"},"nodeType":"YulFunctionCall","src":"18702:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"18695:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18867:3:46"}],"functionName":{"name":"store_literal_in_memory_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b","nodeType":"YulIdentifier","src":"18778:88:46"},"nodeType":"YulFunctionCall","src":"18778:93:46"},"nodeType":"YulExpressionStatement","src":"18778:93:46"},{"nodeType":"YulAssignment","src":"18880:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"18891:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"18896:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18887:3:46"},"nodeType":"YulFunctionCall","src":"18887:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"18880:3:46"}]}]},"name":"abi_encode_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"18673:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"18681:3:46","type":""}],"src":"18539:366:46"},{"body":{"nodeType":"YulBlock","src":"19083:496:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19093:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19109:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"19114:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19105:3:46"},"nodeType":"YulFunctionCall","src":"19105:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"19097:4:46","type":""}]},{"nodeType":"YulBlock","src":"19129:241:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19164:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19194:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"19201:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19190:3:46"},"nodeType":"YulFunctionCall","src":"19190:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"19184:5:46"},"nodeType":"YulFunctionCall","src":"19184:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"19168:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19232:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"19237:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19228:3:46"},"nodeType":"YulFunctionCall","src":"19228:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"19248:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"19254:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19244:3:46"},"nodeType":"YulFunctionCall","src":"19244:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19221:6:46"},"nodeType":"YulFunctionCall","src":"19221:38:46"},"nodeType":"YulExpressionStatement","src":"19221:38:46"},{"nodeType":"YulAssignment","src":"19272:87:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"19340:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"19354:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library","nodeType":"YulIdentifier","src":"19280:59:46"},"nodeType":"YulFunctionCall","src":"19280:79:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19272:4:46"}]}]},{"nodeType":"YulBlock","src":"19380:172:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19417:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19447:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"19454:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19443:3:46"},"nodeType":"YulFunctionCall","src":"19443:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"19437:5:46"},"nodeType":"YulFunctionCall","src":"19437:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"19421:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"19513:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19531:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"19536:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19527:3:46"},"nodeType":"YulFunctionCall","src":"19527:14:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_library","nodeType":"YulIdentifier","src":"19473:39:46"},"nodeType":"YulFunctionCall","src":"19473:69:46"},"nodeType":"YulExpressionStatement","src":"19473:69:46"}]},{"nodeType":"YulAssignment","src":"19562:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"19569:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"19562:3:46"}]}]},"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19062:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19069:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"19078:3:46","type":""}],"src":"18963:616:46"},{"body":{"nodeType":"YulBlock","src":"19759:1267:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19769:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19785:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"19790:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19781:3:46"},"nodeType":"YulFunctionCall","src":"19781:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"19773:4:46","type":""}]},{"nodeType":"YulBlock","src":"19805:273:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19842:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19872:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"19879:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19868:3:46"},"nodeType":"YulFunctionCall","src":"19868:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"19862:5:46"},"nodeType":"YulFunctionCall","src":"19862:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"19846:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"19910:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"19915:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19906:3:46"},"nodeType":"YulFunctionCall","src":"19906:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"19926:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"19932:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19922:3:46"},"nodeType":"YulFunctionCall","src":"19922:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19899:6:46"},"nodeType":"YulFunctionCall","src":"19899:38:46"},"nodeType":"YulExpressionStatement","src":"19899:38:46"},{"nodeType":"YulAssignment","src":"19950:117:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"20048:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"20062:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulIdentifier","src":"19958:89:46"},"nodeType":"YulFunctionCall","src":"19958:109:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19950:4:46"}]}]},{"nodeType":"YulBlock","src":"20088:175:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20130:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20160:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20167:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20156:3:46"},"nodeType":"YulFunctionCall","src":"20156:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20150:5:46"},"nodeType":"YulFunctionCall","src":"20150:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"20134:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"20224:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"20242:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"20247:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20238:3:46"},"nodeType":"YulFunctionCall","src":"20238:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"20186:37:46"},"nodeType":"YulFunctionCall","src":"20186:67:46"},"nodeType":"YulExpressionStatement","src":"20186:67:46"}]},{"nodeType":"YulBlock","src":"20273:173:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20313:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20343:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20350:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20339:3:46"},"nodeType":"YulFunctionCall","src":"20339:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20333:5:46"},"nodeType":"YulFunctionCall","src":"20333:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"20317:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"20407:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"20425:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"20430:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20421:3:46"},"nodeType":"YulFunctionCall","src":"20421:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"20369:37:46"},"nodeType":"YulFunctionCall","src":"20369:67:46"},"nodeType":"YulExpressionStatement","src":"20369:67:46"}]},{"nodeType":"YulBlock","src":"20456:185:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20508:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20538:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20545:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20534:3:46"},"nodeType":"YulFunctionCall","src":"20534:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20528:5:46"},"nodeType":"YulFunctionCall","src":"20528:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"20512:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"20602:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"20620:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"20625:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20616:3:46"},"nodeType":"YulFunctionCall","src":"20616:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"20564:37:46"},"nodeType":"YulFunctionCall","src":"20564:67:46"},"nodeType":"YulExpressionStatement","src":"20564:67:46"}]},{"nodeType":"YulBlock","src":"20651:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20685:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20715:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20722:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20711:3:46"},"nodeType":"YulFunctionCall","src":"20711:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20705:5:46"},"nodeType":"YulFunctionCall","src":"20705:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"20689:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"20781:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"20799:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"20804:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20795:3:46"},"nodeType":"YulFunctionCall","src":"20795:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"20741:39:46"},"nodeType":"YulFunctionCall","src":"20741:69:46"},"nodeType":"YulExpressionStatement","src":"20741:69:46"}]},{"nodeType":"YulBlock","src":"20830:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20864:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20894:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20901:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20890:3:46"},"nodeType":"YulFunctionCall","src":"20890:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20884:5:46"},"nodeType":"YulFunctionCall","src":"20884:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"20868:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"20960:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"20978:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"20983:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20974:3:46"},"nodeType":"YulFunctionCall","src":"20974:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"20920:39:46"},"nodeType":"YulFunctionCall","src":"20920:69:46"},"nodeType":"YulExpressionStatement","src":"20920:69:46"}]},{"nodeType":"YulAssignment","src":"21009:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"21016:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"21009:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19738:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"19745:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"19754:3:46","type":""}],"src":"19633:1393:46"},{"body":{"nodeType":"YulBlock","src":"21093:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21110:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21132:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"21115:16:46"},"nodeType":"YulFunctionCall","src":"21115:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21103:6:46"},"nodeType":"YulFunctionCall","src":"21103:36:46"},"nodeType":"YulExpressionStatement","src":"21103:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21081:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"21088:3:46","type":""}],"src":"21032:113:46"},{"body":{"nodeType":"YulBlock","src":"21222:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21239:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21261:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"21244:16:46"},"nodeType":"YulFunctionCall","src":"21244:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21232:6:46"},"nodeType":"YulFunctionCall","src":"21232:36:46"},"nodeType":"YulExpressionStatement","src":"21232:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21210:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"21217:3:46","type":""}],"src":"21151:123:46"},{"body":{"nodeType":"YulBlock","src":"21341:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21358:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21380:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"21363:16:46"},"nodeType":"YulFunctionCall","src":"21363:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21351:6:46"},"nodeType":"YulFunctionCall","src":"21351:36:46"},"nodeType":"YulExpressionStatement","src":"21351:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21329:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"21336:3:46","type":""}],"src":"21280:113:46"},{"body":{"nodeType":"YulBlock","src":"21458:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21475:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21496:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"21480:15:46"},"nodeType":"YulFunctionCall","src":"21480:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21468:6:46"},"nodeType":"YulFunctionCall","src":"21468:35:46"},"nodeType":"YulExpressionStatement","src":"21468:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21446:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"21453:3:46","type":""}],"src":"21399:110:46"},{"body":{"nodeType":"YulBlock","src":"21594:70:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21611:3:46"},{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21650:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"21634:15:46"},"nodeType":"YulFunctionCall","src":"21634:22:46"}],"functionName":{"name":"leftAlign_t_uint8","nodeType":"YulIdentifier","src":"21616:17:46"},"nodeType":"YulFunctionCall","src":"21616:41:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21604:6:46"},"nodeType":"YulFunctionCall","src":"21604:54:46"},"nodeType":"YulExpressionStatement","src":"21604:54:46"}]},"name":"abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21582:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"21589:3:46","type":""}],"src":"21515:149:46"},{"body":{"nodeType":"YulBlock","src":"21850:247:46","statements":[{"nodeType":"YulAssignment","src":"21861:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"21948:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"21957:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"21868:79:46"},"nodeType":"YulFunctionCall","src":"21868:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"21861:3:46"}]},{"nodeType":"YulAssignment","src":"21971:100:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"22058:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"22067:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"21978:79:46"},"nodeType":"YulFunctionCall","src":"21978:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"21971:3:46"}]},{"nodeType":"YulAssignment","src":"22081:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"22088:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"22081:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"21821:3:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"21827:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"21835:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"21846:3:46","type":""}],"src":"21670:427:46"},{"body":{"nodeType":"YulBlock","src":"22261:245:46","statements":[{"nodeType":"YulAssignment","src":"22272:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22359:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"22368:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"22279:79:46"},"nodeType":"YulFunctionCall","src":"22279:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"22272:3:46"}]},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"22440:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"22449:3:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"22382:57:46"},"nodeType":"YulFunctionCall","src":"22382:71:46"},"nodeType":"YulExpressionStatement","src":"22382:71:46"},{"nodeType":"YulAssignment","src":"22462:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"22473:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"22478:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22469:3:46"},"nodeType":"YulFunctionCall","src":"22469:11:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"22462:3:46"}]},{"nodeType":"YulAssignment","src":"22490:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"22497:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"22490:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr_t_uint8__to_t_bytes_memory_ptr_t_uint8__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"22232:3:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"22238:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"22246:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"22257:3:46","type":""}],"src":"22103:403:46"},{"body":{"nodeType":"YulBlock","src":"22666:231:46","statements":[{"nodeType":"YulAssignment","src":"22676:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22688:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22699:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22684:3:46"},"nodeType":"YulFunctionCall","src":"22684:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"22676:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22723:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"22734:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22719:3:46"},"nodeType":"YulFunctionCall","src":"22719:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"22742:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"22748:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"22738:3:46"},"nodeType":"YulFunctionCall","src":"22738:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22712:6:46"},"nodeType":"YulFunctionCall","src":"22712:47:46"},"nodeType":"YulExpressionStatement","src":"22712:47:46"},{"nodeType":"YulAssignment","src":"22768:122:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22876:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"22885:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"22776:99:46"},"nodeType":"YulFunctionCall","src":"22776:114:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"22768:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"22638:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"22650:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"22661:4:46","type":""}],"src":"22512:385:46"},{"body":{"nodeType":"YulBlock","src":"23055:229:46","statements":[{"nodeType":"YulAssignment","src":"23065:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23077:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23088:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23073:3:46"},"nodeType":"YulFunctionCall","src":"23073:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23065:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23112:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23123:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23108:3:46"},"nodeType":"YulFunctionCall","src":"23108:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23131:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23137:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23127:3:46"},"nodeType":"YulFunctionCall","src":"23127:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23101:6:46"},"nodeType":"YulFunctionCall","src":"23101:47:46"},"nodeType":"YulExpressionStatement","src":"23101:47:46"},{"nodeType":"YulAssignment","src":"23157:120:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"23263:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"23272:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"23165:97:46"},"nodeType":"YulFunctionCall","src":"23165:112:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23157:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23027:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"23039:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"23050:4:46","type":""}],"src":"22903:381:46"},{"body":{"nodeType":"YulBlock","src":"23466:253:46","statements":[{"nodeType":"YulAssignment","src":"23476:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23488:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23499:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23484:3:46"},"nodeType":"YulFunctionCall","src":"23484:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23476:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23523:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23534:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23519:3:46"},"nodeType":"YulFunctionCall","src":"23519:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23542:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23548:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23538:3:46"},"nodeType":"YulFunctionCall","src":"23538:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23512:6:46"},"nodeType":"YulFunctionCall","src":"23512:47:46"},"nodeType":"YulExpressionStatement","src":"23512:47:46"},{"nodeType":"YulAssignment","src":"23568:144:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"23698:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"23707:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"23576:121:46"},"nodeType":"YulFunctionCall","src":"23576:136:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23568:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23438:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"23450:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"23461:4:46","type":""}],"src":"23290:429:46"},{"body":{"nodeType":"YulBlock","src":"23879:231:46","statements":[{"nodeType":"YulAssignment","src":"23889:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23901:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23912:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23897:3:46"},"nodeType":"YulFunctionCall","src":"23897:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23889:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"23936:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"23947:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23932:3:46"},"nodeType":"YulFunctionCall","src":"23932:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"23955:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"23961:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"23951:3:46"},"nodeType":"YulFunctionCall","src":"23951:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23925:6:46"},"nodeType":"YulFunctionCall","src":"23925:47:46"},"nodeType":"YulExpressionStatement","src":"23925:47:46"},{"nodeType":"YulAssignment","src":"23981:122:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"24089:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"24098:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"23989:99:46"},"nodeType":"YulFunctionCall","src":"23989:114:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"23981:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"23851:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"23863:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"23874:4:46","type":""}],"src":"23725:385:46"},{"body":{"nodeType":"YulBlock","src":"24216:126:46","statements":[{"nodeType":"YulAssignment","src":"24226:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24238:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24249:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24234:3:46"},"nodeType":"YulFunctionCall","src":"24234:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24226:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"24308:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24321:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24332:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24317:3:46"},"nodeType":"YulFunctionCall","src":"24317:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack_library","nodeType":"YulIdentifier","src":"24262:45:46"},"nodeType":"YulFunctionCall","src":"24262:73:46"},"nodeType":"YulExpressionStatement","src":"24262:73:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24188:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"24200:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"24211:4:46","type":""}],"src":"24116:226:46"},{"body":{"nodeType":"YulBlock","src":"24454:132:46","statements":[{"nodeType":"YulAssignment","src":"24464:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24476:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24487:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24472:3:46"},"nodeType":"YulFunctionCall","src":"24472:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24464:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"24552:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24565:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24576:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24561:3:46"},"nodeType":"YulFunctionCall","src":"24561:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack_library","nodeType":"YulIdentifier","src":"24500:51:46"},"nodeType":"YulFunctionCall","src":"24500:79:46"},"nodeType":"YulExpressionStatement","src":"24500:79:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24426:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"24438:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"24449:4:46","type":""}],"src":"24348:238:46"},{"body":{"nodeType":"YulBlock","src":"24716:201:46","statements":[{"nodeType":"YulAssignment","src":"24726:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24738:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24749:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24734:3:46"},"nodeType":"YulFunctionCall","src":"24734:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24726:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"24773:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"24784:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24769:3:46"},"nodeType":"YulFunctionCall","src":"24769:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"24792:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"24798:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"24788:3:46"},"nodeType":"YulFunctionCall","src":"24788:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24762:6:46"},"nodeType":"YulFunctionCall","src":"24762:47:46"},"nodeType":"YulExpressionStatement","src":"24762:47:46"},{"nodeType":"YulAssignment","src":"24818:92:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"24896:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"24905:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"24826:69:46"},"nodeType":"YulFunctionCall","src":"24826:84:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"24818:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24688:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"24700:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"24711:4:46","type":""}],"src":"24592:325:46"},{"body":{"nodeType":"YulBlock","src":"25027:130:46","statements":[{"nodeType":"YulAssignment","src":"25037:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25049:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25060:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25045:3:46"},"nodeType":"YulFunctionCall","src":"25045:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25037:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"25123:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25136:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25147:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25132:3:46"},"nodeType":"YulFunctionCall","src":"25132:17:46"}],"functionName":{"name":"abi_encode_t_int128_to_t_int128_fromStack_library","nodeType":"YulIdentifier","src":"25073:49:46"},"nodeType":"YulFunctionCall","src":"25073:77:46"},"nodeType":"YulExpressionStatement","src":"25073:77:46"}]},"name":"abi_encode_tuple_t_int128__to_t_int128__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"24999:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"25011:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"25022:4:46","type":""}],"src":"24923:234:46"},{"body":{"nodeType":"YulBlock","src":"25265:128:46","statements":[{"nodeType":"YulAssignment","src":"25275:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25287:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25298:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25283:3:46"},"nodeType":"YulFunctionCall","src":"25283:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25275:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"25359:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25372:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25383:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25368:3:46"},"nodeType":"YulFunctionCall","src":"25368:17:46"}],"functionName":{"name":"abi_encode_t_int32_to_t_int32_fromStack_library","nodeType":"YulIdentifier","src":"25311:47:46"},"nodeType":"YulFunctionCall","src":"25311:75:46"},"nodeType":"YulExpressionStatement","src":"25311:75:46"}]},"name":"abi_encode_tuple_t_int32__to_t_int32__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"25237:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"25249:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"25260:4:46","type":""}],"src":"25163:230:46"},{"body":{"nodeType":"YulBlock","src":"25525:203:46","statements":[{"nodeType":"YulAssignment","src":"25535:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25547:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25558:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25543:3:46"},"nodeType":"YulFunctionCall","src":"25543:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25535:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25582:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25593:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25578:3:46"},"nodeType":"YulFunctionCall","src":"25578:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25601:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"25607:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"25597:3:46"},"nodeType":"YulFunctionCall","src":"25597:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25571:6:46"},"nodeType":"YulFunctionCall","src":"25571:47:46"},"nodeType":"YulExpressionStatement","src":"25571:47:46"},{"nodeType":"YulAssignment","src":"25627:94:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"25707:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"25716:4:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"25635:71:46"},"nodeType":"YulFunctionCall","src":"25635:86:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25627:4:46"}]}]},"name":"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"25497:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"25509:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"25520:4:46","type":""}],"src":"25399:329:46"},{"body":{"nodeType":"YulBlock","src":"25905:248:46","statements":[{"nodeType":"YulAssignment","src":"25915:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25927:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25938:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25923:3:46"},"nodeType":"YulFunctionCall","src":"25923:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25915:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"25962:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"25973:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25958:3:46"},"nodeType":"YulFunctionCall","src":"25958:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25981:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"25987:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"25977:3:46"},"nodeType":"YulFunctionCall","src":"25977:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25951:6:46"},"nodeType":"YulFunctionCall","src":"25951:47:46"},"nodeType":"YulExpressionStatement","src":"25951:47:46"},{"nodeType":"YulAssignment","src":"26007:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"26141:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"26015:124:46"},"nodeType":"YulFunctionCall","src":"26015:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26007:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"25885:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"25900:4:46","type":""}],"src":"25734:419:46"},{"body":{"nodeType":"YulBlock","src":"26330:248:46","statements":[{"nodeType":"YulAssignment","src":"26340:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26352:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26363:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26348:3:46"},"nodeType":"YulFunctionCall","src":"26348:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26340:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26387:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26398:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26383:3:46"},"nodeType":"YulFunctionCall","src":"26383:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"26406:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"26412:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"26402:3:46"},"nodeType":"YulFunctionCall","src":"26402:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26376:6:46"},"nodeType":"YulFunctionCall","src":"26376:47:46"},"nodeType":"YulExpressionStatement","src":"26376:47:46"},{"nodeType":"YulAssignment","src":"26432:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"26566:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"26440:124:46"},"nodeType":"YulFunctionCall","src":"26440:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26432:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26310:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"26325:4:46","type":""}],"src":"26159:419:46"},{"body":{"nodeType":"YulBlock","src":"26755:248:46","statements":[{"nodeType":"YulAssignment","src":"26765:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26777:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26788:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26773:3:46"},"nodeType":"YulFunctionCall","src":"26773:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26765:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"26812:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"26823:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26808:3:46"},"nodeType":"YulFunctionCall","src":"26808:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"26831:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"26837:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"26827:3:46"},"nodeType":"YulFunctionCall","src":"26827:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26801:6:46"},"nodeType":"YulFunctionCall","src":"26801:47:46"},"nodeType":"YulExpressionStatement","src":"26801:47:46"},{"nodeType":"YulAssignment","src":"26857:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"26991:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"26865:124:46"},"nodeType":"YulFunctionCall","src":"26865:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"26857:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"26735:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"26750:4:46","type":""}],"src":"26584:419:46"},{"body":{"nodeType":"YulBlock","src":"27180:248:46","statements":[{"nodeType":"YulAssignment","src":"27190:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27202:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27213:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27198:3:46"},"nodeType":"YulFunctionCall","src":"27198:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"27190:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27237:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27248:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27233:3:46"},"nodeType":"YulFunctionCall","src":"27233:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"27256:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"27262:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"27252:3:46"},"nodeType":"YulFunctionCall","src":"27252:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27226:6:46"},"nodeType":"YulFunctionCall","src":"27226:47:46"},"nodeType":"YulExpressionStatement","src":"27226:47:46"},{"nodeType":"YulAssignment","src":"27282:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"27416:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"27290:124:46"},"nodeType":"YulFunctionCall","src":"27290:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"27282:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"27160:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"27175:4:46","type":""}],"src":"27009:419:46"},{"body":{"nodeType":"YulBlock","src":"27605:248:46","statements":[{"nodeType":"YulAssignment","src":"27615:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27627:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27638:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27623:3:46"},"nodeType":"YulFunctionCall","src":"27623:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"27615:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"27662:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"27673:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27658:3:46"},"nodeType":"YulFunctionCall","src":"27658:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"27681:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"27687:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"27677:3:46"},"nodeType":"YulFunctionCall","src":"27677:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27651:6:46"},"nodeType":"YulFunctionCall","src":"27651:47:46"},"nodeType":"YulExpressionStatement","src":"27651:47:46"},{"nodeType":"YulAssignment","src":"27707:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"27841:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"27715:124:46"},"nodeType":"YulFunctionCall","src":"27715:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"27707:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"27585:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"27600:4:46","type":""}],"src":"27434:419:46"},{"body":{"nodeType":"YulBlock","src":"28030:248:46","statements":[{"nodeType":"YulAssignment","src":"28040:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28052:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"28063:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28048:3:46"},"nodeType":"YulFunctionCall","src":"28048:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"28040:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28087:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"28098:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28083:3:46"},"nodeType":"YulFunctionCall","src":"28083:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"28106:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"28112:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"28102:3:46"},"nodeType":"YulFunctionCall","src":"28102:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28076:6:46"},"nodeType":"YulFunctionCall","src":"28076:47:46"},"nodeType":"YulExpressionStatement","src":"28076:47:46"},{"nodeType":"YulAssignment","src":"28132:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"28266:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"28140:124:46"},"nodeType":"YulFunctionCall","src":"28140:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"28132:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"28010:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"28025:4:46","type":""}],"src":"27859:419:46"},{"body":{"nodeType":"YulBlock","src":"28455:248:46","statements":[{"nodeType":"YulAssignment","src":"28465:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28477:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"28488:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28473:3:46"},"nodeType":"YulFunctionCall","src":"28473:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"28465:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28512:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"28523:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28508:3:46"},"nodeType":"YulFunctionCall","src":"28508:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"28531:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"28537:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"28527:3:46"},"nodeType":"YulFunctionCall","src":"28527:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28501:6:46"},"nodeType":"YulFunctionCall","src":"28501:47:46"},"nodeType":"YulExpressionStatement","src":"28501:47:46"},{"nodeType":"YulAssignment","src":"28557:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"28691:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"28565:124:46"},"nodeType":"YulFunctionCall","src":"28565:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"28557:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"28435:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"28450:4:46","type":""}],"src":"28284:419:46"},{"body":{"nodeType":"YulBlock","src":"28880:248:46","statements":[{"nodeType":"YulAssignment","src":"28890:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28902:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"28913:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28898:3:46"},"nodeType":"YulFunctionCall","src":"28898:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"28890:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"28937:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"28948:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28933:3:46"},"nodeType":"YulFunctionCall","src":"28933:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"28956:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"28962:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"28952:3:46"},"nodeType":"YulFunctionCall","src":"28952:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28926:6:46"},"nodeType":"YulFunctionCall","src":"28926:47:46"},"nodeType":"YulExpressionStatement","src":"28926:47:46"},{"nodeType":"YulAssignment","src":"28982:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"29116:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"28990:124:46"},"nodeType":"YulFunctionCall","src":"28990:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"28982:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"28860:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"28875:4:46","type":""}],"src":"28709:419:46"},{"body":{"nodeType":"YulBlock","src":"29305:248:46","statements":[{"nodeType":"YulAssignment","src":"29315:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29327:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"29338:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29323:3:46"},"nodeType":"YulFunctionCall","src":"29323:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"29315:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29362:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"29373:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29358:3:46"},"nodeType":"YulFunctionCall","src":"29358:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"29381:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"29387:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"29377:3:46"},"nodeType":"YulFunctionCall","src":"29377:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"29351:6:46"},"nodeType":"YulFunctionCall","src":"29351:47:46"},"nodeType":"YulExpressionStatement","src":"29351:47:46"},{"nodeType":"YulAssignment","src":"29407:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"29541:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"29415:124:46"},"nodeType":"YulFunctionCall","src":"29415:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"29407:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"29285:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"29300:4:46","type":""}],"src":"29134:419:46"},{"body":{"nodeType":"YulBlock","src":"29730:248:46","statements":[{"nodeType":"YulAssignment","src":"29740:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29752:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"29763:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29748:3:46"},"nodeType":"YulFunctionCall","src":"29748:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"29740:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"29787:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"29798:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29783:3:46"},"nodeType":"YulFunctionCall","src":"29783:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"29806:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"29812:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"29802:3:46"},"nodeType":"YulFunctionCall","src":"29802:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"29776:6:46"},"nodeType":"YulFunctionCall","src":"29776:47:46"},"nodeType":"YulExpressionStatement","src":"29776:47:46"},{"nodeType":"YulAssignment","src":"29832:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"29966:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"29840:124:46"},"nodeType":"YulFunctionCall","src":"29840:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"29832:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"29710:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"29725:4:46","type":""}],"src":"29559:419:46"},{"body":{"nodeType":"YulBlock","src":"30155:248:46","statements":[{"nodeType":"YulAssignment","src":"30165:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30177:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"30188:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30173:3:46"},"nodeType":"YulFunctionCall","src":"30173:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"30165:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30212:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"30223:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30208:3:46"},"nodeType":"YulFunctionCall","src":"30208:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"30231:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"30237:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"30227:3:46"},"nodeType":"YulFunctionCall","src":"30227:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"30201:6:46"},"nodeType":"YulFunctionCall","src":"30201:47:46"},"nodeType":"YulExpressionStatement","src":"30201:47:46"},{"nodeType":"YulAssignment","src":"30257:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"30391:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"30265:124:46"},"nodeType":"YulFunctionCall","src":"30265:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"30257:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"30135:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"30150:4:46","type":""}],"src":"29984:419:46"},{"body":{"nodeType":"YulBlock","src":"30580:248:46","statements":[{"nodeType":"YulAssignment","src":"30590:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30602:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"30613:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30598:3:46"},"nodeType":"YulFunctionCall","src":"30598:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"30590:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"30637:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"30648:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30633:3:46"},"nodeType":"YulFunctionCall","src":"30633:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"30656:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"30662:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"30652:3:46"},"nodeType":"YulFunctionCall","src":"30652:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"30626:6:46"},"nodeType":"YulFunctionCall","src":"30626:47:46"},"nodeType":"YulExpressionStatement","src":"30626:47:46"},{"nodeType":"YulAssignment","src":"30682:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"30816:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"30690:124:46"},"nodeType":"YulFunctionCall","src":"30690:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"30682:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"30560:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"30575:4:46","type":""}],"src":"30409:419:46"},{"body":{"nodeType":"YulBlock","src":"31005:248:46","statements":[{"nodeType":"YulAssignment","src":"31015:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31027:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31038:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31023:3:46"},"nodeType":"YulFunctionCall","src":"31023:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"31015:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31062:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31073:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31058:3:46"},"nodeType":"YulFunctionCall","src":"31058:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"31081:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"31087:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"31077:3:46"},"nodeType":"YulFunctionCall","src":"31077:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"31051:6:46"},"nodeType":"YulFunctionCall","src":"31051:47:46"},"nodeType":"YulExpressionStatement","src":"31051:47:46"},{"nodeType":"YulAssignment","src":"31107:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"31241:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"31115:124:46"},"nodeType":"YulFunctionCall","src":"31115:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"31107:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"30985:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"31000:4:46","type":""}],"src":"30834:419:46"},{"body":{"nodeType":"YulBlock","src":"31430:248:46","statements":[{"nodeType":"YulAssignment","src":"31440:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31452:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31463:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31448:3:46"},"nodeType":"YulFunctionCall","src":"31448:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"31440:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31487:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31498:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31483:3:46"},"nodeType":"YulFunctionCall","src":"31483:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"31506:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"31512:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"31502:3:46"},"nodeType":"YulFunctionCall","src":"31502:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"31476:6:46"},"nodeType":"YulFunctionCall","src":"31476:47:46"},"nodeType":"YulExpressionStatement","src":"31476:47:46"},{"nodeType":"YulAssignment","src":"31532:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"31666:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"31540:124:46"},"nodeType":"YulFunctionCall","src":"31540:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"31532:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"31410:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"31425:4:46","type":""}],"src":"31259:419:46"},{"body":{"nodeType":"YulBlock","src":"31855:248:46","statements":[{"nodeType":"YulAssignment","src":"31865:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31877:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31888:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31873:3:46"},"nodeType":"YulFunctionCall","src":"31873:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"31865:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"31912:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"31923:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31908:3:46"},"nodeType":"YulFunctionCall","src":"31908:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"31931:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"31937:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"31927:3:46"},"nodeType":"YulFunctionCall","src":"31927:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"31901:6:46"},"nodeType":"YulFunctionCall","src":"31901:47:46"},"nodeType":"YulExpressionStatement","src":"31901:47:46"},{"nodeType":"YulAssignment","src":"31957:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"32091:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"31965:124:46"},"nodeType":"YulFunctionCall","src":"31965:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"31957:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"31835:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"31850:4:46","type":""}],"src":"31684:419:46"},{"body":{"nodeType":"YulBlock","src":"32280:248:46","statements":[{"nodeType":"YulAssignment","src":"32290:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32302:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"32313:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32298:3:46"},"nodeType":"YulFunctionCall","src":"32298:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"32290:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32337:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"32348:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32333:3:46"},"nodeType":"YulFunctionCall","src":"32333:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"32356:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"32362:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"32352:3:46"},"nodeType":"YulFunctionCall","src":"32352:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"32326:6:46"},"nodeType":"YulFunctionCall","src":"32326:47:46"},"nodeType":"YulExpressionStatement","src":"32326:47:46"},{"nodeType":"YulAssignment","src":"32382:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"32516:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"32390:124:46"},"nodeType":"YulFunctionCall","src":"32390:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"32382:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"32260:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"32275:4:46","type":""}],"src":"32109:419:46"},{"body":{"nodeType":"YulBlock","src":"32705:248:46","statements":[{"nodeType":"YulAssignment","src":"32715:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32727:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"32738:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32723:3:46"},"nodeType":"YulFunctionCall","src":"32723:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"32715:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"32762:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"32773:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32758:3:46"},"nodeType":"YulFunctionCall","src":"32758:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"32781:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"32787:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"32777:3:46"},"nodeType":"YulFunctionCall","src":"32777:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"32751:6:46"},"nodeType":"YulFunctionCall","src":"32751:47:46"},"nodeType":"YulExpressionStatement","src":"32751:47:46"},{"nodeType":"YulAssignment","src":"32807:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"32941:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"32815:124:46"},"nodeType":"YulFunctionCall","src":"32815:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"32807:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"32685:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"32700:4:46","type":""}],"src":"32534:419:46"},{"body":{"nodeType":"YulBlock","src":"33130:248:46","statements":[{"nodeType":"YulAssignment","src":"33140:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33152:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"33163:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33148:3:46"},"nodeType":"YulFunctionCall","src":"33148:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"33140:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33187:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"33198:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33183:3:46"},"nodeType":"YulFunctionCall","src":"33183:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"33206:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"33212:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"33202:3:46"},"nodeType":"YulFunctionCall","src":"33202:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"33176:6:46"},"nodeType":"YulFunctionCall","src":"33176:47:46"},"nodeType":"YulExpressionStatement","src":"33176:47:46"},{"nodeType":"YulAssignment","src":"33232:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"33366:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"33240:124:46"},"nodeType":"YulFunctionCall","src":"33240:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"33232:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"33110:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"33125:4:46","type":""}],"src":"32959:419:46"},{"body":{"nodeType":"YulBlock","src":"33555:248:46","statements":[{"nodeType":"YulAssignment","src":"33565:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33577:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"33588:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33573:3:46"},"nodeType":"YulFunctionCall","src":"33573:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"33565:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33612:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"33623:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33608:3:46"},"nodeType":"YulFunctionCall","src":"33608:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"33631:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"33637:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"33627:3:46"},"nodeType":"YulFunctionCall","src":"33627:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"33601:6:46"},"nodeType":"YulFunctionCall","src":"33601:47:46"},"nodeType":"YulExpressionStatement","src":"33601:47:46"},{"nodeType":"YulAssignment","src":"33657:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"33791:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"33665:124:46"},"nodeType":"YulFunctionCall","src":"33665:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"33657:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"33535:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"33550:4:46","type":""}],"src":"33384:419:46"},{"body":{"nodeType":"YulBlock","src":"33959:227:46","statements":[{"nodeType":"YulAssignment","src":"33969:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"33981:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"33992:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33977:3:46"},"nodeType":"YulFunctionCall","src":"33977:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"33969:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"34016:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"34027:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34012:3:46"},"nodeType":"YulFunctionCall","src":"34012:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"34035:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"34041:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"34031:3:46"},"nodeType":"YulFunctionCall","src":"34031:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"34005:6:46"},"nodeType":"YulFunctionCall","src":"34005:47:46"},"nodeType":"YulExpressionStatement","src":"34005:47:46"},{"nodeType":"YulAssignment","src":"34061:118:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"34165:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"34174:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"34069:95:46"},"nodeType":"YulFunctionCall","src":"34069:110:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"34061:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"33931:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"33943:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"33954:4:46","type":""}],"src":"33809:377:46"},{"body":{"nodeType":"YulBlock","src":"34296:130:46","statements":[{"nodeType":"YulAssignment","src":"34306:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"34318:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"34329:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34314:3:46"},"nodeType":"YulFunctionCall","src":"34314:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"34306:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"34392:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"34405:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"34416:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34401:3:46"},"nodeType":"YulFunctionCall","src":"34401:17:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack_library","nodeType":"YulIdentifier","src":"34342:49:46"},"nodeType":"YulFunctionCall","src":"34342:77:46"},"nodeType":"YulExpressionStatement","src":"34342:77:46"}]},"name":"abi_encode_tuple_t_uint64__to_t_uint64__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"34268:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"34280:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"34291:4:46","type":""}],"src":"34192:234:46"},{"body":{"nodeType":"YulBlock","src":"34473:88:46","statements":[{"nodeType":"YulAssignment","src":"34483:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"34493:18:46"},"nodeType":"YulFunctionCall","src":"34493:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"34483:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"34542:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"34550:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"34522:19:46"},"nodeType":"YulFunctionCall","src":"34522:33:46"},"nodeType":"YulExpressionStatement","src":"34522:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"34457:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"34466:6:46","type":""}],"src":"34432:129:46"},{"body":{"nodeType":"YulBlock","src":"34607:35:46","statements":[{"nodeType":"YulAssignment","src":"34617:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"34633:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"34627:5:46"},"nodeType":"YulFunctionCall","src":"34627:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"34617:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"34600:6:46","type":""}],"src":"34567:75:46"},{"body":{"nodeType":"YulBlock","src":"34714:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"34819:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"34821:16:46"},"nodeType":"YulFunctionCall","src":"34821:18:46"},"nodeType":"YulExpressionStatement","src":"34821:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"34791:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"34799:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"34788:2:46"},"nodeType":"YulFunctionCall","src":"34788:30:46"},"nodeType":"YulIf","src":"34785:56:46"},{"nodeType":"YulAssignment","src":"34851:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"34881:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"34859:21:46"},"nodeType":"YulFunctionCall","src":"34859:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"34851:4:46"}]},{"nodeType":"YulAssignment","src":"34925:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"34937:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"34943:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34933:3:46"},"nodeType":"YulFunctionCall","src":"34933:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"34925:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"34698:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"34709:4:46","type":""}],"src":"34648:307:46"},{"body":{"nodeType":"YulBlock","src":"35032:60:46","statements":[{"nodeType":"YulAssignment","src":"35042:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"35050:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35042:4:46"}]},{"nodeType":"YulAssignment","src":"35063:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"35075:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35080:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35071:3:46"},"nodeType":"YulFunctionCall","src":"35071:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35063:4:46"}]}]},"name":"array_dataslot_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"35019:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"35027:4:46","type":""}],"src":"34961:131:46"},{"body":{"nodeType":"YulBlock","src":"35168:60:46","statements":[{"nodeType":"YulAssignment","src":"35178:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"35186:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35178:4:46"}]},{"nodeType":"YulAssignment","src":"35199:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"35211:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35216:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35207:3:46"},"nodeType":"YulFunctionCall","src":"35207:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35199:4:46"}]}]},"name":"array_dataslot_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"35155:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"35163:4:46","type":""}],"src":"35098:130:46"},{"body":{"nodeType":"YulBlock","src":"35316:60:46","statements":[{"nodeType":"YulAssignment","src":"35326:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"35334:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35326:4:46"}]},{"nodeType":"YulAssignment","src":"35347:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"35359:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35364:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35355:3:46"},"nodeType":"YulFunctionCall","src":"35355:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35347:4:46"}]}]},"name":"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"35303:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"35311:4:46","type":""}],"src":"35234:142:46"},{"body":{"nodeType":"YulBlock","src":"35453:60:46","statements":[{"nodeType":"YulAssignment","src":"35463:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"35471:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35463:4:46"}]},{"nodeType":"YulAssignment","src":"35484:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"35496:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35501:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35492:3:46"},"nodeType":"YulFunctionCall","src":"35492:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"35484:4:46"}]}]},"name":"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"35440:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"35448:4:46","type":""}],"src":"35382:131:46"},{"body":{"nodeType":"YulBlock","src":"35592:40:46","statements":[{"nodeType":"YulAssignment","src":"35603:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35619:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"35613:5:46"},"nodeType":"YulFunctionCall","src":"35613:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"35603:6:46"}]}]},"name":"array_length_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35575:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"35585:6:46","type":""}],"src":"35519:113:46"},{"body":{"nodeType":"YulBlock","src":"35710:40:46","statements":[{"nodeType":"YulAssignment","src":"35721:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35737:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"35731:5:46"},"nodeType":"YulFunctionCall","src":"35731:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"35721:6:46"}]}]},"name":"array_length_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35693:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"35703:6:46","type":""}],"src":"35638:112:46"},{"body":{"nodeType":"YulBlock","src":"35840:40:46","statements":[{"nodeType":"YulAssignment","src":"35851:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35867:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"35861:5:46"},"nodeType":"YulFunctionCall","src":"35861:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"35851:6:46"}]}]},"name":"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35823:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"35833:6:46","type":""}],"src":"35756:124:46"},{"body":{"nodeType":"YulBlock","src":"35959:40:46","statements":[{"nodeType":"YulAssignment","src":"35970:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"35986:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"35980:5:46"},"nodeType":"YulFunctionCall","src":"35980:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"35970:6:46"}]}]},"name":"array_length_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"35942:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"35952:6:46","type":""}],"src":"35886:113:46"},{"body":{"nodeType":"YulBlock","src":"36063:40:46","statements":[{"nodeType":"YulAssignment","src":"36074:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"36090:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"36084:5:46"},"nodeType":"YulFunctionCall","src":"36084:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"36074:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"36046:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"36056:6:46","type":""}],"src":"36005:98:46"},{"body":{"nodeType":"YulBlock","src":"36168:40:46","statements":[{"nodeType":"YulAssignment","src":"36179:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"36195:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"36189:5:46"},"nodeType":"YulFunctionCall","src":"36189:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"36179:6:46"}]}]},"name":"array_length_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"36151:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"36161:6:46","type":""}],"src":"36109:99:46"},{"body":{"nodeType":"YulBlock","src":"36288:38:46","statements":[{"nodeType":"YulAssignment","src":"36298:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"36310:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36315:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36306:3:46"},"nodeType":"YulFunctionCall","src":"36306:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"36298:4:46"}]}]},"name":"array_nextElement_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"36275:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"36283:4:46","type":""}],"src":"36214:112:46"},{"body":{"nodeType":"YulBlock","src":"36405:38:46","statements":[{"nodeType":"YulAssignment","src":"36415:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"36427:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36432:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36423:3:46"},"nodeType":"YulFunctionCall","src":"36423:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"36415:4:46"}]}]},"name":"array_nextElement_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"36392:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"36400:4:46","type":""}],"src":"36332:111:46"},{"body":{"nodeType":"YulBlock","src":"36534:38:46","statements":[{"nodeType":"YulAssignment","src":"36544:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"36556:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36561:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36552:3:46"},"nodeType":"YulFunctionCall","src":"36552:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"36544:4:46"}]}]},"name":"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"36521:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"36529:4:46","type":""}],"src":"36449:123:46"},{"body":{"nodeType":"YulBlock","src":"36652:38:46","statements":[{"nodeType":"YulAssignment","src":"36662:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"36674:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36679:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36670:3:46"},"nodeType":"YulFunctionCall","src":"36670:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"36662:4:46"}]}]},"name":"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"36639:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"36647:4:46","type":""}],"src":"36578:112:46"},{"body":{"nodeType":"YulBlock","src":"36814:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36831:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"36836:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"36824:6:46"},"nodeType":"YulFunctionCall","src":"36824:19:46"},"nodeType":"YulExpressionStatement","src":"36824:19:46"},{"nodeType":"YulAssignment","src":"36852:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36871:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36876:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36867:3:46"},"nodeType":"YulFunctionCall","src":"36867:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"36852:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"36786:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"36791:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"36802:11:46","type":""}],"src":"36696:191:46"},{"body":{"nodeType":"YulBlock","src":"37010:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37027:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"37032:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37020:6:46"},"nodeType":"YulFunctionCall","src":"37020:19:46"},"nodeType":"YulExpressionStatement","src":"37020:19:46"},{"nodeType":"YulAssignment","src":"37048:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37067:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37072:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37063:3:46"},"nodeType":"YulFunctionCall","src":"37063:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"37048:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"36982:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"36987:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"36998:11:46","type":""}],"src":"36893:190:46"},{"body":{"nodeType":"YulBlock","src":"37218:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37235:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"37240:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37228:6:46"},"nodeType":"YulFunctionCall","src":"37228:19:46"},"nodeType":"YulExpressionStatement","src":"37228:19:46"},{"nodeType":"YulAssignment","src":"37256:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37275:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37280:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37271:3:46"},"nodeType":"YulFunctionCall","src":"37271:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"37256:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37190:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"37195:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"37206:11:46","type":""}],"src":"37089:202:46"},{"body":{"nodeType":"YulBlock","src":"37415:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37432:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"37437:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37425:6:46"},"nodeType":"YulFunctionCall","src":"37425:19:46"},"nodeType":"YulExpressionStatement","src":"37425:19:46"},{"nodeType":"YulAssignment","src":"37453:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37472:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37477:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37468:3:46"},"nodeType":"YulFunctionCall","src":"37468:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"37453:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37387:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"37392:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"37403:11:46","type":""}],"src":"37297:191:46"},{"body":{"nodeType":"YulBlock","src":"37597:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37614:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"37619:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37607:6:46"},"nodeType":"YulFunctionCall","src":"37607:19:46"},"nodeType":"YulExpressionStatement","src":"37607:19:46"},{"nodeType":"YulAssignment","src":"37635:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37654:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37659:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37650:3:46"},"nodeType":"YulFunctionCall","src":"37650:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"37635:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37569:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"37574:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"37585:11:46","type":""}],"src":"37494:176:46"},{"body":{"nodeType":"YulBlock","src":"37769:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37786:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"37791:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"37779:6:46"},"nodeType":"YulFunctionCall","src":"37779:19:46"},"nodeType":"YulExpressionStatement","src":"37779:19:46"},{"nodeType":"YulAssignment","src":"37807:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37826:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37831:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37822:3:46"},"nodeType":"YulFunctionCall","src":"37822:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"37807:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37741:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"37746:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"37757:11:46","type":""}],"src":"37676:166:46"},{"body":{"nodeType":"YulBlock","src":"37961:34:46","statements":[{"nodeType":"YulAssignment","src":"37971:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"37986:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"37971:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37933:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"37938:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"37949:11:46","type":""}],"src":"37848:147:46"},{"body":{"nodeType":"YulBlock","src":"38097:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38114:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"38119:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"38107:6:46"},"nodeType":"YulFunctionCall","src":"38107:19:46"},"nodeType":"YulExpressionStatement","src":"38107:19:46"},{"nodeType":"YulAssignment","src":"38135:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38154:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38159:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38150:3:46"},"nodeType":"YulFunctionCall","src":"38150:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"38135:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"38069:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"38074:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"38085:11:46","type":""}],"src":"38001:169:46"},{"body":{"nodeType":"YulBlock","src":"38280:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38297:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"38302:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"38290:6:46"},"nodeType":"YulFunctionCall","src":"38290:19:46"},"nodeType":"YulExpressionStatement","src":"38290:19:46"},{"nodeType":"YulAssignment","src":"38318:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38337:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38342:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38333:3:46"},"nodeType":"YulFunctionCall","src":"38333:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"38318:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"38252:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"38257:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"38268:11:46","type":""}],"src":"38176:177:46"},{"body":{"nodeType":"YulBlock","src":"38453:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38470:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"38475:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"38463:6:46"},"nodeType":"YulFunctionCall","src":"38463:19:46"},"nodeType":"YulExpressionStatement","src":"38463:19:46"},{"nodeType":"YulAssignment","src":"38491:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38510:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38515:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38506:3:46"},"nodeType":"YulFunctionCall","src":"38506:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"38491:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"38425:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"38430:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"38441:11:46","type":""}],"src":"38359:167:46"},{"body":{"nodeType":"YulBlock","src":"38576:261:46","statements":[{"nodeType":"YulAssignment","src":"38586:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"38609:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"38591:17:46"},"nodeType":"YulFunctionCall","src":"38591:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"38586:1:46"}]},{"nodeType":"YulAssignment","src":"38620:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"38643:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"38625:17:46"},"nodeType":"YulFunctionCall","src":"38625:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"38620:1:46"}]},{"body":{"nodeType":"YulBlock","src":"38783:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"38785:16:46"},"nodeType":"YulFunctionCall","src":"38785:18:46"},"nodeType":"YulExpressionStatement","src":"38785:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"38704:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"38711:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"38779:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"38707:3:46"},"nodeType":"YulFunctionCall","src":"38707:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"38701:2:46"},"nodeType":"YulFunctionCall","src":"38701:81:46"},"nodeType":"YulIf","src":"38698:107:46"},{"nodeType":"YulAssignment","src":"38815:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"38826:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"38829:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38822:3:46"},"nodeType":"YulFunctionCall","src":"38822:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"38815:3:46"}]}]},"name":"checked_add_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"38563:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"38566:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"38572:3:46","type":""}],"src":"38532:305:46"},{"body":{"nodeType":"YulBlock","src":"38886:203:46","statements":[{"nodeType":"YulAssignment","src":"38896:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"38918:1:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"38901:16:46"},"nodeType":"YulFunctionCall","src":"38901:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"38896:1:46"}]},{"nodeType":"YulAssignment","src":"38929:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"38951:1:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"38934:16:46"},"nodeType":"YulFunctionCall","src":"38934:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"38929:1:46"}]},{"body":{"nodeType":"YulBlock","src":"39035:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"39037:16:46"},"nodeType":"YulFunctionCall","src":"39037:18:46"},"nodeType":"YulExpressionStatement","src":"39037:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39012:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"39019:10:46","type":"","value":"0xffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"39031:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"39015:3:46"},"nodeType":"YulFunctionCall","src":"39015:18:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"39009:2:46"},"nodeType":"YulFunctionCall","src":"39009:25:46"},"nodeType":"YulIf","src":"39006:51:46"},{"nodeType":"YulAssignment","src":"39067:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39078:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"39081:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"39074:3:46"},"nodeType":"YulFunctionCall","src":"39074:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"39067:3:46"}]}]},"name":"checked_add_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"38873:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"38876:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"38882:3:46","type":""}],"src":"38843:246:46"},{"body":{"nodeType":"YulBlock","src":"39136:344:46","statements":[{"nodeType":"YulAssignment","src":"39146:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39168:1:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"39151:16:46"},"nodeType":"YulFunctionCall","src":"39151:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"39146:1:46"}]},{"nodeType":"YulAssignment","src":"39179:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"39201:1:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"39184:16:46"},"nodeType":"YulFunctionCall","src":"39184:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"39179:1:46"}]},{"body":{"nodeType":"YulBlock","src":"39225:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x12","nodeType":"YulIdentifier","src":"39227:16:46"},"nodeType":"YulFunctionCall","src":"39227:18:46"},"nodeType":"YulExpressionStatement","src":"39227:18:46"}]},"condition":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"39222:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"39215:6:46"},"nodeType":"YulFunctionCall","src":"39215:9:46"},"nodeType":"YulIf","src":"39212:35:46"},{"body":{"nodeType":"YulBlock","src":"39427:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"39429:16:46"},"nodeType":"YulFunctionCall","src":"39429:18:46"},"nodeType":"YulExpressionStatement","src":"39429:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39316:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"39319:66:46","type":"","value":"0x8000000000000000000000000000000000000000000000000000000000000000"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"39313:2:46"},"nodeType":"YulFunctionCall","src":"39313:73:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"39403:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"39410:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"39413:1:46","type":"","value":"1"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"39406:3:46"},"nodeType":"YulFunctionCall","src":"39406:9:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"39400:2:46"},"nodeType":"YulFunctionCall","src":"39400:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"39296:3:46"},"nodeType":"YulFunctionCall","src":"39296:130:46"},"nodeType":"YulIf","src":"39293:156:46"},{"nodeType":"YulAssignment","src":"39459:15:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39469:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"39472:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"39464:4:46"},"nodeType":"YulFunctionCall","src":"39464:10:46"},"variableNames":[{"name":"r","nodeType":"YulIdentifier","src":"39459:1:46"}]}]},"name":"checked_div_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"39125:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"39128:1:46","type":""}],"returnVariables":[{"name":"r","nodeType":"YulTypedName","src":"39134:1:46","type":""}],"src":"39095:385:46"},{"body":{"nodeType":"YulBlock","src":"39527:141:46","statements":[{"nodeType":"YulAssignment","src":"39537:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39559:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"39542:16:46"},"nodeType":"YulFunctionCall","src":"39542:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"39537:1:46"}]},{"nodeType":"YulAssignment","src":"39570:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"39592:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"39575:16:46"},"nodeType":"YulFunctionCall","src":"39575:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"39570:1:46"}]},{"body":{"nodeType":"YulBlock","src":"39616:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x12","nodeType":"YulIdentifier","src":"39618:16:46"},"nodeType":"YulFunctionCall","src":"39618:18:46"},"nodeType":"YulExpressionStatement","src":"39618:18:46"}]},"condition":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"39613:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"39606:6:46"},"nodeType":"YulFunctionCall","src":"39606:9:46"},"nodeType":"YulIf","src":"39603:35:46"},{"nodeType":"YulAssignment","src":"39648:14:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"39657:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"39660:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"39653:3:46"},"nodeType":"YulFunctionCall","src":"39653:9:46"},"variableNames":[{"name":"r","nodeType":"YulIdentifier","src":"39648:1:46"}]}]},"name":"checked_div_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"39516:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"39519:1:46","type":""}],"returnVariables":[{"name":"r","nodeType":"YulTypedName","src":"39525:1:46","type":""}],"src":"39486:182:46"},{"body":{"nodeType":"YulBlock","src":"39747:775:46","statements":[{"nodeType":"YulAssignment","src":"39757:15:46","value":{"name":"_power","nodeType":"YulIdentifier","src":"39766:6:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"39757:5:46"}]},{"nodeType":"YulAssignment","src":"39781:14:46","value":{"name":"_base","nodeType":"YulIdentifier","src":"39790:5:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"39781:4:46"}]},{"body":{"nodeType":"YulBlock","src":"39839:677:46","statements":[{"body":{"nodeType":"YulBlock","src":"39927:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"39929:16:46"},"nodeType":"YulFunctionCall","src":"39929:18:46"},"nodeType":"YulExpressionStatement","src":"39929:18:46"}]},"condition":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"39905:4:46"},{"arguments":[{"name":"max","nodeType":"YulIdentifier","src":"39915:3:46"},{"name":"base","nodeType":"YulIdentifier","src":"39920:4:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"39911:3:46"},"nodeType":"YulFunctionCall","src":"39911:14:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"39902:2:46"},"nodeType":"YulFunctionCall","src":"39902:24:46"},"nodeType":"YulIf","src":"39899:50:46"},{"body":{"nodeType":"YulBlock","src":"39994:419:46","statements":[{"nodeType":"YulAssignment","src":"40374:25:46","value":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"40387:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"40394:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"40383:3:46"},"nodeType":"YulFunctionCall","src":"40383:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"40374:5:46"}]}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"39969:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"39979:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"39965:3:46"},"nodeType":"YulFunctionCall","src":"39965:16:46"},"nodeType":"YulIf","src":"39962:451:46"},{"nodeType":"YulAssignment","src":"40426:23:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"40438:4:46"},{"name":"base","nodeType":"YulIdentifier","src":"40444:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"40434:3:46"},"nodeType":"YulFunctionCall","src":"40434:15:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"40426:4:46"}]},{"nodeType":"YulAssignment","src":"40462:44:46","value":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"40497:8:46"}],"functionName":{"name":"shift_right_1_unsigned","nodeType":"YulIdentifier","src":"40474:22:46"},"nodeType":"YulFunctionCall","src":"40474:32:46"},"variableNames":[{"name":"exponent","nodeType":"YulIdentifier","src":"40462:8:46"}]}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"39815:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"39825:1:46","type":"","value":"1"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"39812:2:46"},"nodeType":"YulFunctionCall","src":"39812:15:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"39828:2:46","statements":[]},"pre":{"nodeType":"YulBlock","src":"39808:3:46","statements":[]},"src":"39804:712:46"}]},"name":"checked_exp_helper","nodeType":"YulFunctionDefinition","parameters":[{"name":"_power","nodeType":"YulTypedName","src":"39702:6:46","type":""},{"name":"_base","nodeType":"YulTypedName","src":"39710:5:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"39717:8:46","type":""},{"name":"max","nodeType":"YulTypedName","src":"39727:3:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"39735:5:46","type":""},{"name":"base","nodeType":"YulTypedName","src":"39742:4:46","type":""}],"src":"39674:848:46"},{"body":{"nodeType":"YulBlock","src":"40594:219:46","statements":[{"nodeType":"YulAssignment","src":"40604:31:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"40630:4:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"40612:17:46"},"nodeType":"YulFunctionCall","src":"40612:23:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"40604:4:46"}]},{"nodeType":"YulAssignment","src":"40644:39:46","value":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"40674:8:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"40656:17:46"},"nodeType":"YulFunctionCall","src":"40656:27:46"},"variableNames":[{"name":"exponent","nodeType":"YulIdentifier","src":"40644:8:46"}]},{"nodeType":"YulAssignment","src":"40693:113:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"40723:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"40729:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"40739:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"checked_exp_unsigned","nodeType":"YulIdentifier","src":"40702:20:46"},"nodeType":"YulFunctionCall","src":"40702:104:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"40693:5:46"}]}]},"name":"checked_exp_t_uint256_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"base","nodeType":"YulTypedName","src":"40569:4:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"40575:8:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"40588:5:46","type":""}],"src":"40528:285:46"},{"body":{"nodeType":"YulBlock","src":"40879:1013:46","statements":[{"body":{"nodeType":"YulBlock","src":"41074:20:46","statements":[{"nodeType":"YulAssignment","src":"41076:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"41085:1:46","type":"","value":"1"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41076:5:46"}]},{"nodeType":"YulLeave","src":"41087:5:46"}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"41064:8:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"41057:6:46"},"nodeType":"YulFunctionCall","src":"41057:16:46"},"nodeType":"YulIf","src":"41054:40:46"},{"body":{"nodeType":"YulBlock","src":"41119:20:46","statements":[{"nodeType":"YulAssignment","src":"41121:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"41130:1:46","type":"","value":"0"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41121:5:46"}]},{"nodeType":"YulLeave","src":"41132:5:46"}]},"condition":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"41113:4:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"41106:6:46"},"nodeType":"YulFunctionCall","src":"41106:12:46"},"nodeType":"YulIf","src":"41103:36:46"},{"cases":[{"body":{"nodeType":"YulBlock","src":"41249:20:46","statements":[{"nodeType":"YulAssignment","src":"41251:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"41260:1:46","type":"","value":"1"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41251:5:46"}]},{"nodeType":"YulLeave","src":"41262:5:46"}]},"nodeType":"YulCase","src":"41242:27:46","value":{"kind":"number","nodeType":"YulLiteral","src":"41247:1:46","type":"","value":"1"}},{"body":{"nodeType":"YulBlock","src":"41293:176:46","statements":[{"body":{"nodeType":"YulBlock","src":"41328:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"41330:16:46"},"nodeType":"YulFunctionCall","src":"41330:18:46"},"nodeType":"YulExpressionStatement","src":"41330:18:46"}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"41313:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"41323:3:46","type":"","value":"255"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"41310:2:46"},"nodeType":"YulFunctionCall","src":"41310:17:46"},"nodeType":"YulIf","src":"41307:43:46"},{"nodeType":"YulAssignment","src":"41363:25:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"41376:1:46","type":"","value":"2"},{"name":"exponent","nodeType":"YulIdentifier","src":"41379:8:46"}],"functionName":{"name":"exp","nodeType":"YulIdentifier","src":"41372:3:46"},"nodeType":"YulFunctionCall","src":"41372:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41363:5:46"}]},{"body":{"nodeType":"YulBlock","src":"41419:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"41421:16:46"},"nodeType":"YulFunctionCall","src":"41421:18:46"},"nodeType":"YulExpressionStatement","src":"41421:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"41407:5:46"},{"name":"max","nodeType":"YulIdentifier","src":"41414:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"41404:2:46"},"nodeType":"YulFunctionCall","src":"41404:14:46"},"nodeType":"YulIf","src":"41401:40:46"},{"nodeType":"YulLeave","src":"41454:5:46"}]},"nodeType":"YulCase","src":"41278:191:46","value":{"kind":"number","nodeType":"YulLiteral","src":"41283:1:46","type":"","value":"2"}}],"expression":{"name":"base","nodeType":"YulIdentifier","src":"41199:4:46"},"nodeType":"YulSwitch","src":"41192:277:46"},{"body":{"nodeType":"YulBlock","src":"41601:123:46","statements":[{"nodeType":"YulAssignment","src":"41615:28:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"41628:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"41634:8:46"}],"functionName":{"name":"exp","nodeType":"YulIdentifier","src":"41624:3:46"},"nodeType":"YulFunctionCall","src":"41624:19:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41615:5:46"}]},{"body":{"nodeType":"YulBlock","src":"41674:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"41676:16:46"},"nodeType":"YulFunctionCall","src":"41676:18:46"},"nodeType":"YulExpressionStatement","src":"41676:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"41662:5:46"},{"name":"max","nodeType":"YulIdentifier","src":"41669:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"41659:2:46"},"nodeType":"YulFunctionCall","src":"41659:14:46"},"nodeType":"YulIf","src":"41656:40:46"},{"nodeType":"YulLeave","src":"41709:5:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"41504:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"41510:2:46","type":"","value":"11"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"41501:2:46"},"nodeType":"YulFunctionCall","src":"41501:12:46"},{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"41518:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"41528:2:46","type":"","value":"78"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"41515:2:46"},"nodeType":"YulFunctionCall","src":"41515:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"41497:3:46"},"nodeType":"YulFunctionCall","src":"41497:35:46"},{"arguments":[{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"41553:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"41559:3:46","type":"","value":"307"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"41550:2:46"},"nodeType":"YulFunctionCall","src":"41550:13:46"},{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"41568:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"41578:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"41565:2:46"},"nodeType":"YulFunctionCall","src":"41565:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"41546:3:46"},"nodeType":"YulFunctionCall","src":"41546:36:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"41481:2:46"},"nodeType":"YulFunctionCall","src":"41481:111:46"},"nodeType":"YulIf","src":"41478:246:46"},{"nodeType":"YulAssignment","src":"41734:57:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"41768:1:46","type":"","value":"1"},{"name":"base","nodeType":"YulIdentifier","src":"41771:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"41777:8:46"},{"name":"max","nodeType":"YulIdentifier","src":"41787:3:46"}],"functionName":{"name":"checked_exp_helper","nodeType":"YulIdentifier","src":"41749:18:46"},"nodeType":"YulFunctionCall","src":"41749:42:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41734:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"41741:4:46"}]},{"body":{"nodeType":"YulBlock","src":"41830:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"41832:16:46"},"nodeType":"YulFunctionCall","src":"41832:18:46"},"nodeType":"YulExpressionStatement","src":"41832:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"41807:5:46"},{"arguments":[{"name":"max","nodeType":"YulIdentifier","src":"41818:3:46"},{"name":"base","nodeType":"YulIdentifier","src":"41823:4:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"41814:3:46"},"nodeType":"YulFunctionCall","src":"41814:14:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"41804:2:46"},"nodeType":"YulFunctionCall","src":"41804:25:46"},"nodeType":"YulIf","src":"41801:51:46"},{"nodeType":"YulAssignment","src":"41861:25:46","value":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"41874:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"41881:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"41870:3:46"},"nodeType":"YulFunctionCall","src":"41870:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"41861:5:46"}]}]},"name":"checked_exp_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"base","nodeType":"YulTypedName","src":"40849:4:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"40855:8:46","type":""},{"name":"max","nodeType":"YulTypedName","src":"40865:3:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"40873:5:46","type":""}],"src":"40819:1073:46"},{"body":{"nodeType":"YulBlock","src":"41945:944:46","statements":[{"nodeType":"YulAssignment","src":"41955:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"41977:1:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"41960:16:46"},"nodeType":"YulFunctionCall","src":"41960:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"41955:1:46"}]},{"nodeType":"YulAssignment","src":"41988:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"42010:1:46"}],"functionName":{"name":"cleanup_t_int256","nodeType":"YulIdentifier","src":"41993:16:46"},"nodeType":"YulFunctionCall","src":"41993:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"41988:1:46"}]},{"body":{"nodeType":"YulBlock","src":"42199:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"42201:16:46"},"nodeType":"YulFunctionCall","src":"42201:18:46"},"nodeType":"YulExpressionStatement","src":"42201:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42097:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42100:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"42093:3:46"},"nodeType":"YulFunctionCall","src":"42093:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"42108:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42111:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"42104:3:46"},"nodeType":"YulFunctionCall","src":"42104:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42089:3:46"},"nodeType":"YulFunctionCall","src":"42089:25:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42119:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"42126:66:46","type":"","value":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"42194:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"42122:3:46"},"nodeType":"YulFunctionCall","src":"42122:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"42116:2:46"},"nodeType":"YulFunctionCall","src":"42116:81:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42085:3:46"},"nodeType":"YulFunctionCall","src":"42085:113:46"},"nodeType":"YulIf","src":"42082:139:46"},{"body":{"nodeType":"YulBlock","src":"42410:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"42412:16:46"},"nodeType":"YulFunctionCall","src":"42412:18:46"},"nodeType":"YulExpressionStatement","src":"42412:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42306:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42309:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"42302:3:46"},"nodeType":"YulFunctionCall","src":"42302:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"42317:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42320:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42313:3:46"},"nodeType":"YulFunctionCall","src":"42313:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42298:3:46"},"nodeType":"YulFunctionCall","src":"42298:25:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"42329:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"42337:66:46","type":"","value":"0x8000000000000000000000000000000000000000000000000000000000000000"},{"name":"x","nodeType":"YulIdentifier","src":"42405:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"42332:4:46"},"nodeType":"YulFunctionCall","src":"42332:75:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42325:3:46"},"nodeType":"YulFunctionCall","src":"42325:83:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42294:3:46"},"nodeType":"YulFunctionCall","src":"42294:115:46"},"nodeType":"YulIf","src":"42291:141:46"},{"body":{"nodeType":"YulBlock","src":"42621:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"42623:16:46"},"nodeType":"YulFunctionCall","src":"42623:18:46"},"nodeType":"YulExpressionStatement","src":"42623:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42517:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42520:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42513:3:46"},"nodeType":"YulFunctionCall","src":"42513:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"42528:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42531:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"42524:3:46"},"nodeType":"YulFunctionCall","src":"42524:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42509:3:46"},"nodeType":"YulFunctionCall","src":"42509:25:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42540:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"42548:66:46","type":"","value":"0x8000000000000000000000000000000000000000000000000000000000000000"},{"name":"y","nodeType":"YulIdentifier","src":"42616:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"42543:4:46"},"nodeType":"YulFunctionCall","src":"42543:75:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42536:3:46"},"nodeType":"YulFunctionCall","src":"42536:83:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42505:3:46"},"nodeType":"YulFunctionCall","src":"42505:115:46"},"nodeType":"YulIf","src":"42502:141:46"},{"body":{"nodeType":"YulBlock","src":"42831:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"42833:16:46"},"nodeType":"YulFunctionCall","src":"42833:18:46"},"nodeType":"YulExpressionStatement","src":"42833:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42727:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42730:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42723:3:46"},"nodeType":"YulFunctionCall","src":"42723:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"42738:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"42741:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42734:3:46"},"nodeType":"YulFunctionCall","src":"42734:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42719:3:46"},"nodeType":"YulFunctionCall","src":"42719:25:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42750:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"42758:66:46","type":"","value":"0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"42826:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"42753:4:46"},"nodeType":"YulFunctionCall","src":"42753:75:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"42746:3:46"},"nodeType":"YulFunctionCall","src":"42746:83:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"42715:3:46"},"nodeType":"YulFunctionCall","src":"42715:115:46"},"nodeType":"YulIf","src":"42712:141:46"},{"nodeType":"YulAssignment","src":"42863:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42878:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"42881:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"42874:3:46"},"nodeType":"YulFunctionCall","src":"42874:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"42863:7:46"}]}]},"name":"checked_mul_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"41928:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"41931:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"41937:7:46","type":""}],"src":"41898:991:46"},{"body":{"nodeType":"YulBlock","src":"42941:830:46","statements":[{"nodeType":"YulAssignment","src":"42951:23:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"42972:1:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"42956:15:46"},"nodeType":"YulFunctionCall","src":"42956:18:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"42951:1:46"}]},{"nodeType":"YulAssignment","src":"42983:23:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43004:1:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"42988:15:46"},"nodeType":"YulFunctionCall","src":"42988:18:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"42983:1:46"}]},{"body":{"nodeType":"YulBlock","src":"43137:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"43139:16:46"},"nodeType":"YulFunctionCall","src":"43139:18:46"},"nodeType":"YulExpressionStatement","src":"43139:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43091:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43094:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"43087:3:46"},"nodeType":"YulFunctionCall","src":"43087:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43102:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43105:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"43098:3:46"},"nodeType":"YulFunctionCall","src":"43098:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43083:3:46"},"nodeType":"YulFunctionCall","src":"43083:25:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43113:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"43120:10:46","type":"","value":"0x7fffffff"},{"name":"y","nodeType":"YulIdentifier","src":"43132:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"43116:3:46"},"nodeType":"YulFunctionCall","src":"43116:18:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"43110:2:46"},"nodeType":"YulFunctionCall","src":"43110:25:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43079:3:46"},"nodeType":"YulFunctionCall","src":"43079:57:46"},"nodeType":"YulIf","src":"43076:83:46"},{"body":{"nodeType":"YulBlock","src":"43348:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"43350:16:46"},"nodeType":"YulFunctionCall","src":"43350:18:46"},"nodeType":"YulExpressionStatement","src":"43350:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43244:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43247:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"43240:3:46"},"nodeType":"YulFunctionCall","src":"43240:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43255:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43258:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43251:3:46"},"nodeType":"YulFunctionCall","src":"43251:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43236:3:46"},"nodeType":"YulFunctionCall","src":"43236:25:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43267:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"43275:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000"},{"name":"x","nodeType":"YulIdentifier","src":"43343:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"43270:4:46"},"nodeType":"YulFunctionCall","src":"43270:75:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43263:3:46"},"nodeType":"YulFunctionCall","src":"43263:83:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43232:3:46"},"nodeType":"YulFunctionCall","src":"43232:115:46"},"nodeType":"YulIf","src":"43229:141:46"},{"body":{"nodeType":"YulBlock","src":"43559:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"43561:16:46"},"nodeType":"YulFunctionCall","src":"43561:18:46"},"nodeType":"YulExpressionStatement","src":"43561:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43455:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43458:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43451:3:46"},"nodeType":"YulFunctionCall","src":"43451:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43466:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43469:1:46","type":"","value":"0"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"43462:3:46"},"nodeType":"YulFunctionCall","src":"43462:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43447:3:46"},"nodeType":"YulFunctionCall","src":"43447:25:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43478:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"43486:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000"},{"name":"y","nodeType":"YulIdentifier","src":"43554:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"43481:4:46"},"nodeType":"YulFunctionCall","src":"43481:75:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43474:3:46"},"nodeType":"YulFunctionCall","src":"43474:83:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43443:3:46"},"nodeType":"YulFunctionCall","src":"43443:115:46"},"nodeType":"YulIf","src":"43440:141:46"},{"body":{"nodeType":"YulBlock","src":"43713:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"43715:16:46"},"nodeType":"YulFunctionCall","src":"43715:18:46"},"nodeType":"YulExpressionStatement","src":"43715:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43665:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43668:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43661:3:46"},"nodeType":"YulFunctionCall","src":"43661:9:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43676:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"43679:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43672:3:46"},"nodeType":"YulFunctionCall","src":"43672:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43657:3:46"},"nodeType":"YulFunctionCall","src":"43657:25:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43688:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"43696:10:46","type":"","value":"0x7fffffff"},{"name":"y","nodeType":"YulIdentifier","src":"43708:1:46"}],"functionName":{"name":"sdiv","nodeType":"YulIdentifier","src":"43691:4:46"},"nodeType":"YulFunctionCall","src":"43691:19:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"43684:3:46"},"nodeType":"YulFunctionCall","src":"43684:27:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43653:3:46"},"nodeType":"YulFunctionCall","src":"43653:59:46"},"nodeType":"YulIf","src":"43650:85:46"},{"nodeType":"YulAssignment","src":"43745:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43760:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"43763:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"43756:3:46"},"nodeType":"YulFunctionCall","src":"43756:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"43745:7:46"}]}]},"name":"checked_mul_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"42924:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"42927:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"42933:7:46","type":""}],"src":"42895:876:46"},{"body":{"nodeType":"YulBlock","src":"43825:300:46","statements":[{"nodeType":"YulAssignment","src":"43835:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43858:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"43840:17:46"},"nodeType":"YulFunctionCall","src":"43840:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"43835:1:46"}]},{"nodeType":"YulAssignment","src":"43869:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43892:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"43874:17:46"},"nodeType":"YulFunctionCall","src":"43874:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"43869:1:46"}]},{"body":{"nodeType":"YulBlock","src":"44067:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"44069:16:46"},"nodeType":"YulFunctionCall","src":"44069:18:46"},"nodeType":"YulExpressionStatement","src":"44069:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"43979:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"43972:6:46"},"nodeType":"YulFunctionCall","src":"43972:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"43965:6:46"},"nodeType":"YulFunctionCall","src":"43965:17:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"43987:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"43994:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"x","nodeType":"YulIdentifier","src":"44062:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"43990:3:46"},"nodeType":"YulFunctionCall","src":"43990:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"43984:2:46"},"nodeType":"YulFunctionCall","src":"43984:81:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"43961:3:46"},"nodeType":"YulFunctionCall","src":"43961:105:46"},"nodeType":"YulIf","src":"43958:131:46"},{"nodeType":"YulAssignment","src":"44099:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44114:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"44117:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"44110:3:46"},"nodeType":"YulFunctionCall","src":"44110:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"44099:7:46"}]}]},"name":"checked_mul_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"43808:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"43811:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"43817:7:46","type":""}],"src":"43777:348:46"},{"body":{"nodeType":"YulBlock","src":"44175:451:46","statements":[{"nodeType":"YulAssignment","src":"44185:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44207:1:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"44190:16:46"},"nodeType":"YulFunctionCall","src":"44190:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"44185:1:46"}]},{"nodeType":"YulAssignment","src":"44218:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"44240:1:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"44223:16:46"},"nodeType":"YulFunctionCall","src":"44223:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"44218:1:46"}]},{"body":{"nodeType":"YulBlock","src":"44417:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"44419:16:46"},"nodeType":"YulFunctionCall","src":"44419:18:46"},"nodeType":"YulExpressionStatement","src":"44419:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"44325:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"44328:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"44321:3:46"},"nodeType":"YulFunctionCall","src":"44321:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"44314:6:46"},"nodeType":"YulFunctionCall","src":"44314:17:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44337:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"44344:66:46","type":"","value":"0xffffffffffffffffffffffffffffffff80000000000000000000000000000000"},{"name":"y","nodeType":"YulIdentifier","src":"44412:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44340:3:46"},"nodeType":"YulFunctionCall","src":"44340:74:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"44333:3:46"},"nodeType":"YulFunctionCall","src":"44333:82:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"44310:3:46"},"nodeType":"YulFunctionCall","src":"44310:106:46"},"nodeType":"YulIf","src":"44307:132:46"},{"body":{"nodeType":"YulBlock","src":"44571:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"44573:16:46"},"nodeType":"YulFunctionCall","src":"44573:18:46"},"nodeType":"YulExpressionStatement","src":"44573:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"44512:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"44515:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"44508:3:46"},"nodeType":"YulFunctionCall","src":"44508:9:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44523:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"44530:34:46","type":"","value":"0x7fffffffffffffffffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"44566:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44526:3:46"},"nodeType":"YulFunctionCall","src":"44526:42:46"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"44519:3:46"},"nodeType":"YulFunctionCall","src":"44519:50:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"44504:3:46"},"nodeType":"YulFunctionCall","src":"44504:66:46"},"nodeType":"YulIf","src":"44501:92:46"},{"nodeType":"YulAssignment","src":"44603:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44615:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"44618:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"44611:3:46"},"nodeType":"YulFunctionCall","src":"44611:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"44603:4:46"}]}]},"name":"checked_sub_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"44161:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"44164:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"44170:4:46","type":""}],"src":"44131:495:46"},{"body":{"nodeType":"YulBlock","src":"44675:425:46","statements":[{"nodeType":"YulAssignment","src":"44685:23:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44706:1:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"44690:15:46"},"nodeType":"YulFunctionCall","src":"44690:18:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"44685:1:46"}]},{"nodeType":"YulAssignment","src":"44717:23:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"44738:1:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"44722:15:46"},"nodeType":"YulFunctionCall","src":"44722:18:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"44717:1:46"}]},{"body":{"nodeType":"YulBlock","src":"44915:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"44917:16:46"},"nodeType":"YulFunctionCall","src":"44917:18:46"},"nodeType":"YulExpressionStatement","src":"44917:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"44823:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"44826:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"44819:3:46"},"nodeType":"YulFunctionCall","src":"44819:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"44812:6:46"},"nodeType":"YulFunctionCall","src":"44812:17:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"44835:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"44842:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000"},{"name":"y","nodeType":"YulIdentifier","src":"44910:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44838:3:46"},"nodeType":"YulFunctionCall","src":"44838:74:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"44831:3:46"},"nodeType":"YulFunctionCall","src":"44831:82:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"44808:3:46"},"nodeType":"YulFunctionCall","src":"44808:106:46"},"nodeType":"YulIf","src":"44805:132:46"},{"body":{"nodeType":"YulBlock","src":"45045:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"45047:16:46"},"nodeType":"YulFunctionCall","src":"45047:18:46"},"nodeType":"YulExpressionStatement","src":"45047:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"45010:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"45013:1:46","type":"","value":"0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"45006:3:46"},"nodeType":"YulFunctionCall","src":"45006:9:46"},{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45021:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"45028:10:46","type":"","value":"0x7fffffff"},{"name":"y","nodeType":"YulIdentifier","src":"45040:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45024:3:46"},"nodeType":"YulFunctionCall","src":"45024:18:46"}],"functionName":{"name":"sgt","nodeType":"YulIdentifier","src":"45017:3:46"},"nodeType":"YulFunctionCall","src":"45017:26:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"45002:3:46"},"nodeType":"YulFunctionCall","src":"45002:42:46"},"nodeType":"YulIf","src":"44999:68:46"},{"nodeType":"YulAssignment","src":"45077:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45089:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"45092:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"45085:3:46"},"nodeType":"YulFunctionCall","src":"45085:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"45077:4:46"}]}]},"name":"checked_sub_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"44661:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"44664:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"44670:4:46","type":""}],"src":"44632:468:46"},{"body":{"nodeType":"YulBlock","src":"45151:146:46","statements":[{"nodeType":"YulAssignment","src":"45161:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45184:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"45166:17:46"},"nodeType":"YulFunctionCall","src":"45166:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"45161:1:46"}]},{"nodeType":"YulAssignment","src":"45195:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"45218:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"45200:17:46"},"nodeType":"YulFunctionCall","src":"45200:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"45195:1:46"}]},{"body":{"nodeType":"YulBlock","src":"45242:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"45244:16:46"},"nodeType":"YulFunctionCall","src":"45244:18:46"},"nodeType":"YulExpressionStatement","src":"45244:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45236:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"45239:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"45233:2:46"},"nodeType":"YulFunctionCall","src":"45233:8:46"},"nodeType":"YulIf","src":"45230:34:46"},{"nodeType":"YulAssignment","src":"45274:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45286:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"45289:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"45282:3:46"},"nodeType":"YulFunctionCall","src":"45282:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"45274:4:46"}]}]},"name":"checked_sub_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"45137:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"45140:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"45146:4:46","type":""}],"src":"45106:191:46"},{"body":{"nodeType":"YulBlock","src":"45347:144:46","statements":[{"nodeType":"YulAssignment","src":"45357:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45379:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"45362:16:46"},"nodeType":"YulFunctionCall","src":"45362:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"45357:1:46"}]},{"nodeType":"YulAssignment","src":"45390:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"45412:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"45395:16:46"},"nodeType":"YulFunctionCall","src":"45395:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"45390:1:46"}]},{"body":{"nodeType":"YulBlock","src":"45436:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"45438:16:46"},"nodeType":"YulFunctionCall","src":"45438:18:46"},"nodeType":"YulExpressionStatement","src":"45438:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45430:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"45433:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"45427:2:46"},"nodeType":"YulFunctionCall","src":"45427:8:46"},"nodeType":"YulIf","src":"45424:34:46"},{"nodeType":"YulAssignment","src":"45468:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"45480:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"45483:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"45476:3:46"},"nodeType":"YulFunctionCall","src":"45476:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"45468:4:46"}]}]},"name":"checked_sub_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"45333:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"45336:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"45342:4:46","type":""}],"src":"45303:188:46"},{"body":{"nodeType":"YulBlock","src":"45539:48:46","statements":[{"nodeType":"YulAssignment","src":"45549:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"45574:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"45567:6:46"},"nodeType":"YulFunctionCall","src":"45567:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"45560:6:46"},"nodeType":"YulFunctionCall","src":"45560:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"45549:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45521:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"45531:7:46","type":""}],"src":"45497:90:46"},{"body":{"nodeType":"YulBlock","src":"45638:32:46","statements":[{"nodeType":"YulAssignment","src":"45648:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"45659:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"45648:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45620:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"45630:7:46","type":""}],"src":"45593:77:46"},{"body":{"nodeType":"YulBlock","src":"45720:48:46","statements":[{"nodeType":"YulAssignment","src":"45730:32:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"45752:2:46","type":"","value":"15"},{"name":"value","nodeType":"YulIdentifier","src":"45756:5:46"}],"functionName":{"name":"signextend","nodeType":"YulIdentifier","src":"45741:10:46"},"nodeType":"YulFunctionCall","src":"45741:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"45730:7:46"}]}]},"name":"cleanup_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45702:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"45712:7:46","type":""}],"src":"45676:92:46"},{"body":{"nodeType":"YulBlock","src":"45818:32:46","statements":[{"nodeType":"YulAssignment","src":"45828:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"45839:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"45828:7:46"}]}]},"name":"cleanup_t_int256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45800:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"45810:7:46","type":""}],"src":"45774:76:46"},{"body":{"nodeType":"YulBlock","src":"45899:47:46","statements":[{"nodeType":"YulAssignment","src":"45909:31:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"45931:1:46","type":"","value":"3"},{"name":"value","nodeType":"YulIdentifier","src":"45934:5:46"}],"functionName":{"name":"signextend","nodeType":"YulIdentifier","src":"45920:10:46"},"nodeType":"YulFunctionCall","src":"45920:20:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"45909:7:46"}]}]},"name":"cleanup_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45881:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"45891:7:46","type":""}],"src":"45856:90:46"},{"body":{"nodeType":"YulBlock","src":"45997:32:46","statements":[{"nodeType":"YulAssignment","src":"46007:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"46018:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"46007:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45979:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"45989:7:46","type":""}],"src":"45952:77:46"},{"body":{"nodeType":"YulBlock","src":"46079:49:46","statements":[{"nodeType":"YulAssignment","src":"46089:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46104:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46111:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"46100:3:46"},"nodeType":"YulFunctionCall","src":"46100:22:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"46089:7:46"}]}]},"name":"cleanup_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"46061:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"46071:7:46","type":""}],"src":"46035:93:46"},{"body":{"nodeType":"YulBlock","src":"46178:57:46","statements":[{"nodeType":"YulAssignment","src":"46188:41:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46203:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46210:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"46199:3:46"},"nodeType":"YulFunctionCall","src":"46199:30:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"46188:7:46"}]}]},"name":"cleanup_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"46160:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"46170:7:46","type":""}],"src":"46134:101:46"},{"body":{"nodeType":"YulBlock","src":"46284:43:46","statements":[{"nodeType":"YulAssignment","src":"46294:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46309:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46316:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"46305:3:46"},"nodeType":"YulFunctionCall","src":"46305:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"46294:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"46266:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"46276:7:46","type":""}],"src":"46241:86:46"},{"body":{"nodeType":"YulBlock","src":"46384:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"46407:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"46412:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"46417:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"46394:12:46"},"nodeType":"YulFunctionCall","src":"46394:30:46"},"nodeType":"YulExpressionStatement","src":"46394:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"46465:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"46470:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46461:3:46"},"nodeType":"YulFunctionCall","src":"46461:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"46479:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"46454:6:46"},"nodeType":"YulFunctionCall","src":"46454:27:46"},"nodeType":"YulExpressionStatement","src":"46454:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"46366:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"46371:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"46376:6:46","type":""}],"src":"46333:154:46"},{"body":{"nodeType":"YulBlock","src":"46542:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"46552:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"46561:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"46556:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"46621:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"46646:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"46651:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46642:3:46"},"nodeType":"YulFunctionCall","src":"46642:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"46665:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"46670:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46661:3:46"},"nodeType":"YulFunctionCall","src":"46661:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"46655:5:46"},"nodeType":"YulFunctionCall","src":"46655:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"46635:6:46"},"nodeType":"YulFunctionCall","src":"46635:39:46"},"nodeType":"YulExpressionStatement","src":"46635:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"46582:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"46585:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"46579:2:46"},"nodeType":"YulFunctionCall","src":"46579:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"46593:19:46","statements":[{"nodeType":"YulAssignment","src":"46595:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"46604:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"46607:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46600:3:46"},"nodeType":"YulFunctionCall","src":"46600:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"46595:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"46575:3:46","statements":[]},"src":"46571:113:46"},{"body":{"nodeType":"YulBlock","src":"46718:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"46768:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"46773:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46764:3:46"},"nodeType":"YulFunctionCall","src":"46764:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"46782:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"46757:6:46"},"nodeType":"YulFunctionCall","src":"46757:27:46"},"nodeType":"YulExpressionStatement","src":"46757:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"46699:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"46702:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"46696:2:46"},"nodeType":"YulFunctionCall","src":"46696:13:46"},"nodeType":"YulIf","src":"46693:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"46524:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"46529:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"46534:6:46","type":""}],"src":"46493:307:46"},{"body":{"nodeType":"YulBlock","src":"46849:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"46859:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"46881:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"46911:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"46889:21:46"},"nodeType":"YulFunctionCall","src":"46889:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46877:3:46"},"nodeType":"YulFunctionCall","src":"46877:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"46863:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"47028:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"47030:16:46"},"nodeType":"YulFunctionCall","src":"47030:18:46"},"nodeType":"YulExpressionStatement","src":"47030:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"46971:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"46983:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"46968:2:46"},"nodeType":"YulFunctionCall","src":"46968:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"47007:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"47019:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"47004:2:46"},"nodeType":"YulFunctionCall","src":"47004:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"46965:2:46"},"nodeType":"YulFunctionCall","src":"46965:62:46"},"nodeType":"YulIf","src":"46962:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"47066:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"47070:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"47059:6:46"},"nodeType":"YulFunctionCall","src":"47059:22:46"},"nodeType":"YulExpressionStatement","src":"47059:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"46835:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"46843:4:46","type":""}],"src":"46806:281:46"},{"body":{"nodeType":"YulBlock","src":"47136:190:46","statements":[{"nodeType":"YulAssignment","src":"47146:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47173:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"47155:17:46"},"nodeType":"YulFunctionCall","src":"47155:24:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"47146:5:46"}]},{"body":{"nodeType":"YulBlock","src":"47269:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"47271:16:46"},"nodeType":"YulFunctionCall","src":"47271:18:46"},"nodeType":"YulExpressionStatement","src":"47271:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47194:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47201:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"47191:2:46"},"nodeType":"YulFunctionCall","src":"47191:77:46"},"nodeType":"YulIf","src":"47188:103:46"},{"nodeType":"YulAssignment","src":"47300:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47311:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47318:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47307:3:46"},"nodeType":"YulFunctionCall","src":"47307:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"47300:3:46"}]}]},"name":"increment_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47122:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"47132:3:46","type":""}],"src":"47093:233:46"},{"body":{"nodeType":"YulBlock","src":"47374:133:46","statements":[{"nodeType":"YulAssignment","src":"47384:32:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47410:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"47393:16:46"},"nodeType":"YulFunctionCall","src":"47393:23:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"47384:5:46"}]},{"body":{"nodeType":"YulBlock","src":"47450:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"47452:16:46"},"nodeType":"YulFunctionCall","src":"47452:18:46"},"nodeType":"YulExpressionStatement","src":"47452:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47431:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47438:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"47428:2:46"},"nodeType":"YulFunctionCall","src":"47428:21:46"},"nodeType":"YulIf","src":"47425:47:46"},{"nodeType":"YulAssignment","src":"47481:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47492:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47499:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47488:3:46"},"nodeType":"YulFunctionCall","src":"47488:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"47481:3:46"}]}]},"name":"increment_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47360:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"47370:3:46","type":""}],"src":"47332:175:46"},{"body":{"nodeType":"YulBlock","src":"47555:141:46","statements":[{"nodeType":"YulAssignment","src":"47565:32:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47591:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"47574:16:46"},"nodeType":"YulFunctionCall","src":"47574:23:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"47565:5:46"}]},{"body":{"nodeType":"YulBlock","src":"47639:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"47641:16:46"},"nodeType":"YulFunctionCall","src":"47641:18:46"},"nodeType":"YulExpressionStatement","src":"47641:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47612:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47619:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"47609:2:46"},"nodeType":"YulFunctionCall","src":"47609:29:46"},"nodeType":"YulIf","src":"47606:55:46"},{"nodeType":"YulAssignment","src":"47670:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47681:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47688:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47677:3:46"},"nodeType":"YulFunctionCall","src":"47677:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"47670:3:46"}]}]},"name":"increment_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47541:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"47551:3:46","type":""}],"src":"47513:183:46"},{"body":{"nodeType":"YulBlock","src":"47747:48:46","statements":[{"nodeType":"YulAssignment","src":"47757:32:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47783:5:46"}],"functionName":{"name":"shift_left_248","nodeType":"YulIdentifier","src":"47768:14:46"},"nodeType":"YulFunctionCall","src":"47768:21:46"},"variableNames":[{"name":"aligned","nodeType":"YulIdentifier","src":"47757:7:46"}]}]},"name":"leftAlign_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47729:5:46","type":""}],"returnVariables":[{"name":"aligned","nodeType":"YulTypedName","src":"47739:7:46","type":""}],"src":"47702:93:46"},{"body":{"nodeType":"YulBlock","src":"47839:188:46","statements":[{"nodeType":"YulAssignment","src":"47849:31:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47874:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"47858:15:46"},"nodeType":"YulFunctionCall","src":"47858:22:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"47849:5:46"}]},{"body":{"nodeType":"YulBlock","src":"47970:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"47972:16:46"},"nodeType":"YulFunctionCall","src":"47972:18:46"},"nodeType":"YulExpressionStatement","src":"47972:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47895:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47902:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"47892:2:46"},"nodeType":"YulFunctionCall","src":"47892:77:46"},"nodeType":"YulIf","src":"47889:103:46"},{"nodeType":"YulAssignment","src":"48001:20:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48012:1:46","type":"","value":"0"},{"name":"value","nodeType":"YulIdentifier","src":"48015:5:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"48008:3:46"},"nodeType":"YulFunctionCall","src":"48008:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"48001:3:46"}]}]},"name":"negate_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47825:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"47835:3:46","type":""}],"src":"47801:226:46"},{"body":{"nodeType":"YulBlock","src":"48061:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48078:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48081:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48071:6:46"},"nodeType":"YulFunctionCall","src":"48071:88:46"},"nodeType":"YulExpressionStatement","src":"48071:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48175:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"48178:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48168:6:46"},"nodeType":"YulFunctionCall","src":"48168:15:46"},"nodeType":"YulExpressionStatement","src":"48168:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48199:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48202:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"48192:6:46"},"nodeType":"YulFunctionCall","src":"48192:15:46"},"nodeType":"YulExpressionStatement","src":"48192:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"48033:180:46"},{"body":{"nodeType":"YulBlock","src":"48247:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48264:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48267:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48257:6:46"},"nodeType":"YulFunctionCall","src":"48257:88:46"},"nodeType":"YulExpressionStatement","src":"48257:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48361:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"48364:4:46","type":"","value":"0x12"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48354:6:46"},"nodeType":"YulFunctionCall","src":"48354:15:46"},"nodeType":"YulExpressionStatement","src":"48354:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48385:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48388:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"48378:6:46"},"nodeType":"YulFunctionCall","src":"48378:15:46"},"nodeType":"YulExpressionStatement","src":"48378:15:46"}]},"name":"panic_error_0x12","nodeType":"YulFunctionDefinition","src":"48219:180:46"},{"body":{"nodeType":"YulBlock","src":"48433:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48450:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48453:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48443:6:46"},"nodeType":"YulFunctionCall","src":"48443:88:46"},"nodeType":"YulExpressionStatement","src":"48443:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48547:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"48550:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48540:6:46"},"nodeType":"YulFunctionCall","src":"48540:15:46"},"nodeType":"YulExpressionStatement","src":"48540:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48571:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48574:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"48564:6:46"},"nodeType":"YulFunctionCall","src":"48564:15:46"},"nodeType":"YulExpressionStatement","src":"48564:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"48405:180:46"},{"body":{"nodeType":"YulBlock","src":"48619:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48636:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48639:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48629:6:46"},"nodeType":"YulFunctionCall","src":"48629:88:46"},"nodeType":"YulExpressionStatement","src":"48629:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48733:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"48736:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48726:6:46"},"nodeType":"YulFunctionCall","src":"48726:15:46"},"nodeType":"YulExpressionStatement","src":"48726:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48757:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48760:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"48750:6:46"},"nodeType":"YulFunctionCall","src":"48750:15:46"},"nodeType":"YulExpressionStatement","src":"48750:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"48591:180:46"},{"body":{"nodeType":"YulBlock","src":"48866:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"48883:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"48886:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"48876:6:46"},"nodeType":"YulFunctionCall","src":"48876:12:46"},"nodeType":"YulExpressionStatement","src":"48876:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"48777:117:46"},{"body":{"nodeType":"YulBlock","src":"48989:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49006:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"49009:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"48999:6:46"},"nodeType":"YulFunctionCall","src":"48999:12:46"},"nodeType":"YulExpressionStatement","src":"48999:12:46"}]},"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulFunctionDefinition","src":"48900:117:46"},{"body":{"nodeType":"YulBlock","src":"49112:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49129:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"49132:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"49122:6:46"},"nodeType":"YulFunctionCall","src":"49122:12:46"},"nodeType":"YulExpressionStatement","src":"49122:12:46"}]},"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulFunctionDefinition","src":"49023:117:46"},{"body":{"nodeType":"YulBlock","src":"49235:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49252:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"49255:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"49245:6:46"},"nodeType":"YulFunctionCall","src":"49245:12:46"},"nodeType":"YulExpressionStatement","src":"49245:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"49146:117:46"},{"body":{"nodeType":"YulBlock","src":"49358:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49375:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"49378:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"49368:6:46"},"nodeType":"YulFunctionCall","src":"49368:12:46"},"nodeType":"YulExpressionStatement","src":"49368:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"49269:117:46"},{"body":{"nodeType":"YulBlock","src":"49481:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49498:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"49501:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"49491:6:46"},"nodeType":"YulFunctionCall","src":"49491:12:46"},"nodeType":"YulExpressionStatement","src":"49491:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"49392:117:46"},{"body":{"nodeType":"YulBlock","src":"49563:54:46","statements":[{"nodeType":"YulAssignment","src":"49573:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"49591:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"49598:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"49587:3:46"},"nodeType":"YulFunctionCall","src":"49587:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49607:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"49603:3:46"},"nodeType":"YulFunctionCall","src":"49603:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"49583:3:46"},"nodeType":"YulFunctionCall","src":"49583:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"49573:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"49546:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"49556:6:46","type":""}],"src":"49515:102:46"},{"body":{"nodeType":"YulBlock","src":"49666:53:46","statements":[{"nodeType":"YulAssignment","src":"49676:36:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49701:3:46","type":"","value":"248"},{"name":"value","nodeType":"YulIdentifier","src":"49706:5:46"}],"functionName":{"name":"shl","nodeType":"YulIdentifier","src":"49697:3:46"},"nodeType":"YulFunctionCall","src":"49697:15:46"},"variableNames":[{"name":"newValue","nodeType":"YulIdentifier","src":"49676:8:46"}]}]},"name":"shift_left_248","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"49647:5:46","type":""}],"returnVariables":[{"name":"newValue","nodeType":"YulTypedName","src":"49657:8:46","type":""}],"src":"49623:96:46"},{"body":{"nodeType":"YulBlock","src":"49776:51:46","statements":[{"nodeType":"YulAssignment","src":"49786:34:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"49811:1:46","type":"","value":"1"},{"name":"value","nodeType":"YulIdentifier","src":"49814:5:46"}],"functionName":{"name":"shr","nodeType":"YulIdentifier","src":"49807:3:46"},"nodeType":"YulFunctionCall","src":"49807:13:46"},"variableNames":[{"name":"newValue","nodeType":"YulIdentifier","src":"49786:8:46"}]}]},"name":"shift_right_1_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"49757:5:46","type":""}],"returnVariables":[{"name":"newValue","nodeType":"YulTypedName","src":"49767:8:46","type":""}],"src":"49725:102:46"},{"body":{"nodeType":"YulBlock","src":"49939:134:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"49961:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"49969:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"49957:3:46"},"nodeType":"YulFunctionCall","src":"49957:14:46"},{"hexValue":"5769746e65744275666665723a204e6f7420656e6f7567682062797465732069","kind":"string","nodeType":"YulLiteral","src":"49973:34:46","type":"","value":"WitnetBuffer: Not enough bytes i"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"49950:6:46"},"nodeType":"YulFunctionCall","src":"49950:58:46"},"nodeType":"YulExpressionStatement","src":"49950:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50029:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50037:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50025:3:46"},"nodeType":"YulFunctionCall","src":"50025:15:46"},{"hexValue":"6e20627566666572207768656e207365656b696e67","kind":"string","nodeType":"YulLiteral","src":"50042:23:46","type":"","value":"n buffer when seeking"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50018:6:46"},"nodeType":"YulFunctionCall","src":"50018:48:46"},"nodeType":"YulExpressionStatement","src":"50018:48:46"}]},"name":"store_literal_in_memory_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"49931:6:46","type":""}],"src":"49833:240:46"},{"body":{"nodeType":"YulBlock","src":"50185:202:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50207:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50215:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50203:3:46"},"nodeType":"YulFunctionCall","src":"50203:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"50219:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50196:6:46"},"nodeType":"YulFunctionCall","src":"50196:58:46"},"nodeType":"YulExpressionStatement","src":"50196:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50275:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50283:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50271:3:46"},"nodeType":"YulFunctionCall","src":"50271:15:46"},{"hexValue":"6120606669786564602076616c75652066726f6d2061206057542e43424f5260","kind":"string","nodeType":"YulLiteral","src":"50288:34:46","type":"","value":"a `fixed` value from a `WT.CBOR`"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50264:6:46"},"nodeType":"YulFunctionCall","src":"50264:59:46"},"nodeType":"YulExpressionStatement","src":"50264:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50344:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50352:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50340:3:46"},"nodeType":"YulFunctionCall","src":"50340:15:46"},{"hexValue":"2077697468206d616a6f725479706520213d2037","kind":"string","nodeType":"YulLiteral","src":"50357:22:46","type":"","value":" with majorType != 7"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50333:6:46"},"nodeType":"YulFunctionCall","src":"50333:47:46"},"nodeType":"YulExpressionStatement","src":"50333:47:46"}]},"name":"store_literal_in_memory_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"50177:6:46","type":""}],"src":"50079:308:46"},{"body":{"nodeType":"YulBlock","src":"50499:199:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50521:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50529:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50517:3:46"},"nodeType":"YulFunctionCall","src":"50517:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"50533:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50510:6:46"},"nodeType":"YulFunctionCall","src":"50510:58:46"},"nodeType":"YulExpressionStatement","src":"50510:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50589:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50597:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50585:3:46"},"nodeType":"YulFunctionCall","src":"50585:15:46"},{"hexValue":"6075696e743634602066726f6d206120605769746e65742e43424f5260207769","kind":"string","nodeType":"YulLiteral","src":"50602:34:46","type":"","value":"`uint64` from a `Witnet.CBOR` wi"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50578:6:46"},"nodeType":"YulFunctionCall","src":"50578:59:46"},"nodeType":"YulExpressionStatement","src":"50578:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50658:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50666:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50654:3:46"},"nodeType":"YulFunctionCall","src":"50654:15:46"},{"hexValue":"7468206d616a6f725479706520213d2030","kind":"string","nodeType":"YulLiteral","src":"50671:19:46","type":"","value":"th majorType != 0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50647:6:46"},"nodeType":"YulFunctionCall","src":"50647:44:46"},"nodeType":"YulExpressionStatement","src":"50647:44:46"}]},"name":"store_literal_in_memory_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"50491:6:46","type":""}],"src":"50393:305:46"},{"body":{"nodeType":"YulBlock","src":"50810:191:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50832:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50840:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50828:3:46"},"nodeType":"YulFunctionCall","src":"50828:14:46"},{"hexValue":"5769746e65744275666665723a20547269656420746f20726561642066726f6d","kind":"string","nodeType":"YulLiteral","src":"50844:34:46","type":"","value":"WitnetBuffer: Tried to read from"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50821:6:46"},"nodeType":"YulFunctionCall","src":"50821:58:46"},"nodeType":"YulExpressionStatement","src":"50821:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50900:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50908:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50896:3:46"},"nodeType":"YulFunctionCall","src":"50896:15:46"},{"hexValue":"206120636f6e73756d65642042756666657220286d75737420726577696e6420","kind":"string","nodeType":"YulLiteral","src":"50913:34:46","type":"","value":" a consumed Buffer (must rewind "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50889:6:46"},"nodeType":"YulFunctionCall","src":"50889:59:46"},"nodeType":"YulExpressionStatement","src":"50889:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"50969:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"50977:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"50965:3:46"},"nodeType":"YulFunctionCall","src":"50965:15:46"},{"hexValue":"697420666972737429","kind":"string","nodeType":"YulLiteral","src":"50982:11:46","type":"","value":"it first)"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"50958:6:46"},"nodeType":"YulFunctionCall","src":"50958:36:46"},"nodeType":"YulExpressionStatement","src":"50958:36:46"}]},"name":"store_literal_in_memory_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"50802:6:46","type":""}],"src":"50704:297:46"},{"body":{"nodeType":"YulBlock","src":"51113:202:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51135:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51143:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51131:3:46"},"nodeType":"YulFunctionCall","src":"51131:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20496e76616c6964206c656e677468","kind":"string","nodeType":"YulLiteral","src":"51147:34:46","type":"","value":"WitnetDecoderLib: Invalid length"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51124:6:46"},"nodeType":"YulFunctionCall","src":"51124:58:46"},"nodeType":"YulExpressionStatement","src":"51124:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51203:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51211:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51199:3:46"},"nodeType":"YulFunctionCall","src":"51199:15:46"},{"hexValue":"20656e636f64696e6720286e6f6e2d6578697374656e74206164646974696f6e","kind":"string","nodeType":"YulLiteral","src":"51216:34:46","type":"","value":" encoding (non-existent addition"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51192:6:46"},"nodeType":"YulFunctionCall","src":"51192:59:46"},"nodeType":"YulExpressionStatement","src":"51192:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51272:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51280:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51268:3:46"},"nodeType":"YulFunctionCall","src":"51268:15:46"},{"hexValue":"616c496e666f726d6174696f6e2076616c756529","kind":"string","nodeType":"YulLiteral","src":"51285:22:46","type":"","value":"alInformation value)"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51261:6:46"},"nodeType":"YulFunctionCall","src":"51261:47:46"},"nodeType":"YulExpressionStatement","src":"51261:47:46"}]},"name":"store_literal_in_memory_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"51105:6:46","type":""}],"src":"51007:308:46"},{"body":{"nodeType":"YulBlock","src":"51427:134:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51449:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51457:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51445:3:46"},"nodeType":"YulFunctionCall","src":"51445:14:46"},{"hexValue":"5769746e65744275666665723a204e6f7420656e6f7567682062797465732069","kind":"string","nodeType":"YulLiteral","src":"51461:34:46","type":"","value":"WitnetBuffer: Not enough bytes i"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51438:6:46"},"nodeType":"YulFunctionCall","src":"51438:58:46"},"nodeType":"YulExpressionStatement","src":"51438:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51517:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51525:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51513:3:46"},"nodeType":"YulFunctionCall","src":"51513:15:46"},{"hexValue":"6e20627566666572207768656e2072656164696e67","kind":"string","nodeType":"YulLiteral","src":"51530:23:46","type":"","value":"n buffer when reading"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51506:6:46"},"nodeType":"YulFunctionCall","src":"51506:48:46"},"nodeType":"YulExpressionStatement","src":"51506:48:46"}]},"name":"store_literal_in_memory_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"51419:6:46","type":""}],"src":"51321:240:46"},{"body":{"nodeType":"YulBlock","src":"51673:183:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51695:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51703:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51691:3:46"},"nodeType":"YulFunctionCall","src":"51691:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e","kind":"string","nodeType":"YulLiteral","src":"51707:34:46","type":"","value":"WitnetDecoderLib: Indefinite-len"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51684:6:46"},"nodeType":"YulFunctionCall","src":"51684:58:46"},"nodeType":"YulExpressionStatement","src":"51684:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51763:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51771:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51759:3:46"},"nodeType":"YulFunctionCall","src":"51759:15:46"},{"hexValue":"6774682043424f522061727261797320617265206e6f7420737570706f727465","kind":"string","nodeType":"YulLiteral","src":"51776:34:46","type":"","value":"gth CBOR arrays are not supporte"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51752:6:46"},"nodeType":"YulFunctionCall","src":"51752:59:46"},"nodeType":"YulExpressionStatement","src":"51752:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51832:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51840:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51828:3:46"},"nodeType":"YulFunctionCall","src":"51828:15:46"},{"hexValue":"64","kind":"string","nodeType":"YulLiteral","src":"51845:3:46","type":"","value":"d"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51821:6:46"},"nodeType":"YulFunctionCall","src":"51821:28:46"},"nodeType":"YulExpressionStatement","src":"51821:28:46"}]},"name":"store_literal_in_memory_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"51665:6:46","type":""}],"src":"51567:289:46"},{"body":{"nodeType":"YulBlock","src":"51968:205:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"51990:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"51998:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"51986:3:46"},"nodeType":"YulFunctionCall","src":"51986:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"52002:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"51979:6:46"},"nodeType":"YulFunctionCall","src":"51979:58:46"},"nodeType":"YulExpressionStatement","src":"51979:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52058:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52066:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52054:3:46"},"nodeType":"YulFunctionCall","src":"52054:15:46"},{"hexValue":"612060626f6f6c602076616c75652066726f6d206120605769746e65742e4342","kind":"string","nodeType":"YulLiteral","src":"52071:34:46","type":"","value":"a `bool` value from a `Witnet.CB"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52047:6:46"},"nodeType":"YulFunctionCall","src":"52047:59:46"},"nodeType":"YulExpressionStatement","src":"52047:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52127:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52135:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52123:3:46"},"nodeType":"YulFunctionCall","src":"52123:15:46"},{"hexValue":"4f52602077697468206d616a6f725479706520213d2037","kind":"string","nodeType":"YulLiteral","src":"52140:25:46","type":"","value":"OR` with majorType != 7"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52116:6:46"},"nodeType":"YulFunctionCall","src":"52116:50:46"},"nodeType":"YulExpressionStatement","src":"52116:50:46"}]},"name":"store_literal_in_memory_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"51960:6:46","type":""}],"src":"51862:311:46"},{"body":{"nodeType":"YulBlock","src":"52285:201:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52307:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52315:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52303:3:46"},"nodeType":"YulFunctionCall","src":"52303:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"52319:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52296:6:46"},"nodeType":"YulFunctionCall","src":"52296:58:46"},"nodeType":"YulExpressionStatement","src":"52296:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52375:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52383:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52371:3:46"},"nodeType":"YulFunctionCall","src":"52371:15:46"},{"hexValue":"60696e743132385b5d602066726f6d206120605769746e65742e43424f526020","kind":"string","nodeType":"YulLiteral","src":"52388:34:46","type":"","value":"`int128[]` from a `Witnet.CBOR` "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52364:6:46"},"nodeType":"YulFunctionCall","src":"52364:59:46"},"nodeType":"YulExpressionStatement","src":"52364:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52444:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52452:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52440:3:46"},"nodeType":"YulFunctionCall","src":"52440:15:46"},{"hexValue":"77697468206d616a6f725479706520213d2034","kind":"string","nodeType":"YulLiteral","src":"52457:21:46","type":"","value":"with majorType != 4"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52433:6:46"},"nodeType":"YulFunctionCall","src":"52433:46:46"},"nodeType":"YulExpressionStatement","src":"52433:46:46"}]},"name":"store_literal_in_memory_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"52277:6:46","type":""}],"src":"52179:307:46"},{"body":{"nodeType":"YulBlock","src":"52598:124:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52620:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52628:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52616:3:46"},"nodeType":"YulFunctionCall","src":"52616:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20496e76616c696420696e64656669","kind":"string","nodeType":"YulLiteral","src":"52632:34:46","type":"","value":"WitnetDecoderLib: Invalid indefi"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52609:6:46"},"nodeType":"YulFunctionCall","src":"52609:58:46"},"nodeType":"YulExpressionStatement","src":"52609:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52688:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52696:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52684:3:46"},"nodeType":"YulFunctionCall","src":"52684:15:46"},{"hexValue":"6e697465206c656e677468","kind":"string","nodeType":"YulLiteral","src":"52701:13:46","type":"","value":"nite length"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52677:6:46"},"nodeType":"YulFunctionCall","src":"52677:38:46"},"nodeType":"YulExpressionStatement","src":"52677:38:46"}]},"name":"store_literal_in_memory_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"52590:6:46","type":""}],"src":"52492:230:46"},{"body":{"nodeType":"YulBlock","src":"52834:141:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52856:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52864:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52852:3:46"},"nodeType":"YulFunctionCall","src":"52852:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20466f756e6420656d707479206275","kind":"string","nodeType":"YulLiteral","src":"52868:34:46","type":"","value":"WitnetDecoderLib: Found empty bu"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52845:6:46"},"nodeType":"YulFunctionCall","src":"52845:58:46"},"nodeType":"YulExpressionStatement","src":"52845:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"52924:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"52932:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"52920:3:46"},"nodeType":"YulFunctionCall","src":"52920:15:46"},{"hexValue":"66666572207768656e2070617273696e672043424f522076616c7565","kind":"string","nodeType":"YulLiteral","src":"52937:30:46","type":"","value":"ffer when parsing CBOR value"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"52913:6:46"},"nodeType":"YulFunctionCall","src":"52913:55:46"},"nodeType":"YulExpressionStatement","src":"52913:55:46"}]},"name":"store_literal_in_memory_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"52826:6:46","type":""}],"src":"52728:247:46"},{"body":{"nodeType":"YulBlock","src":"53087:201:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53109:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53117:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53105:3:46"},"nodeType":"YulFunctionCall","src":"53105:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"53121:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53098:6:46"},"nodeType":"YulFunctionCall","src":"53098:58:46"},"nodeType":"YulExpressionStatement","src":"53098:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53177:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53185:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53173:3:46"},"nodeType":"YulFunctionCall","src":"53173:15:46"},{"hexValue":"6075696e7436345b5d602066726f6d206120605769746e65742e43424f526020","kind":"string","nodeType":"YulLiteral","src":"53190:34:46","type":"","value":"`uint64[]` from a `Witnet.CBOR` "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53166:6:46"},"nodeType":"YulFunctionCall","src":"53166:59:46"},"nodeType":"YulExpressionStatement","src":"53166:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53246:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53254:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53242:3:46"},"nodeType":"YulFunctionCall","src":"53242:15:46"},{"hexValue":"77697468206d616a6f725479706520213d2034","kind":"string","nodeType":"YulLiteral","src":"53259:21:46","type":"","value":"with majorType != 4"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53235:6:46"},"nodeType":"YulFunctionCall","src":"53235:46:46"},"nodeType":"YulExpressionStatement","src":"53235:46:46"}]},"name":"store_literal_in_memory_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"53079:6:46","type":""}],"src":"52981:307:46"},{"body":{"nodeType":"YulBlock","src":"53400:122:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53422:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53430:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53418:3:46"},"nodeType":"YulFunctionCall","src":"53418:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20496e76616c69642043424f52206d","kind":"string","nodeType":"YulLiteral","src":"53434:34:46","type":"","value":"WitnetDecoderLib: Invalid CBOR m"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53411:6:46"},"nodeType":"YulFunctionCall","src":"53411:58:46"},"nodeType":"YulExpressionStatement","src":"53411:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53490:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53498:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53486:3:46"},"nodeType":"YulFunctionCall","src":"53486:15:46"},{"hexValue":"616a6f722074797065","kind":"string","nodeType":"YulLiteral","src":"53503:11:46","type":"","value":"ajor type"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53479:6:46"},"nodeType":"YulFunctionCall","src":"53479:36:46"},"nodeType":"YulExpressionStatement","src":"53479:36:46"}]},"name":"store_literal_in_memory_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"53392:6:46","type":""}],"src":"53294:228:46"},{"body":{"nodeType":"YulBlock","src":"53634:210:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53656:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53664:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53652:3:46"},"nodeType":"YulFunctionCall","src":"53652:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"53668:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53645:6:46"},"nodeType":"YulFunctionCall","src":"53645:58:46"},"nodeType":"YulExpressionStatement","src":"53645:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53724:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53732:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53720:3:46"},"nodeType":"YulFunctionCall","src":"53720:15:46"},{"hexValue":"60626f6f6c602066726f6d206120605769746e65742e43424f52602077697468","kind":"string","nodeType":"YulLiteral","src":"53737:34:46","type":"","value":"`bool` from a `Witnet.CBOR` with"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53713:6:46"},"nodeType":"YulFunctionCall","src":"53713:59:46"},"nodeType":"YulExpressionStatement","src":"53713:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53793:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53801:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53789:3:46"},"nodeType":"YulFunctionCall","src":"53789:15:46"},{"hexValue":"206c656e20646966666572656e74207468616e203230206f72203231","kind":"string","nodeType":"YulLiteral","src":"53806:30:46","type":"","value":" len different than 20 or 21"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53782:6:46"},"nodeType":"YulFunctionCall","src":"53782:55:46"},"nodeType":"YulExpressionStatement","src":"53782:55:46"}]},"name":"store_literal_in_memory_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"53626:6:46","type":""}],"src":"53528:316:46"},{"body":{"nodeType":"YulBlock","src":"53956:114:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"53978:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"53986:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"53974:3:46"},"nodeType":"YulFunctionCall","src":"53974:14:46"},{"hexValue":"5769746e65744275666665723a2043616e6e6f7420636f707920302062797465","kind":"string","nodeType":"YulLiteral","src":"53990:34:46","type":"","value":"WitnetBuffer: Cannot copy 0 byte"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"53967:6:46"},"nodeType":"YulFunctionCall","src":"53967:58:46"},"nodeType":"YulExpressionStatement","src":"53967:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54046:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54054:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54042:3:46"},"nodeType":"YulFunctionCall","src":"54042:15:46"},{"hexValue":"73","kind":"string","nodeType":"YulLiteral","src":"54059:3:46","type":"","value":"s"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54035:6:46"},"nodeType":"YulFunctionCall","src":"54035:28:46"},"nodeType":"YulExpressionStatement","src":"54035:28:46"}]},"name":"store_literal_in_memory_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"53948:6:46","type":""}],"src":"53850:220:46"},{"body":{"nodeType":"YulBlock","src":"54182:205:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54204:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54212:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54200:3:46"},"nodeType":"YulFunctionCall","src":"54200:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"54216:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54193:6:46"},"nodeType":"YulFunctionCall","src":"54193:58:46"},"nodeType":"YulExpressionStatement","src":"54193:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54272:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54280:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54268:3:46"},"nodeType":"YulFunctionCall","src":"54268:15:46"},{"hexValue":"60696e74313238602066726f6d206120605769746e65742e43424f5260207769","kind":"string","nodeType":"YulLiteral","src":"54285:34:46","type":"","value":"`int128` from a `Witnet.CBOR` wi"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54261:6:46"},"nodeType":"YulFunctionCall","src":"54261:59:46"},"nodeType":"YulExpressionStatement","src":"54261:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54341:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54349:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54337:3:46"},"nodeType":"YulFunctionCall","src":"54337:15:46"},{"hexValue":"7468206d616a6f7254797065206e6f742030206f722031","kind":"string","nodeType":"YulLiteral","src":"54354:25:46","type":"","value":"th majorType not 0 or 1"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54330:6:46"},"nodeType":"YulFunctionCall","src":"54330:50:46"},"nodeType":"YulExpressionStatement","src":"54330:50:46"}]},"name":"store_literal_in_memory_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"54174:6:46","type":""}],"src":"54076:311:46"},{"body":{"nodeType":"YulBlock","src":"54499:201:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54521:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54529:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54517:3:46"},"nodeType":"YulFunctionCall","src":"54517:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"54533:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54510:6:46"},"nodeType":"YulFunctionCall","src":"54510:58:46"},"nodeType":"YulExpressionStatement","src":"54510:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54589:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54597:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54585:3:46"},"nodeType":"YulFunctionCall","src":"54585:15:46"},{"hexValue":"60737472696e675b5d602066726f6d206120605769746e65742e43424f526020","kind":"string","nodeType":"YulLiteral","src":"54602:34:46","type":"","value":"`string[]` from a `Witnet.CBOR` "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54578:6:46"},"nodeType":"YulFunctionCall","src":"54578:59:46"},"nodeType":"YulExpressionStatement","src":"54578:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54658:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54666:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54654:3:46"},"nodeType":"YulFunctionCall","src":"54654:15:46"},{"hexValue":"77697468206d616a6f725479706520213d2034","kind":"string","nodeType":"YulLiteral","src":"54671:21:46","type":"","value":"with majorType != 4"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54647:6:46"},"nodeType":"YulFunctionCall","src":"54647:46:46"},"nodeType":"YulExpressionStatement","src":"54647:46:46"}]},"name":"store_literal_in_memory_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"54491:6:46","type":""}],"src":"54393:307:46"},{"body":{"nodeType":"YulBlock","src":"54812:209:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54834:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54842:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54830:3:46"},"nodeType":"YulFunctionCall","src":"54830:14:46"},{"hexValue":"5769746e65744465636f6465724c69623a20547269656420746f207265616420","kind":"string","nodeType":"YulLiteral","src":"54846:34:46","type":"","value":"WitnetDecoderLib: Tried to read "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54823:6:46"},"nodeType":"YulFunctionCall","src":"54823:58:46"},"nodeType":"YulExpressionStatement","src":"54823:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54902:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54910:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54898:3:46"},"nodeType":"YulFunctionCall","src":"54898:15:46"},{"hexValue":"6066697865643136602066726f6d2061206057542e43424f5260207769746820","kind":"string","nodeType":"YulLiteral","src":"54915:34:46","type":"","value":"`fixed16` from a `WT.CBOR` with "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54891:6:46"},"nodeType":"YulFunctionCall","src":"54891:59:46"},"nodeType":"YulExpressionStatement","src":"54891:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"54971:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"54979:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"54967:3:46"},"nodeType":"YulFunctionCall","src":"54967:15:46"},{"hexValue":"6164646974696f6e616c496e666f726d6174696f6e20213d203235","kind":"string","nodeType":"YulLiteral","src":"54984:29:46","type":"","value":"additionalInformation != 25"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"54960:6:46"},"nodeType":"YulFunctionCall","src":"54960:54:46"},"nodeType":"YulExpressionStatement","src":"54960:54:46"}]},"name":"store_literal_in_memory_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"54804:6:46","type":""}],"src":"54706:315:46"},{"body":{"nodeType":"YulBlock","src":"55133:124:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"55155:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"55163:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55151:3:46"},"nodeType":"YulFunctionCall","src":"55151:14:46"},{"hexValue":"5769746e65744275666665723a20496e7465676572206f766572666c6f772077","kind":"string","nodeType":"YulLiteral","src":"55167:34:46","type":"","value":"WitnetBuffer: Integer overflow w"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"55144:6:46"},"nodeType":"YulFunctionCall","src":"55144:58:46"},"nodeType":"YulExpressionStatement","src":"55144:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"55223:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"55231:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"55219:3:46"},"nodeType":"YulFunctionCall","src":"55219:15:46"},{"hexValue":"68656e207365656b696e67","kind":"string","nodeType":"YulLiteral","src":"55236:13:46","type":"","value":"hen seeking"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"55212:6:46"},"nodeType":"YulFunctionCall","src":"55212:38:46"},"nodeType":"YulExpressionStatement","src":"55212:38:46"}]},"name":"store_literal_in_memory_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"55125:6:46","type":""}],"src":"55027:230:46"},{"body":{"nodeType":"YulBlock","src":"55305:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"55361:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"55370:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"55373:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"55363:6:46"},"nodeType":"YulFunctionCall","src":"55363:12:46"},"nodeType":"YulExpressionStatement","src":"55363:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55328:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55352:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"55335:16:46"},"nodeType":"YulFunctionCall","src":"55335:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"55325:2:46"},"nodeType":"YulFunctionCall","src":"55325:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"55318:6:46"},"nodeType":"YulFunctionCall","src":"55318:42:46"},"nodeType":"YulIf","src":"55315:62:46"}]},"name":"validator_revert_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"55298:5:46","type":""}],"src":"55263:120:46"},{"body":{"nodeType":"YulBlock","src":"55431:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"55487:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"55496:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"55499:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"55489:6:46"},"nodeType":"YulFunctionCall","src":"55489:12:46"},"nodeType":"YulExpressionStatement","src":"55489:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55454:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55478:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"55461:16:46"},"nodeType":"YulFunctionCall","src":"55461:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"55451:2:46"},"nodeType":"YulFunctionCall","src":"55451:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"55444:6:46"},"nodeType":"YulFunctionCall","src":"55444:42:46"},"nodeType":"YulIf","src":"55441:62:46"}]},"name":"validator_revert_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"55424:5:46","type":""}],"src":"55389:120:46"},{"body":{"nodeType":"YulBlock","src":"55556:77:46","statements":[{"body":{"nodeType":"YulBlock","src":"55611:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"55620:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"55623:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"55613:6:46"},"nodeType":"YulFunctionCall","src":"55613:12:46"},"nodeType":"YulExpressionStatement","src":"55613:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55579:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"55602:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"55586:15:46"},"nodeType":"YulFunctionCall","src":"55586:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"55576:2:46"},"nodeType":"YulFunctionCall","src":"55576:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"55569:6:46"},"nodeType":"YulFunctionCall","src":"55569:41:46"},"nodeType":"YulIf","src":"55566:61:46"}]},"name":"validator_revert_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"55549:5:46","type":""}],"src":"55515:118:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\n    }\n\n    // struct Witnet.Buffer\n    function abi_decode_t_struct$_Buffer_$4361_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // data\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr(add(headStart, offset), end))\n\n        }\n\n        {\n            // cursor\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint32(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.CBOR\n    function abi_decode_t_struct$_CBOR_$4356_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0xc0)\n\n        {\n            // buffer\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_struct$_Buffer_$4361_memory_ptr(add(headStart, offset), end))\n\n        }\n\n        {\n            // initialByte\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // majorType\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // additionalInformation\n\n            let offset := 96\n\n            mstore(add(value, 0x60), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // len\n\n            let offset := 128\n\n            mstore(add(value, 0x80), abi_decode_t_uint64(add(headStart, offset), end))\n\n        }\n\n        {\n            // tag\n\n            let offset := 160\n\n            mstore(add(value, 0xa0), abi_decode_t_uint64(add(headStart, offset), end))\n\n        }\n\n    }\n\n    function abi_decode_t_uint32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint64(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint8(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_Buffer_$4361_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_Buffer_$4361_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_CBOR_$4356_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encodeUpdatedPos_t_int128_to_t_int128_library(value0, pos) -> updatedPos {\n        abi_encode_t_int128_to_t_int128_library(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_int32_to_t_int32_library(value0, pos) -> updatedPos {\n        abi_encode_t_int32_to_t_int32_library(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library(value0, pos) -> updatedPos {\n        updatedPos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library(value0, pos)\n    }\n\n    function abi_encodeUpdatedPos_t_uint64_to_t_uint64_library(value0, pos) -> updatedPos {\n        abi_encode_t_uint64_to_t_uint64_library(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    // int128[] -> int128[]\n    function abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_int128_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(pos, length)\n        let baseRef := array_dataslot_t_array$_t_int128_$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_int128_to_t_int128_library(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_int128_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // int32[] -> int32[]\n    function abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_int32_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(pos, length)\n        let baseRef := array_dataslot_t_array$_t_int32_$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_int32_to_t_int32_library(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_int32_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // string[] -> string[]\n    function abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(pos, length)\n        let headStart := pos\n        let tail := add(pos, mul(length, 0x20))\n        let baseRef := array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n        let srcPtr := baseRef\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, sub(tail, headStart))\n            let elementValue0 := mload(srcPtr)\n            tail := abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library(elementValue0, tail)\n            srcPtr := array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(srcPtr)\n            pos := add(pos, 0x20)\n        }\n        pos := tail\n        end := pos\n    }\n\n    // uint64[] -> uint64[]\n    function abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_uint64_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(pos, length)\n        let baseRef := array_dataslot_t_array$_t_uint64_$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_uint64_to_t_uint64_library(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_uint64_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    function abi_encode_t_bool_to_t_bool_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_bool(value))\n    }\n\n    function abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_bytes32(value))\n    }\n\n    function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(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_bytes_memory_ptr_to_t_bytes_memory_ptr_library(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_library(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_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    function abi_encode_t_int128_to_t_int128_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_int128(value))\n    }\n\n    function abi_encode_t_int128_to_t_int128_library(value, pos) {\n        mstore(pos, cleanup_t_int128(value))\n    }\n\n    function abi_encode_t_int32_to_t_int32_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_int32(value))\n    }\n\n    function abi_encode_t_int32_to_t_int32_library(value, pos) {\n        mstore(pos, cleanup_t_int32(value))\n    }\n\n    function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library(value, pos) -> end {\n        let length := array_length_t_string_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library(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_library(value, pos) -> end {\n        let length := array_length_t_string_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_library(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_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 53)\n        store_literal_in_memory_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 84)\n        store_literal_in_memory_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 81)\n        store_literal_in_memory_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 73)\n        store_literal_in_memory_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 84)\n        store_literal_in_memory_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 53)\n        store_literal_in_memory_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 65)\n        store_literal_in_memory_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 87)\n        store_literal_in_memory_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 83)\n        store_literal_in_memory_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n        store_literal_in_memory_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 60)\n        store_literal_in_memory_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 83)\n        store_literal_in_memory_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 41)\n        store_literal_in_memory_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 92)\n        store_literal_in_memory_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 33)\n        store_literal_in_memory_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 87)\n        store_literal_in_memory_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 83)\n        store_literal_in_memory_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 91)\n        store_literal_in_memory_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 43)\n        store_literal_in_memory_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b(pos)\n        end := add(pos, 64)\n    }\n\n    // struct Witnet.Buffer -> struct Witnet.Buffer\n    function abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // data\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // cursor\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint32_to_t_uint32_library(memberValue0, add(pos, 0x20))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    function abi_encode_t_uint32_to_t_uint32_library(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_library(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8_library(value, pos) {\n        mstore(pos, cleanup_t_uint8(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack(value, pos) {\n        mstore(pos, leftAlign_t_uint8(cleanup_t_uint8(value)))\n    }\n\n    function abi_encode_tuple_packed_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_bytes_memory_ptr_t_uint8__to_t_bytes_memory_ptr_t_uint8__nonPadded_inplace_fromStack_reversed(pos , value1, value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        abi_encode_t_uint8_to_t_uint8_nonPadded_inplace_fromStack(value1,  pos)\n        pos := add(pos, 1)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_library_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_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_library_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_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_library_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_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_library_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_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_bool_to_t_bool_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_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_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_int128__to_t_int128__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int128_to_t_int128_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_int32__to_t_int32__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int32_to_t_int32_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_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_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758__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_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e__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_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0__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_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804__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_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865__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_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271__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_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90__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_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567__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_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf__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_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8__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_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d__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_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1__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_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175__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_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73__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_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea__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_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae__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_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c__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_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad__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_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b__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_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        mstore(add(headStart, 0), sub(tail, headStart))\n        tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint64_to_t_uint64_fromStack_library(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_int128_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_int32_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_uint64_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_length_t_array$_t_int128_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_int32_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_uint64_$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_int128_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_int32_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_uint64_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(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_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_bytes_memory_ptr_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\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 array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_string_memory_ptr_library(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_add_t_uint32(x, y) -> sum {\n        x := cleanup_t_uint32(x)\n        y := cleanup_t_uint32(y)\n\n        // overflow, if x > (maxValue - y)\n        if gt(x, sub(0xffffffff, y)) { panic_error_0x11() }\n\n        sum := add(x, y)\n    }\n\n    function checked_div_t_int256(x, y) -> r {\n        x := cleanup_t_int256(x)\n        y := cleanup_t_int256(y)\n        if iszero(y) { panic_error_0x12() }\n\n        // overflow for minVal / -1\n        if and(\n            eq(x, 0x8000000000000000000000000000000000000000000000000000000000000000),\n            eq(y, sub(0, 1))\n        ) { panic_error_0x11() }\n\n        r := sdiv(x, y)\n    }\n\n    function checked_div_t_uint64(x, y) -> r {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n        if iszero(y) { panic_error_0x12() }\n\n        r := div(x, y)\n    }\n\n    function checked_exp_helper(_power, _base, exponent, max) -> power, base {\n        power := _power\n        base  := _base\n        for { } gt(exponent, 1) {}\n        {\n            // overflow check for base * base\n            if gt(base, div(max, base)) { panic_error_0x11() }\n            if and(exponent, 1)\n            {\n                // No checks for power := mul(power, base) needed, because the check\n                // for base * base above is sufficient, since:\n                // |power| <= base (proof by induction) and thus:\n                // |power * base| <= base * base <= max <= |min| (for signed)\n                // (this is equally true for signed and unsigned exp)\n                power := mul(power, base)\n            }\n            base := mul(base, base)\n            exponent := shift_right_1_unsigned(exponent)\n        }\n    }\n\n    function checked_exp_t_uint256_t_uint256(base, exponent) -> power {\n        base := cleanup_t_uint256(base)\n        exponent := cleanup_t_uint256(exponent)\n\n        power := checked_exp_unsigned(base, exponent, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n\n    }\n\n    function checked_exp_unsigned(base, exponent, max) -> power {\n        // This function currently cannot be inlined because of the\n        // \"leave\" statements. We have to improve the optimizer.\n\n        // Note that 0**0 == 1\n        if iszero(exponent) { power := 1 leave }\n        if iszero(base) { power := 0 leave }\n\n        // Specializations for small bases\n        switch base\n        // 0 is handled above\n        case 1 { power := 1 leave }\n        case 2\n        {\n            if gt(exponent, 255) { panic_error_0x11() }\n            power := exp(2, exponent)\n            if gt(power, max) { panic_error_0x11() }\n            leave\n        }\n        if or(\n            and(lt(base, 11), lt(exponent, 78)),\n            and(lt(base, 307), lt(exponent, 32))\n        )\n        {\n            power := exp(base, exponent)\n            if gt(power, max) { panic_error_0x11() }\n            leave\n        }\n\n        power, base := checked_exp_helper(1, base, exponent, max)\n\n        if gt(power, div(max, base)) { panic_error_0x11() }\n        power := mul(power, base)\n    }\n\n    function checked_mul_t_int256(x, y) -> product {\n        x := cleanup_t_int256(x)\n        y := cleanup_t_int256(y)\n\n        // overflow, if x > 0, y > 0 and x > (maxValue / y)\n        if and(and(sgt(x, 0), sgt(y, 0)), gt(x, div(0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y))) { panic_error_0x11() }\n        // underflow, if x > 0, y < 0 and y < (minValue / x)\n        if and(and(sgt(x, 0), slt(y, 0)), slt(y, sdiv(0x8000000000000000000000000000000000000000000000000000000000000000, x))) { panic_error_0x11() }\n        // underflow, if x < 0, y > 0 and x < (minValue / y)\n        if and(and(slt(x, 0), sgt(y, 0)), slt(x, sdiv(0x8000000000000000000000000000000000000000000000000000000000000000, y))) { panic_error_0x11() }\n        // overflow, if x < 0, y < 0 and x < (maxValue / y)\n        if and(and(slt(x, 0), slt(y, 0)), slt(x, sdiv(0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y))) { panic_error_0x11() }\n\n        product := mul(x, y)\n    }\n\n    function checked_mul_t_int32(x, y) -> product {\n        x := cleanup_t_int32(x)\n        y := cleanup_t_int32(y)\n\n        // overflow, if x > 0, y > 0 and x > (maxValue / y)\n        if and(and(sgt(x, 0), sgt(y, 0)), gt(x, div(0x7fffffff, y))) { panic_error_0x11() }\n        // underflow, if x > 0, y < 0 and y < (minValue / x)\n        if and(and(sgt(x, 0), slt(y, 0)), slt(y, sdiv(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000, x))) { panic_error_0x11() }\n        // underflow, if x < 0, y > 0 and x < (minValue / y)\n        if and(and(slt(x, 0), sgt(y, 0)), slt(x, sdiv(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000, y))) { panic_error_0x11() }\n        // overflow, if x < 0, y < 0 and x < (maxValue / y)\n        if and(and(slt(x, 0), slt(y, 0)), slt(x, sdiv(0x7fffffff, y))) { panic_error_0x11() }\n\n        product := mul(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_int128(x, y) -> diff {\n        x := cleanup_t_int128(x)\n        y := cleanup_t_int128(y)\n\n        // underflow, if y >= 0 and x < (minValue + y)\n        if and(iszero(slt(y, 0)), slt(x, add(0xffffffffffffffffffffffffffffffff80000000000000000000000000000000, y))) { panic_error_0x11() }\n        // overflow, if y < 0 and x > (maxValue + y)\n        if and(slt(y, 0), sgt(x, add(0x7fffffffffffffffffffffffffffffff, y))) { panic_error_0x11() }\n\n        diff := sub(x, y)\n    }\n\n    function checked_sub_t_int32(x, y) -> diff {\n        x := cleanup_t_int32(x)\n        y := cleanup_t_int32(y)\n\n        // underflow, if y >= 0 and x < (minValue + y)\n        if and(iszero(slt(y, 0)), slt(x, add(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000, y))) { panic_error_0x11() }\n        // overflow, if y < 0 and x > (maxValue + y)\n        if and(slt(y, 0), sgt(x, add(0x7fffffff, y))) { panic_error_0x11() }\n\n        diff := sub(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 checked_sub_t_uint64(x, y) -> diff {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n\n        if lt(x, y) { panic_error_0x11() }\n\n        diff := sub(x, y)\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_int128(value) -> cleaned {\n        cleaned := signextend(15, value)\n    }\n\n    function cleanup_t_int256(value) -> cleaned {\n        cleaned := value\n    }\n\n    function cleanup_t_int32(value) -> cleaned {\n        cleaned := signextend(3, value)\n    }\n\n    function cleanup_t_uint256(value) -> cleaned {\n        cleaned := value\n    }\n\n    function cleanup_t_uint32(value) -> cleaned {\n        cleaned := and(value, 0xffffffff)\n    }\n\n    function cleanup_t_uint64(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffff)\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 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 increment_t_uint32(value) -> ret {\n        value := cleanup_t_uint32(value)\n        if eq(value, 0xffffffff) { panic_error_0x11() }\n        ret := add(value, 1)\n    }\n\n    function increment_t_uint64(value) -> ret {\n        value := cleanup_t_uint64(value)\n        if eq(value, 0xffffffffffffffff) { panic_error_0x11() }\n        ret := add(value, 1)\n    }\n\n    function leftAlign_t_uint8(value) -> aligned {\n        aligned := shift_left_248(value)\n    }\n\n    function negate_t_int32(value) -> ret {\n        value := cleanup_t_int32(value)\n        if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff80000000) { panic_error_0x11() }\n        ret := sub(0, 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_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() {\n        revert(0, 0)\n    }\n\n    function revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function shift_left_248(value) -> newValue {\n        newValue :=\n\n        shl(248, value)\n\n    }\n\n    function shift_right_1_unsigned(value) -> newValue {\n        newValue :=\n\n        shr(1, value)\n\n    }\n\n    function store_literal_in_memory_176e0278706c18b0f8b18b90e4c6a39b596c662775310463aa4a908b1de17758(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBuffer: Not enough bytes i\")\n\n        mstore(add(memPtr, 32), \"n buffer when seeking\")\n\n    }\n\n    function store_literal_in_memory_285621fe75046b25304c843ac968cca285ae3e6ef8abb770c7120426284fcb4e(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"a `fixed` value from a `WT.CBOR`\")\n\n        mstore(add(memPtr, 64), \" with majorType != 7\")\n\n    }\n\n    function store_literal_in_memory_3375c6645e382185e0fe278f193075512d535b9f2ca7e1b37510b35efdd2bcc0(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`uint64` from a `Witnet.CBOR` wi\")\n\n        mstore(add(memPtr, 64), \"th majorType != 0\")\n\n    }\n\n    function store_literal_in_memory_41357bbf50a90e645d713b09dbcf193b280250cde8009c0b4d3449c28ea5d804(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBuffer: Tried to read from\")\n\n        mstore(add(memPtr, 32), \" a consumed Buffer (must rewind \")\n\n        mstore(add(memPtr, 64), \"it first)\")\n\n    }\n\n    function store_literal_in_memory_6f8489a006fc2ddb7b8db45a240c2e1340f979031aa674bc2c0d9a032007f865(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Invalid length\")\n\n        mstore(add(memPtr, 32), \" encoding (non-existent addition\")\n\n        mstore(add(memPtr, 64), \"alInformation value)\")\n\n    }\n\n    function store_literal_in_memory_76a21b1d3f42fbbea0475f624e30017f9081c603496816db3d90283ad65ae271(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBuffer: Not enough bytes i\")\n\n        mstore(add(memPtr, 32), \"n buffer when reading\")\n\n    }\n\n    function store_literal_in_memory_875d0a02937cb9909e45a20585fcb051fe02c5f86d796a9b1cf43ce04fc2ba90(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Indefinite-len\")\n\n        mstore(add(memPtr, 32), \"gth CBOR arrays are not supporte\")\n\n        mstore(add(memPtr, 64), \"d\")\n\n    }\n\n    function store_literal_in_memory_9a60def7724db28748dda2f528e627b4b6898ecc35ff8814364e5a7e676b1567(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"a `bool` value from a `Witnet.CB\")\n\n        mstore(add(memPtr, 64), \"OR` with majorType != 7\")\n\n    }\n\n    function store_literal_in_memory_c6093a9e0138c29641f4112ca84a6353e3b8189a75c60c086711495d7d1b05cf(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`int128[]` from a `Witnet.CBOR` \")\n\n        mstore(add(memPtr, 64), \"with majorType != 4\")\n\n    }\n\n    function store_literal_in_memory_c9a3baade484e18c7b6c7f334d58082e2c6f48547df2aecdef5e238f396eceb8(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Invalid indefi\")\n\n        mstore(add(memPtr, 32), \"nite length\")\n\n    }\n\n    function store_literal_in_memory_cb594b582c4c4c10df3423239223a3962931d31e3d9cc15d65f361d94596911d(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Found empty bu\")\n\n        mstore(add(memPtr, 32), \"ffer when parsing CBOR value\")\n\n    }\n\n    function store_literal_in_memory_d33a5d2b5ed5d95cc7a9c6c198ab7dad558642e7b6ddd2bf019b8e6e207e2bb1(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`uint64[]` from a `Witnet.CBOR` \")\n\n        mstore(add(memPtr, 64), \"with majorType != 4\")\n\n    }\n\n    function store_literal_in_memory_d4ffc38b1bd3ce07b73162c5cd58b3f5d16fe42393d05d185bef3b883bb0a175(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Invalid CBOR m\")\n\n        mstore(add(memPtr, 32), \"ajor type\")\n\n    }\n\n    function store_literal_in_memory_e9d15dd9ef51c465dc7e4a1f1786baf0f5f1727522e4d18358f6412b81e0ad73(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`bool` from a `Witnet.CBOR` with\")\n\n        mstore(add(memPtr, 64), \" len different than 20 or 21\")\n\n    }\n\n    function store_literal_in_memory_ed3d615850988e92ac3bb7e19fc8fd4a6d0fd5efa663c85800c4ba4a146272ea(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBuffer: Cannot copy 0 byte\")\n\n        mstore(add(memPtr, 32), \"s\")\n\n    }\n\n    function store_literal_in_memory_f6afe1efc379e8204fb4d566f3cf5efe5c0e9e878fa8fd3072ffc04e712b2dae(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`int128` from a `Witnet.CBOR` wi\")\n\n        mstore(add(memPtr, 64), \"th majorType not 0 or 1\")\n\n    }\n\n    function store_literal_in_memory_f7e883759414212463f7e83fadd2b6f4fb58ed904f3a29f20bce3e92bd7c399c(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`string[]` from a `Witnet.CBOR` \")\n\n        mstore(add(memPtr, 64), \"with majorType != 4\")\n\n    }\n\n    function store_literal_in_memory_fa1a41235d50d998fd1fa31f165df15dc31bd75a237078965072481881f7d8ad(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetDecoderLib: Tried to read \")\n\n        mstore(add(memPtr, 32), \"`fixed16` from a `WT.CBOR` with \")\n\n        mstore(add(memPtr, 64), \"additionalInformation != 25\")\n\n    }\n\n    function store_literal_in_memory_fdadce3169751a65fe8fe5febc7dcb4198322ee12bc3662f33fae802c9673e4b(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetBuffer: Integer overflow w\")\n\n        mstore(add(memPtr, 32), \"hen seeking\")\n\n    }\n\n    function validator_revert_t_uint32(value) {\n        if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint64(value) {\n        if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint8(value) {\n        if iszero(eq(value, cleanup_t_uint8(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{},"object":"73000000000000000000000000000000000000000030146080604052600436106100d95760003560e01c806394863ea411610096578063c5e88ff211610070578063c5e88ff21461028e578063dfca5d34146102be578063e67c5bd1146102ee578063f8a597d31461031e576100d9565b806394863ea4146101fe5780639eee60ca1461022e578063bb6ef6cf1461025e576100d9565b806308c05c33146100de5780633380d8161461010e578063531f4ba71461013e5780637a8acab11461016e5780637f3fb7ca1461019e5780638138799a146101ce575b600080fd5b6100f860048036038101906100f39190611d88565b61034e565b60405161010591906125cc565b60405180910390f35b61012860048036038101906101239190611d88565b6103f2565b6040516101359190612529565b60405180910390f35b61015860048036038101906101539190611d88565b61058a565b604051610165919061254b565b60405180910390f35b61018860048036038101906101839190611d88565b610722565b60405161019591906128e3565b60405180910390f35b6101b860048036038101906101b39190611d3f565b610786565b6040516101c591906128c1565b60405180910390f35b6101e860048036038101906101e39190611d88565b6108d8565b6040516101f59190612624565b60405180910390f35b61021860048036038101906102139190611d88565b610982565b6040516102259190612609565b60405180910390f35b61024860048036038101906102439190611d88565b610a52565b60405161025591906125b1565b60405180910390f35b61027860048036038101906102739190611d88565b610b4f565b60405161028591906125e7565b60405180910390f35b6102a860048036038101906102a39190611d88565b610c95565b6040516102b5919061256d565b60405180910390f35b6102d860048036038101906102d39190611cf6565b610e29565b6040516102e591906128c1565b60405180910390f35b61030860048036038101906103039190611d88565b610e62565b604051610315919061263f565b60405180910390f35b61033860048036038101906103339190611d88565b610f62565b604051610345919061258f565b60405180910390f35b60008061035a83610b4f565b90506000602082511161036e578151610371565b60205b905060005b818110156103ea5760088161038b9190612f40565b60ff60f81b8483815181106103a3576103a2613346565b5b602001015160f81c60f81b167effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916901c8417935080806103e2906131e6565b915050610376565b505050919050565b60606004826040015160ff161461043e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161043590612761565b60405180910390fd5b600061045283600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff16106104aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104a190612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff8111156104d0576104cf613375565b5b6040519080825280602002602001820160405280156104fe5781602001602082028036833780820191505090505b50905060005b8267ffffffffffffffff168167ffffffffffffffff16101561057f57600061052f8660000151610786565b905061053a81610982565b838367ffffffffffffffff168151811061055757610556613346565b5b6020026020010190600f0b9081600f0b815250505080806105779061325c565b915050610504565b508092505050919050565b60606004826040015160ff16146105d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105cd90612761565b60405180910390fd5b60006105ea83600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff1610610642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161063990612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff81111561066857610667613375565b5b6040519080825280602002602001820160405280156106965781602001602082028036833780820191505090505b50905060005b8267ffffffffffffffff168167ffffffffffffffff1610156107175760006106c78660000151610786565b90506106d2816108d8565b838367ffffffffffffffff16815181106106ef576106ee613346565b5b602002602001019060030b908160030b8152505050808061070f9061325c565b91505061069c565b508092505050919050565b600080826040015160ff161461076d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610764906126a1565b60405180910390fd5b61077f82600001518360600151611108565b9050919050565b61078e611aa6565b6000826000015151116107d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107cd906127a1565b60405180910390fd5b60008060ff905060008067ffffffffffffffff90506000600190505b801561083a57610801876111fb565b945060058560ff16901c9350601f8516925060068460ff161415610830576108298784611108565b9150610835565b600090505b6107f2565b60078460ff161115610881576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610878906127e1565b60405180910390fd5b6040518060c001604052808881526020018660ff1681526020018560ff1681526020018460ff168152602001600067ffffffffffffffff1681526020018367ffffffffffffffff1681525095505050505050919050565b60006007826040015160ff1614610924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091b90612681565b60405180910390fd5b6019826060015160ff161461096e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161096590612881565b60405180910390fd5b61097b826000015161129c565b9050919050565b60006001826040015160ff1614156109e85760006109a883600001518460600151611108565b90508067ffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6109e09190612f9a565b915050610a4d565b6000826040015160ff161415610a1257610a0182610722565b67ffffffffffffffff169050610a4d565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a4490612841565b60405180910390fd5b919050565b6000610a6682600001518360600151611108565b826080019067ffffffffffffffff16908167ffffffffffffffff16815250506007826040015160ff1614610acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ac690612741565b60405180910390fd5b6014826080015167ffffffffffffffff161415610aef5760009050610b4a565b6015826080015167ffffffffffffffff161415610b0f5760019050610b4a565b6040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b4190612801565b60405180910390fd5b919050565b6060610b6382600001518360600151611108565b826080019067ffffffffffffffff16908167ffffffffffffffff168152505063ffffffff8016826080015167ffffffffffffffff161415610c725760606000610bb4846000015185604001516113af565b905063ffffffff80168163ffffffff161015610c685781610be282866000015161146590919063ffffffff16565b604051602001610bf39291906124dd565b6040516020818303038152906040529150610c16846000015185604001516113af565b905063ffffffff80168163ffffffff161015610c675781610c4482866000015161146590919063ffffffff16565b604051602001610c559291906124dd565b60405160208183030381529060405291505b5b8192505050610c90565b610c8d8260800151836000015161146590919063ffffffff16565b90505b919050565b60606004826040015160ff1614610ce1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd890612861565b60405180910390fd5b6000610cf583600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff1610610d4d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4490612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff811115610d7357610d72613375565b5b604051908082528060200260200182016040528015610da657816020015b6060815260200190600190039081610d915790505b50905060005b8267ffffffffffffffff168167ffffffffffffffff161015610e1e576000610dd78660000151610786565b9050610de281610e62565b838367ffffffffffffffff1681518110610dff57610dfe613346565b5b6020026020010181905250508080610e169061325c565b915050610dac565b508092505050919050565b610e31611aa6565b60006040518060400160405280848152602001600063ffffffff168152509050610e5a81610786565b915050919050565b6060610e7682600001518360600151611108565b826080019067ffffffffffffffff16908167ffffffffffffffff168152505067ffffffffffffffff8016826080015167ffffffffffffffff161415610f4857606060005b80610f3e576000610ed3856000015186604001516113af565b905067ffffffffffffffff80168167ffffffffffffffff161015610f335782610f0c8660000151600484610f079190612ba8565b611579565b604051602001610f1d9291906124dd565b6040516020818303038152906040529250610f38565b600191505b50610eba565b8192505050610f5d565b610f5a82600001518360800151611579565b90505b919050565b60606004826040015160ff1614610fae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa5906127c1565b60405180910390fd5b6000610fc283600001518460600151611108565b905067ffffffffffffffff80168167ffffffffffffffff161061101a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101190612721565b60405180910390fd5b60008167ffffffffffffffff1667ffffffffffffffff8111156110405761103f613375565b5b60405190808252806020026020018201604052801561106e5781602001602082028036833780820191505090505b50905060005b8267ffffffffffffffff168167ffffffffffffffff1610156110fd57600061109f8660000151610786565b90506110aa81610722565b838367ffffffffffffffff16815181106110c7576110c6613346565b5b602002602001019067ffffffffffffffff16908167ffffffffffffffff16815250505080806110f59061325c565b915050611074565b508092505050919050565b600060188260ff161015611121578160ff1690506111f5565b60188260ff16141561114057611136836111fb565b60ff1690506111f5565b60198260ff16141561116057611155836116d5565b61ffff1690506111f5565b601a8260ff1614156111825761117583611788565b63ffffffff1690506111f5565b601b8260ff16141561119e576111978361183b565b90506111f5565b601f8260ff1614156111ba5767ffffffffffffffff90506111f5565b6040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ec906126e1565b60405180910390fd5b92915050565b60008160200151826000015151808263ffffffff1610611250576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611247906126c1565b60405180910390fd5b600084600001519050600085602001519050600081600184010151905086602001805180919061127f9061322f565b63ffffffff1663ffffffff16815250508095505050505050919050565b6000806112a8836116d5565b61ffff1690506000618000821690506000600f600a617c00851660030b901d6112d1919061301e565b905060006103ff84169050600f8260030b14156112f057610400811790505b6000808360030b1261132e57600a6104008360030b176127108560030b6001901b61131b9190612d4a565b6113259190612d4a565b901d9050611365565b600a8361133a9061329f565b60030b6001901b6127106104008560030b176113569190612d4a565b6113609190612b3e565b901d90505b60008463ffffffff16146113a2577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8161139f9190612e61565b90505b8095505050505050919050565b6000806113bb846111fb565b905060ff8160ff1614156113da5767ffffffffffffffff91505061145f565b60006113e985601f8416611108565b905067ffffffffffffffff80168167ffffffffffffffff1610801561141a57508360ff1660058360ff16901c60ff16145b611459576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161145090612781565b60405180910390fd5b80925050505b92915050565b606082600001515182846020015161147d9190612b04565b63ffffffff1611156114c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bb90612701565b60405180910390fd5b60008263ffffffff1667ffffffffffffffff8111156114e6576114e5613375565b5b6040519080825280601f01601f1916602001820160405280156115185781602001600182028036833780820191505090505b50905060008363ffffffff161461156f57600084600001519050600085602001519050600080826020850101915060208501905061155d81838963ffffffff166118ee565b611569888860016119ba565b50505050505b8091505092915050565b60608060005b8367ffffffffffffffff168167ffffffffffffffff1610156116ca5760006115a6866111fb565b905060006080821660ff16146116925760e08160ff1610156115f057603f6115cd876111fb565b166006601f831660ff16901b1790506001856115e991906130ca565b9450611691565b60f08160ff16101561163e57603f611607876111fb565b166006603f611615896111fb565b1660ff16901b600c600f841660ff16901b1717905060028561163791906130ca565b9450611690565b603f611649876111fb565b166006603f611657896111fb565b1660ff16901b600c603f61166a8a6111fb565b1660ff16901b6012600f851660ff16901b171717905060038561168d91906130ca565b94505b5b5b82816040516020016116a5929190612501565b60405160208183030381529060405292505080806116c29061325c565b91505061157f565b508091505092915050565b6000600182602001516116e89190612b04565b826000015151808263ffffffff1610611736576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161172d906126c1565b60405180910390fd5b60008460000151905060008560200151905060008160028401015190506002876020018181516117669190612b04565b91509063ffffffff16908163ffffffff16815250508095505050505050919050565b60006003826020015161179b9190612b04565b826000015151808263ffffffff16106117e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117e0906126c1565b60405180910390fd5b60008460000151905060008560200151905060008160048401015190506004876020018181516118199190612b04565b91509063ffffffff16908163ffffffff16815250508095505050505050919050565b60006007826020015161184e9190612b04565b826000015151808263ffffffff161061189c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611893906126c1565b60405180910390fd5b60008460000151905060008560200151905060008160088401015190506008876020018181516118cc9190612b04565b91509063ffffffff16908163ffffffff16815250508095505050505050919050565b60008111611931576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192890612821565b60405180910390fd5b5b60208110611970578151835260208361194b9190612aae565b925060208261195a9190612aae565b91506020816119699190613096565b9050611932565b60008111156119b5576000600182602061198a9190613096565b6101006119979190612c2c565b6119a19190613096565b905080198351168185511681811786525050505b505050565b60008115611a32578263ffffffff168460200151846119d99190612b04565b63ffffffff1611611a1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a16906128a1565b60405180910390fd5b836020015183611a2f9190612b04565b92505b8360000151518363ffffffff161115611a80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7790612661565b60405180910390fd5b82846020019063ffffffff16908163ffffffff1681525050836020015190509392505050565b6040518060c00160405280611ab9611aff565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b604051806040016040528060608152602001600063ffffffff1681525090565b6000611b32611b2d84612923565b6128fe565b905082815260208101848484011115611b4e57611b4d6133b3565b5b611b59848285613173565b509392505050565b600082601f830112611b7657611b756133a4565b5b8135611b86848260208601611b1f565b91505092915050565b600060408284031215611ba557611ba46133a9565b5b611baf60406128fe565b9050600082013567ffffffffffffffff811115611bcf57611bce6133ae565b5b611bdb84828501611b61565b6000830152506020611bef84828501611cb7565b60208301525092915050565b600060c08284031215611c1157611c106133a9565b5b611c1b60c06128fe565b9050600082013567ffffffffffffffff811115611c3b57611c3a6133ae565b5b611c4784828501611b8f565b6000830152506020611c5b84828501611ce1565b6020830152506040611c6f84828501611ce1565b6040830152506060611c8384828501611ce1565b6060830152506080611c9784828501611ccc565b60808301525060a0611cab84828501611ccc565b60a08301525092915050565b600081359050611cc681613b92565b92915050565b600081359050611cdb81613ba9565b92915050565b600081359050611cf081613bc0565b92915050565b600060208284031215611d0c57611d0b6133bd565b5b600082013567ffffffffffffffff811115611d2a57611d296133b8565b5b611d3684828501611b61565b91505092915050565b600060208284031215611d5557611d546133bd565b5b600082013567ffffffffffffffff811115611d7357611d726133b8565b5b611d7f84828501611b8f565b91505092915050565b600060208284031215611d9e57611d9d6133bd565b5b600082013567ffffffffffffffff811115611dbc57611dbb6133b8565b5b611dc884828501611bfb565b91505092915050565b6000611ddd838361208c565b60208301905092915050565b6000611df583836120aa565b60208301905092915050565b6000611e0d83836120f2565b905092915050565b6000611e2183836124a8565b60208301905092915050565b6000611e3882612994565b611e428185612a0a565b9350611e4d83612954565b8060005b83811015611e7e578151611e658882611dd1565b9750611e70836129d6565b925050600181019050611e51565b5085935050505092915050565b6000611e968261299f565b611ea08185612a1b565b9350611eab83612964565b8060005b83811015611edc578151611ec38882611de9565b9750611ece836129e3565b925050600181019050611eaf565b5085935050505092915050565b6000611ef4826129aa565b611efe8185612a2c565b935083602082028501611f1085612974565b8060005b85811015611f4c5784840389528151611f2d8582611e01565b9450611f38836129f0565b925060208a01995050600181019050611f14565b50829750879550505050505092915050565b6000611f69826129b5565b611f738185612a3d565b9350611f7e83612984565b8060005b83811015611faf578151611f968882611e15565b9750611fa1836129fd565b925050600181019050611f82565b5085935050505092915050565b611fc5816130fe565b82525050565b611fd48161310a565b82525050565b6000611fe5826129c0565b611fef8185612a4e565b9350611fff818560208601613182565b612008816133c2565b840191505092915050565b600061201e826129c0565b6120288185612a5f565b9350612038818560208601613182565b612041816133c2565b840191505092915050565b6000612057826129c0565b6120618185612a70565b9350612071818560208601613182565b80840191505092915050565b61208681613114565b82525050565b61209581613114565b82525050565b6120a48161312b565b82525050565b6120b38161312b565b82525050565b60006120c4826129cb565b6120ce8185612a8c565b93506120de818560208601613182565b6120e7816133c2565b840191505092915050565b60006120fd826129cb565b6121078185612a9d565b9350612117818560208601613182565b612120816133c2565b840191505092915050565b6000612138603583612a7b565b9150612143826133ed565b604082019050919050565b600061215b605483612a7b565b91506121668261343c565b606082019050919050565b600061217e605183612a7b565b9150612189826134b1565b606082019050919050565b60006121a1604983612a7b565b91506121ac82613526565b606082019050919050565b60006121c4605483612a7b565b91506121cf8261359b565b606082019050919050565b60006121e7603583612a7b565b91506121f282613610565b604082019050919050565b600061220a604183612a7b565b91506122158261365f565b606082019050919050565b600061222d605783612a7b565b9150612238826136d4565b606082019050919050565b6000612250605383612a7b565b915061225b82613749565b606082019050919050565b6000612273602b83612a7b565b915061227e826137be565b604082019050919050565b6000612296603c83612a7b565b91506122a18261380d565b604082019050919050565b60006122b9605383612a7b565b91506122c48261385c565b606082019050919050565b60006122dc602983612a7b565b91506122e7826138d1565b604082019050919050565b60006122ff605c83612a7b565b915061230a82613920565b606082019050919050565b6000612322602183612a7b565b915061232d82613995565b604082019050919050565b6000612345605783612a7b565b9150612350826139e4565b606082019050919050565b6000612368605383612a7b565b915061237382613a59565b606082019050919050565b600061238b605b83612a7b565b915061239682613ace565b606082019050919050565b60006123ae602b83612a7b565b91506123b982613b43565b604082019050919050565b600060408301600083015184820360008601526123e18282612013565b91505060208301516123f6602086018261248a565b508091505092915050565b600060c083016000830151848203600086015261241e82826123c4565b915050602083015161243360208601826124b7565b50604083015161244660408601826124b7565b50606083015161245960608601826124b7565b50608083015161246c60808601826124a8565b5060a083015161247f60a08601826124a8565b508091505092915050565b61249381613142565b82525050565b6124a281613152565b82525050565b6124b181613152565b82525050565b6124c081613166565b82525050565b6124d76124d282613166565b61328d565b82525050565b60006124e9828561204c565b91506124f5828461204c565b91508190509392505050565b600061250d828561204c565b915061251982846124c6565b6001820191508190509392505050565b600060208201905081810360008301526125438184611e2d565b905092915050565b600060208201905081810360008301526125658184611e8b565b905092915050565b600060208201905081810360008301526125878184611ee9565b905092915050565b600060208201905081810360008301526125a98184611f5e565b905092915050565b60006020820190506125c66000830184611fbc565b92915050565b60006020820190506125e16000830184611fcb565b92915050565b600060208201905081810360008301526126018184611fda565b905092915050565b600060208201905061261e600083018461207d565b92915050565b6000602082019050612639600083018461209b565b92915050565b6000602082019050818103600083015261265981846120b9565b905092915050565b6000602082019050818103600083015261267a8161212b565b9050919050565b6000602082019050818103600083015261269a8161214e565b9050919050565b600060208201905081810360008301526126ba81612171565b9050919050565b600060208201905081810360008301526126da81612194565b9050919050565b600060208201905081810360008301526126fa816121b7565b9050919050565b6000602082019050818103600083015261271a816121da565b9050919050565b6000602082019050818103600083015261273a816121fd565b9050919050565b6000602082019050818103600083015261275a81612220565b9050919050565b6000602082019050818103600083015261277a81612243565b9050919050565b6000602082019050818103600083015261279a81612266565b9050919050565b600060208201905081810360008301526127ba81612289565b9050919050565b600060208201905081810360008301526127da816122ac565b9050919050565b600060208201905081810360008301526127fa816122cf565b9050919050565b6000602082019050818103600083015261281a816122f2565b9050919050565b6000602082019050818103600083015261283a81612315565b9050919050565b6000602082019050818103600083015261285a81612338565b9050919050565b6000602082019050818103600083015261287a8161235b565b9050919050565b6000602082019050818103600083015261289a8161237e565b9050919050565b600060208201905081810360008301526128ba816123a1565b9050919050565b600060208201905081810360008301526128db8184612401565b905092915050565b60006020820190506128f86000830184612499565b92915050565b6000612908612919565b905061291482826131b5565b919050565b6000604051905090565b600067ffffffffffffffff82111561293e5761293d613375565b5b612947826133c2565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b6000612ab982613138565b9150612ac483613138565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115612af957612af86132e8565b5b828201905092915050565b6000612b0f82613142565b9150612b1a83613142565b92508263ffffffff03821115612b3357612b326132e8565b5b828201905092915050565b6000612b4982613121565b9150612b5483613121565b925082612b6457612b63613317565b5b600160000383147f800000000000000000000000000000000000000000000000000000000000000083141615612b9d57612b9c6132e8565b5b828205905092915050565b6000612bb382613152565b9150612bbe83613152565b925082612bce57612bcd613317565b5b828204905092915050565b6000808291508390505b6001851115612c2357808604811115612bff57612bfe6132e8565b5b6001851615612c0e5780820291505b8081029050612c1c856133e0565b9450612be3565b94509492505050565b6000612c3782613138565b9150612c4283613138565b9250612c6f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484612c77565b905092915050565b600082612c875760019050612d43565b81612c955760009050612d43565b8160018114612cab5760028114612cb557612ce4565b6001915050612d43565b60ff841115612cc757612cc66132e8565b5b8360020a915084821115612cde57612cdd6132e8565b5b50612d43565b5060208310610133831016604e8410600b8410161715612d195782820a905083811115612d1457612d136132e8565b5b612d43565b612d268484846001612bd9565b92509050818404811115612d3d57612d3c6132e8565b5b81810290505b9392505050565b6000612d5582613121565b9150612d6083613121565b9250827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482116000841360008413161615612d9f57612d9e6132e8565b5b817f80000000000000000000000000000000000000000000000000000000000000000583126000841260008413161615612ddc57612ddb6132e8565b5b827f80000000000000000000000000000000000000000000000000000000000000000582126000841360008412161615612e1957612e186132e8565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0582126000841260008412161615612e5657612e556132e8565b5b828202905092915050565b6000612e6c8261312b565b9150612e778361312b565b925082637fffffff0482116000841360008413161615612e9a57612e996132e8565b5b817fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000583126000841260008413161615612ed757612ed66132e8565b5b827fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000582126000841360008412161615612f1457612f136132e8565b5b82637fffffff0582126000841260008412161615612f3557612f346132e8565b5b828202905092915050565b6000612f4b82613138565b9150612f5683613138565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615612f8f57612f8e6132e8565b5b828202905092915050565b6000612fa582613114565b9150612fb083613114565b9250827fffffffffffffffffffffffffffffffff8000000000000000000000000000000001821260008412151615612feb57612fea6132e8565b5b826f7fffffffffffffffffffffffffffffff018213600084121615613013576130126132e8565b5b828203905092915050565b60006130298261312b565b91506130348361312b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000000182126000841215161561306f5761306e6132e8565b5b82637fffffff01821360008412161561308b5761308a6132e8565b5b828203905092915050565b60006130a182613138565b91506130ac83613138565b9250828210156130bf576130be6132e8565b5b828203905092915050565b60006130d582613152565b91506130e083613152565b9250828210156130f3576130f26132e8565b5b828203905092915050565b60008115159050919050565b6000819050919050565b600081600f0b9050919050565b6000819050919050565b60008160030b9050919050565b6000819050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b82818337600083830152505050565b60005b838110156131a0578082015181840152602081019050613185565b838111156131af576000848401525b50505050565b6131be826133c2565b810181811067ffffffffffffffff821117156131dd576131dc613375565b5b80604052505050565b60006131f182613138565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415613224576132236132e8565b5b600182019050919050565b600061323a82613142565b915063ffffffff821415613251576132506132e8565b5b600182019050919050565b600061326782613152565b915067ffffffffffffffff821415613282576132816132e8565b5b600182019050919050565b6000613298826133d3565b9050919050565b60006132aa8261312b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffff800000008214156132dd576132dc6132e8565b5b816000039050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160f81b9050919050565b60008160011c9050919050565b7f5769746e65744275666665723a204e6f7420656e6f756768206279746573206960008201527f6e20627566666572207768656e207365656b696e670000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6120606669786564602076616c75652066726f6d2061206057542e43424f526060208201527f2077697468206d616a6f725479706520213d2037000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6075696e743634602066726f6d206120605769746e65742e43424f526020776960208201527f7468206d616a6f725479706520213d2030000000000000000000000000000000604082015250565b7f5769746e65744275666665723a20547269656420746f20726561642066726f6d60008201527f206120636f6e73756d65642042756666657220286d75737420726577696e642060208201527f6974206669727374290000000000000000000000000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20496e76616c6964206c656e67746860008201527f20656e636f64696e6720286e6f6e2d6578697374656e74206164646974696f6e60208201527f616c496e666f726d6174696f6e2076616c756529000000000000000000000000604082015250565b7f5769746e65744275666665723a204e6f7420656e6f756768206279746573206960008201527f6e20627566666572207768656e2072656164696e670000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20496e646566696e6974652d6c656e60008201527f6774682043424f522061727261797320617265206e6f7420737570706f72746560208201527f6400000000000000000000000000000000000000000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f612060626f6f6c602076616c75652066726f6d206120605769746e65742e434260208201527f4f52602077697468206d616a6f725479706520213d2037000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60696e743132385b5d602066726f6d206120605769746e65742e43424f52602060208201527f77697468206d616a6f725479706520213d203400000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20496e76616c696420696e6465666960008201527f6e697465206c656e677468000000000000000000000000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20466f756e6420656d70747920627560008201527f66666572207768656e2070617273696e672043424f522076616c756500000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6075696e7436345b5d602066726f6d206120605769746e65742e43424f52602060208201527f77697468206d616a6f725479706520213d203400000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20496e76616c69642043424f52206d60008201527f616a6f7220747970650000000000000000000000000000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60626f6f6c602066726f6d206120605769746e65742e43424f5260207769746860208201527f206c656e20646966666572656e74207468616e203230206f7220323100000000604082015250565b7f5769746e65744275666665723a2043616e6e6f7420636f70792030206279746560008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60696e74313238602066726f6d206120605769746e65742e43424f526020776960208201527f7468206d616a6f7254797065206e6f742030206f722031000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f60737472696e675b5d602066726f6d206120605769746e65742e43424f52602060208201527f77697468206d616a6f725479706520213d203400000000000000000000000000604082015250565b7f5769746e65744465636f6465724c69623a20547269656420746f20726561642060008201527f6066697865643136602066726f6d2061206057542e43424f526020776974682060208201527f6164646974696f6e616c496e666f726d6174696f6e20213d2032350000000000604082015250565b7f5769746e65744275666665723a20496e7465676572206f766572666c6f77207760008201527f68656e207365656b696e67000000000000000000000000000000000000000000602082015250565b613b9b81613142565b8114613ba657600080fd5b50565b613bb281613152565b8114613bbd57600080fd5b50565b613bc981613166565b8114613bd457600080fd5b5056fea2646970667358221220a4d4d110e1ca9e6f5fbecbc2cd493e629dfa4ae32d005565f69c63361d2074fd64736f6c63430008070033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0xD9 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x94863EA4 GT PUSH2 0x96 JUMPI DUP1 PUSH4 0xC5E88FF2 GT PUSH2 0x70 JUMPI DUP1 PUSH4 0xC5E88FF2 EQ PUSH2 0x28E JUMPI DUP1 PUSH4 0xDFCA5D34 EQ PUSH2 0x2BE JUMPI DUP1 PUSH4 0xE67C5BD1 EQ PUSH2 0x2EE JUMPI DUP1 PUSH4 0xF8A597D3 EQ PUSH2 0x31E JUMPI PUSH2 0xD9 JUMP JUMPDEST DUP1 PUSH4 0x94863EA4 EQ PUSH2 0x1FE JUMPI DUP1 PUSH4 0x9EEE60CA EQ PUSH2 0x22E JUMPI DUP1 PUSH4 0xBB6EF6CF EQ PUSH2 0x25E JUMPI PUSH2 0xD9 JUMP JUMPDEST DUP1 PUSH4 0x8C05C33 EQ PUSH2 0xDE JUMPI DUP1 PUSH4 0x3380D816 EQ PUSH2 0x10E JUMPI DUP1 PUSH4 0x531F4BA7 EQ PUSH2 0x13E JUMPI DUP1 PUSH4 0x7A8ACAB1 EQ PUSH2 0x16E JUMPI DUP1 PUSH4 0x7F3FB7CA EQ PUSH2 0x19E JUMPI DUP1 PUSH4 0x8138799A EQ PUSH2 0x1CE JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0xF8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0xF3 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x34E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x105 SWAP2 SWAP1 PUSH2 0x25CC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x128 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x123 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x3F2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x135 SWAP2 SWAP1 PUSH2 0x2529 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x158 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x153 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x58A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x165 SWAP2 SWAP1 PUSH2 0x254B 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 0x1D88 JUMP JUMPDEST PUSH2 0x722 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x195 SWAP2 SWAP1 PUSH2 0x28E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1B8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1B3 SWAP2 SWAP1 PUSH2 0x1D3F JUMP JUMPDEST PUSH2 0x786 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C5 SWAP2 SWAP1 PUSH2 0x28C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1E8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E3 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x8D8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F5 SWAP2 SWAP1 PUSH2 0x2624 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x218 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x213 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0x982 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x225 SWAP2 SWAP1 PUSH2 0x2609 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x248 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x243 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xA52 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x255 SWAP2 SWAP1 PUSH2 0x25B1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x278 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x273 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xB4F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x285 SWAP2 SWAP1 PUSH2 0x25E7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2A8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A3 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xC95 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B5 SWAP2 SWAP1 PUSH2 0x256D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2D8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2D3 SWAP2 SWAP1 PUSH2 0x1CF6 JUMP JUMPDEST PUSH2 0xE29 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2E5 SWAP2 SWAP1 PUSH2 0x28C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x308 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x303 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xE62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x315 SWAP2 SWAP1 PUSH2 0x263F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x338 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x333 SWAP2 SWAP1 PUSH2 0x1D88 JUMP JUMPDEST PUSH2 0xF62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x345 SWAP2 SWAP1 PUSH2 0x258F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x35A DUP4 PUSH2 0xB4F JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x20 DUP3 MLOAD GT PUSH2 0x36E JUMPI DUP2 MLOAD PUSH2 0x371 JUMP JUMPDEST PUSH1 0x20 JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3EA JUMPI PUSH1 0x8 DUP2 PUSH2 0x38B SWAP2 SWAP1 PUSH2 0x2F40 JUMP JUMPDEST PUSH1 0xFF PUSH1 0xF8 SHL DUP5 DUP4 DUP2 MLOAD DUP2 LT PUSH2 0x3A3 JUMPI PUSH2 0x3A2 PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 SHR DUP5 OR SWAP4 POP DUP1 DUP1 PUSH2 0x3E2 SWAP1 PUSH2 0x31E6 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x376 JUMP JUMPDEST POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x43E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x435 SWAP1 PUSH2 0x2761 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x452 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x4AA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4A1 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4D0 JUMPI PUSH2 0x4CF PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x4FE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x57F JUMPI PUSH1 0x0 PUSH2 0x52F DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0x53A DUP2 PUSH2 0x982 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x557 JUMPI PUSH2 0x556 PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD SWAP1 PUSH1 0xF SIGNEXTEND SWAP1 DUP2 PUSH1 0xF SIGNEXTEND DUP2 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x577 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x504 JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x5D6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5CD SWAP1 PUSH2 0x2761 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x5EA DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x642 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x639 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x668 JUMPI PUSH2 0x667 PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x696 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x717 JUMPI PUSH1 0x0 PUSH2 0x6C7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0x6D2 DUP2 PUSH2 0x8D8 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x6EF JUMPI PUSH2 0x6EE PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD SWAP1 PUSH1 0x3 SIGNEXTEND SWAP1 DUP2 PUSH1 0x3 SIGNEXTEND DUP2 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x70F SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x69C JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x76D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x764 SWAP1 PUSH2 0x26A1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x77F DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x78E PUSH2 0x1AA6 JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 ADD MLOAD MLOAD GT PUSH2 0x7D6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7CD SWAP1 PUSH2 0x27A1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0xFF SWAP1 POP PUSH1 0x0 DUP1 PUSH8 0xFFFFFFFFFFFFFFFF SWAP1 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP1 ISZERO PUSH2 0x83A JUMPI PUSH2 0x801 DUP8 PUSH2 0x11FB JUMP JUMPDEST SWAP5 POP PUSH1 0x5 DUP6 PUSH1 0xFF AND SWAP1 SHR SWAP4 POP PUSH1 0x1F DUP6 AND SWAP3 POP PUSH1 0x6 DUP5 PUSH1 0xFF AND EQ ISZERO PUSH2 0x830 JUMPI PUSH2 0x829 DUP8 DUP5 PUSH2 0x1108 JUMP JUMPDEST SWAP2 POP PUSH2 0x835 JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST PUSH2 0x7F2 JUMP JUMPDEST PUSH1 0x7 DUP5 PUSH1 0xFF AND GT ISZERO PUSH2 0x881 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x878 SWAP1 PUSH2 0x27E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 DUP9 DUP2 MSTORE PUSH1 0x20 ADD DUP7 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP6 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP5 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x924 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x91B SWAP1 PUSH2 0x2681 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x19 DUP3 PUSH1 0x60 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0x96E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x965 SWAP1 PUSH2 0x2881 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x97B DUP3 PUSH1 0x0 ADD MLOAD PUSH2 0x129C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ ISZERO PUSH2 0x9E8 JUMPI PUSH1 0x0 PUSH2 0x9A8 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP DUP1 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH2 0x9E0 SWAP2 SWAP1 PUSH2 0x2F9A JUMP JUMPDEST SWAP2 POP POP PUSH2 0xA4D JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ ISZERO PUSH2 0xA12 JUMPI PUSH2 0xA01 DUP3 PUSH2 0x722 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH2 0xA4D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA44 SWAP1 PUSH2 0x2841 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA66 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH1 0x7 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0xACF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAC6 SWAP1 PUSH2 0x2741 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x14 DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xAEF JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0xB4A JUMP JUMPDEST PUSH1 0x15 DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xB0F JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0xB4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB41 SWAP1 PUSH2 0x2801 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xB63 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH4 0xFFFFFFFF DUP1 AND DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC72 JUMPI PUSH1 0x60 PUSH1 0x0 PUSH2 0xBB4 DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x40 ADD MLOAD PUSH2 0x13AF JUMP JUMPDEST SWAP1 POP PUSH4 0xFFFFFFFF DUP1 AND DUP2 PUSH4 0xFFFFFFFF AND LT ISZERO PUSH2 0xC68 JUMPI DUP2 PUSH2 0xBE2 DUP3 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x1465 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBF3 SWAP3 SWAP2 SWAP1 PUSH2 0x24DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP2 POP PUSH2 0xC16 DUP5 PUSH1 0x0 ADD MLOAD DUP6 PUSH1 0x40 ADD MLOAD PUSH2 0x13AF JUMP JUMPDEST SWAP1 POP PUSH4 0xFFFFFFFF DUP1 AND DUP2 PUSH4 0xFFFFFFFF AND LT ISZERO PUSH2 0xC67 JUMPI DUP2 PUSH2 0xC44 DUP3 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x1465 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC55 SWAP3 SWAP2 SWAP1 PUSH2 0x24DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP2 POP JUMPDEST JUMPDEST DUP2 SWAP3 POP POP POP PUSH2 0xC90 JUMP JUMPDEST PUSH2 0xC8D DUP3 PUSH1 0x80 ADD MLOAD DUP4 PUSH1 0x0 ADD MLOAD PUSH2 0x1465 SWAP1 SWAP2 SWAP1 PUSH4 0xFFFFFFFF AND JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0xCE1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCD8 SWAP1 PUSH2 0x2861 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xCF5 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0xD4D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD44 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xD73 JUMPI PUSH2 0xD72 PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xDA6 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xD91 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0xE1E JUMPI PUSH1 0x0 PUSH2 0xDD7 DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0xDE2 DUP2 PUSH2 0xE62 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0xDFF JUMPI PUSH2 0xDFE PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP POP DUP1 DUP1 PUSH2 0xE16 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0xDAC JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0xE31 PUSH2 0x1AA6 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP5 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 POP PUSH2 0xE5A DUP2 PUSH2 0x786 JUMP JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xE76 DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST DUP3 PUSH1 0x80 ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP3 PUSH1 0x80 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xF48 JUMPI PUSH1 0x60 PUSH1 0x0 JUMPDEST DUP1 PUSH2 0xF3E JUMPI PUSH1 0x0 PUSH2 0xED3 DUP6 PUSH1 0x0 ADD MLOAD DUP7 PUSH1 0x40 ADD MLOAD PUSH2 0x13AF JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0xF33 JUMPI DUP3 PUSH2 0xF0C DUP7 PUSH1 0x0 ADD MLOAD PUSH1 0x4 DUP5 PUSH2 0xF07 SWAP2 SWAP1 PUSH2 0x2BA8 JUMP JUMPDEST PUSH2 0x1579 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xF1D SWAP3 SWAP2 SWAP1 PUSH2 0x24DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP3 POP PUSH2 0xF38 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP JUMPDEST POP PUSH2 0xEBA JUMP JUMPDEST DUP2 SWAP3 POP POP POP PUSH2 0xF5D JUMP JUMPDEST PUSH2 0xF5A DUP3 PUSH1 0x0 ADD MLOAD DUP4 PUSH1 0x80 ADD MLOAD PUSH2 0x1579 JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x4 DUP3 PUSH1 0x40 ADD MLOAD PUSH1 0xFF AND EQ PUSH2 0xFAE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFA5 SWAP1 PUSH2 0x27C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xFC2 DUP4 PUSH1 0x0 ADD MLOAD DUP5 PUSH1 0x60 ADD MLOAD PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT PUSH2 0x101A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1011 SWAP1 PUSH2 0x2721 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1040 JUMPI PUSH2 0x103F PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x106E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x20 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x10FD JUMPI PUSH1 0x0 PUSH2 0x109F DUP7 PUSH1 0x0 ADD MLOAD PUSH2 0x786 JUMP JUMPDEST SWAP1 POP PUSH2 0x10AA DUP2 PUSH2 0x722 JUMP JUMPDEST DUP4 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x10C7 JUMPI PUSH2 0x10C6 PUSH2 0x3346 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP POP DUP1 DUP1 PUSH2 0x10F5 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1074 JUMP JUMPDEST POP DUP1 SWAP3 POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x18 DUP3 PUSH1 0xFF AND LT ISZERO PUSH2 0x1121 JUMPI DUP2 PUSH1 0xFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x18 DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x1140 JUMPI PUSH2 0x1136 DUP4 PUSH2 0x11FB JUMP JUMPDEST PUSH1 0xFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x19 DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x1160 JUMPI PUSH2 0x1155 DUP4 PUSH2 0x16D5 JUMP JUMPDEST PUSH2 0xFFFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x1A DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x1182 JUMPI PUSH2 0x1175 DUP4 PUSH2 0x1788 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x1B DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x119E JUMPI PUSH2 0x1197 DUP4 PUSH2 0x183B JUMP JUMPDEST SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x1F DUP3 PUSH1 0xFF AND EQ ISZERO PUSH2 0x11BA JUMPI PUSH8 0xFFFFFFFFFFFFFFFF SWAP1 POP PUSH2 0x11F5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11EC SWAP1 PUSH2 0x26E1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x20 ADD MLOAD DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x1250 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1247 SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x1 DUP5 ADD ADD MLOAD SWAP1 POP DUP7 PUSH1 0x20 ADD DUP1 MLOAD DUP1 SWAP2 SWAP1 PUSH2 0x127F SWAP1 PUSH2 0x322F JUMP JUMPDEST PUSH4 0xFFFFFFFF AND PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x12A8 DUP4 PUSH2 0x16D5 JUMP JUMPDEST PUSH2 0xFFFF AND SWAP1 POP PUSH1 0x0 PUSH2 0x8000 DUP3 AND SWAP1 POP PUSH1 0x0 PUSH1 0xF PUSH1 0xA PUSH2 0x7C00 DUP6 AND PUSH1 0x3 SIGNEXTEND SWAP1 SAR PUSH2 0x12D1 SWAP2 SWAP1 PUSH2 0x301E JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x3FF DUP5 AND SWAP1 POP PUSH1 0xF DUP3 PUSH1 0x3 SIGNEXTEND EQ ISZERO PUSH2 0x12F0 JUMPI PUSH2 0x400 DUP2 OR SWAP1 POP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x3 SIGNEXTEND SLT PUSH2 0x132E JUMPI PUSH1 0xA PUSH2 0x400 DUP4 PUSH1 0x3 SIGNEXTEND OR PUSH2 0x2710 DUP6 PUSH1 0x3 SIGNEXTEND PUSH1 0x1 SWAP1 SHL PUSH2 0x131B SWAP2 SWAP1 PUSH2 0x2D4A JUMP JUMPDEST PUSH2 0x1325 SWAP2 SWAP1 PUSH2 0x2D4A JUMP JUMPDEST SWAP1 SAR SWAP1 POP PUSH2 0x1365 JUMP JUMPDEST PUSH1 0xA DUP4 PUSH2 0x133A SWAP1 PUSH2 0x329F JUMP JUMPDEST PUSH1 0x3 SIGNEXTEND PUSH1 0x1 SWAP1 SHL PUSH2 0x2710 PUSH2 0x400 DUP6 PUSH1 0x3 SIGNEXTEND OR PUSH2 0x1356 SWAP2 SWAP1 PUSH2 0x2D4A JUMP JUMPDEST PUSH2 0x1360 SWAP2 SWAP1 PUSH2 0x2B3E JUMP JUMPDEST SWAP1 SAR SWAP1 POP JUMPDEST PUSH1 0x0 DUP5 PUSH4 0xFFFFFFFF AND EQ PUSH2 0x13A2 JUMPI PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 PUSH2 0x139F SWAP2 SWAP1 PUSH2 0x2E61 JUMP JUMPDEST SWAP1 POP JUMPDEST DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x13BB DUP5 PUSH2 0x11FB JUMP JUMPDEST SWAP1 POP PUSH1 0xFF DUP2 PUSH1 0xFF AND EQ ISZERO PUSH2 0x13DA JUMPI PUSH8 0xFFFFFFFFFFFFFFFF SWAP2 POP POP PUSH2 0x145F JUMP JUMPDEST PUSH1 0x0 PUSH2 0x13E9 DUP6 PUSH1 0x1F DUP5 AND PUSH2 0x1108 JUMP JUMPDEST SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP1 AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT DUP1 ISZERO PUSH2 0x141A JUMPI POP DUP4 PUSH1 0xFF AND PUSH1 0x5 DUP4 PUSH1 0xFF AND SWAP1 SHR PUSH1 0xFF AND EQ JUMPDEST PUSH2 0x1459 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1450 SWAP1 PUSH2 0x2781 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 SWAP3 POP POP POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP3 DUP5 PUSH1 0x20 ADD MLOAD PUSH2 0x147D SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND GT ISZERO PUSH2 0x14C4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14BB SWAP1 PUSH2 0x2701 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH4 0xFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x14E6 JUMPI PUSH2 0x14E5 PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1518 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 DUP4 PUSH4 0xFFFFFFFF AND EQ PUSH2 0x156F JUMPI PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP1 DUP3 PUSH1 0x20 DUP6 ADD ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP1 POP PUSH2 0x155D DUP2 DUP4 DUP10 PUSH4 0xFFFFFFFF AND PUSH2 0x18EE JUMP JUMPDEST PUSH2 0x1569 DUP9 DUP9 PUSH1 0x1 PUSH2 0x19BA JUMP JUMPDEST POP POP POP POP POP JUMPDEST DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP1 PUSH1 0x0 JUMPDEST DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x16CA JUMPI PUSH1 0x0 PUSH2 0x15A6 DUP7 PUSH2 0x11FB JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x80 DUP3 AND PUSH1 0xFF AND EQ PUSH2 0x1692 JUMPI PUSH1 0xE0 DUP2 PUSH1 0xFF AND LT ISZERO PUSH2 0x15F0 JUMPI PUSH1 0x3F PUSH2 0x15CD DUP8 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0x6 PUSH1 0x1F DUP4 AND PUSH1 0xFF AND SWAP1 SHL OR SWAP1 POP PUSH1 0x1 DUP6 PUSH2 0x15E9 SWAP2 SWAP1 PUSH2 0x30CA JUMP JUMPDEST SWAP5 POP PUSH2 0x1691 JUMP JUMPDEST PUSH1 0xF0 DUP2 PUSH1 0xFF AND LT ISZERO PUSH2 0x163E JUMPI PUSH1 0x3F PUSH2 0x1607 DUP8 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0x6 PUSH1 0x3F PUSH2 0x1615 DUP10 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0xFF AND SWAP1 SHL PUSH1 0xC PUSH1 0xF DUP5 AND PUSH1 0xFF AND SWAP1 SHL OR OR SWAP1 POP PUSH1 0x2 DUP6 PUSH2 0x1637 SWAP2 SWAP1 PUSH2 0x30CA JUMP JUMPDEST SWAP5 POP PUSH2 0x1690 JUMP JUMPDEST PUSH1 0x3F PUSH2 0x1649 DUP8 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0x6 PUSH1 0x3F PUSH2 0x1657 DUP10 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0xFF AND SWAP1 SHL PUSH1 0xC PUSH1 0x3F PUSH2 0x166A DUP11 PUSH2 0x11FB JUMP JUMPDEST AND PUSH1 0xFF AND SWAP1 SHL PUSH1 0x12 PUSH1 0xF DUP6 AND PUSH1 0xFF AND SWAP1 SHL OR OR OR SWAP1 POP PUSH1 0x3 DUP6 PUSH2 0x168D SWAP2 SWAP1 PUSH2 0x30CA JUMP JUMPDEST SWAP5 POP JUMPDEST JUMPDEST JUMPDEST DUP3 DUP2 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x16A5 SWAP3 SWAP2 SWAP1 PUSH2 0x2501 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP3 POP POP DUP1 DUP1 PUSH2 0x16C2 SWAP1 PUSH2 0x325C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x157F JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x16E8 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x1736 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x172D SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x2 DUP5 ADD ADD MLOAD SWAP1 POP PUSH1 0x2 DUP8 PUSH1 0x20 ADD DUP2 DUP2 MLOAD PUSH2 0x1766 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP2 POP SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x179B SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x17E9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x17E0 SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x4 DUP5 ADD ADD MLOAD SWAP1 POP PUSH1 0x4 DUP8 PUSH1 0x20 ADD DUP2 DUP2 MLOAD PUSH2 0x1819 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP2 POP SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 DUP3 PUSH1 0x20 ADD MLOAD PUSH2 0x184E SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST DUP3 PUSH1 0x0 ADD MLOAD MLOAD DUP1 DUP3 PUSH4 0xFFFFFFFF AND LT PUSH2 0x189C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1893 SWAP1 PUSH2 0x26C1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP5 PUSH1 0x0 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP6 PUSH1 0x20 ADD MLOAD SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x8 DUP5 ADD ADD MLOAD SWAP1 POP PUSH1 0x8 DUP8 PUSH1 0x20 ADD DUP2 DUP2 MLOAD PUSH2 0x18CC SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP2 POP SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP1 SWAP6 POP POP POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 GT PUSH2 0x1931 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1928 SWAP1 PUSH2 0x2821 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST PUSH1 0x20 DUP2 LT PUSH2 0x1970 JUMPI DUP2 MLOAD DUP4 MSTORE PUSH1 0x20 DUP4 PUSH2 0x194B SWAP2 SWAP1 PUSH2 0x2AAE JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP3 PUSH2 0x195A SWAP2 SWAP1 PUSH2 0x2AAE JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP2 PUSH2 0x1969 SWAP2 SWAP1 PUSH2 0x3096 JUMP JUMPDEST SWAP1 POP PUSH2 0x1932 JUMP JUMPDEST PUSH1 0x0 DUP2 GT ISZERO PUSH2 0x19B5 JUMPI PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x20 PUSH2 0x198A SWAP2 SWAP1 PUSH2 0x3096 JUMP JUMPDEST PUSH2 0x100 PUSH2 0x1997 SWAP2 SWAP1 PUSH2 0x2C2C JUMP JUMPDEST PUSH2 0x19A1 SWAP2 SWAP1 PUSH2 0x3096 JUMP JUMPDEST SWAP1 POP DUP1 NOT DUP4 MLOAD AND DUP2 DUP6 MLOAD AND DUP2 DUP2 OR DUP7 MSTORE POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO PUSH2 0x1A32 JUMPI DUP3 PUSH4 0xFFFFFFFF AND DUP5 PUSH1 0x20 ADD MLOAD DUP5 PUSH2 0x19D9 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND GT PUSH2 0x1A1F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A16 SWAP1 PUSH2 0x28A1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP4 PUSH1 0x20 ADD MLOAD DUP4 PUSH2 0x1A2F SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST SWAP3 POP JUMPDEST DUP4 PUSH1 0x0 ADD MLOAD MLOAD DUP4 PUSH4 0xFFFFFFFF AND GT ISZERO PUSH2 0x1A80 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A77 SWAP1 PUSH2 0x2661 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 DUP5 PUSH1 0x20 ADD SWAP1 PUSH4 0xFFFFFFFF AND SWAP1 DUP2 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP POP DUP4 PUSH1 0x20 ADD MLOAD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x1AB9 PUSH2 0x1AFF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B32 PUSH2 0x1B2D DUP5 PUSH2 0x2923 JUMP JUMPDEST PUSH2 0x28FE JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1B4E JUMPI PUSH2 0x1B4D PUSH2 0x33B3 JUMP JUMPDEST JUMPDEST PUSH2 0x1B59 DUP5 DUP3 DUP6 PUSH2 0x3173 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B76 JUMPI PUSH2 0x1B75 PUSH2 0x33A4 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B86 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1B1F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BA5 JUMPI PUSH2 0x1BA4 PUSH2 0x33A9 JUMP JUMPDEST JUMPDEST PUSH2 0x1BAF PUSH1 0x40 PUSH2 0x28FE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1BCF JUMPI PUSH2 0x1BCE PUSH2 0x33AE JUMP JUMPDEST JUMPDEST PUSH2 0x1BDB DUP5 DUP3 DUP6 ADD PUSH2 0x1B61 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1BEF DUP5 DUP3 DUP6 ADD PUSH2 0x1CB7 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1C11 JUMPI PUSH2 0x1C10 PUSH2 0x33A9 JUMP JUMPDEST JUMPDEST PUSH2 0x1C1B PUSH1 0xC0 PUSH2 0x28FE JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C3B JUMPI PUSH2 0x1C3A PUSH2 0x33AE JUMP JUMPDEST JUMPDEST PUSH2 0x1C47 DUP5 DUP3 DUP6 ADD PUSH2 0x1B8F JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x1C5B DUP5 DUP3 DUP6 ADD PUSH2 0x1CE1 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x1C6F DUP5 DUP3 DUP6 ADD PUSH2 0x1CE1 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x1C83 DUP5 DUP3 DUP6 ADD PUSH2 0x1CE1 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x1C97 DUP5 DUP3 DUP6 ADD PUSH2 0x1CCC JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x1CAB DUP5 DUP3 DUP6 ADD PUSH2 0x1CCC JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1CC6 DUP2 PUSH2 0x3B92 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1CDB DUP2 PUSH2 0x3BA9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1CF0 DUP2 PUSH2 0x3BC0 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D0C JUMPI PUSH2 0x1D0B PUSH2 0x33BD JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D2A JUMPI PUSH2 0x1D29 PUSH2 0x33B8 JUMP JUMPDEST JUMPDEST PUSH2 0x1D36 DUP5 DUP3 DUP6 ADD PUSH2 0x1B61 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D55 JUMPI PUSH2 0x1D54 PUSH2 0x33BD JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D73 JUMPI PUSH2 0x1D72 PUSH2 0x33B8 JUMP JUMPDEST JUMPDEST PUSH2 0x1D7F DUP5 DUP3 DUP6 ADD PUSH2 0x1B8F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1D9E JUMPI PUSH2 0x1D9D PUSH2 0x33BD JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1DBC JUMPI PUSH2 0x1DBB PUSH2 0x33B8 JUMP JUMPDEST JUMPDEST PUSH2 0x1DC8 DUP5 DUP3 DUP6 ADD PUSH2 0x1BFB JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DDD DUP4 DUP4 PUSH2 0x208C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DF5 DUP4 DUP4 PUSH2 0x20AA JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E0D DUP4 DUP4 PUSH2 0x20F2 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E21 DUP4 DUP4 PUSH2 0x24A8 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E38 DUP3 PUSH2 0x2994 JUMP JUMPDEST PUSH2 0x1E42 DUP2 DUP6 PUSH2 0x2A0A JUMP JUMPDEST SWAP4 POP PUSH2 0x1E4D DUP4 PUSH2 0x2954 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E7E JUMPI DUP2 MLOAD PUSH2 0x1E65 DUP9 DUP3 PUSH2 0x1DD1 JUMP JUMPDEST SWAP8 POP PUSH2 0x1E70 DUP4 PUSH2 0x29D6 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1E51 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E96 DUP3 PUSH2 0x299F JUMP JUMPDEST PUSH2 0x1EA0 DUP2 DUP6 PUSH2 0x2A1B JUMP JUMPDEST SWAP4 POP PUSH2 0x1EAB DUP4 PUSH2 0x2964 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1EDC JUMPI DUP2 MLOAD PUSH2 0x1EC3 DUP9 DUP3 PUSH2 0x1DE9 JUMP JUMPDEST SWAP8 POP PUSH2 0x1ECE DUP4 PUSH2 0x29E3 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1EAF JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF4 DUP3 PUSH2 0x29AA JUMP JUMPDEST PUSH2 0x1EFE DUP2 DUP6 PUSH2 0x2A2C JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x1F10 DUP6 PUSH2 0x2974 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x1F4C JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x1F2D DUP6 DUP3 PUSH2 0x1E01 JUMP JUMPDEST SWAP5 POP PUSH2 0x1F38 DUP4 PUSH2 0x29F0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1F14 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F69 DUP3 PUSH2 0x29B5 JUMP JUMPDEST PUSH2 0x1F73 DUP2 DUP6 PUSH2 0x2A3D JUMP JUMPDEST SWAP4 POP PUSH2 0x1F7E DUP4 PUSH2 0x2984 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1FAF JUMPI DUP2 MLOAD PUSH2 0x1F96 DUP9 DUP3 PUSH2 0x1E15 JUMP JUMPDEST SWAP8 POP PUSH2 0x1FA1 DUP4 PUSH2 0x29FD JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x1F82 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1FC5 DUP2 PUSH2 0x30FE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1FD4 DUP2 PUSH2 0x310A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FE5 DUP3 PUSH2 0x29C0 JUMP JUMPDEST PUSH2 0x1FEF DUP2 DUP6 PUSH2 0x2A4E JUMP JUMPDEST SWAP4 POP PUSH2 0x1FFF DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x2008 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x201E DUP3 PUSH2 0x29C0 JUMP JUMPDEST PUSH2 0x2028 DUP2 DUP6 PUSH2 0x2A5F JUMP JUMPDEST SWAP4 POP PUSH2 0x2038 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x2041 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2057 DUP3 PUSH2 0x29C0 JUMP JUMPDEST PUSH2 0x2061 DUP2 DUP6 PUSH2 0x2A70 JUMP JUMPDEST SWAP4 POP PUSH2 0x2071 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2086 DUP2 PUSH2 0x3114 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2095 DUP2 PUSH2 0x3114 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x20A4 DUP2 PUSH2 0x312B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x20B3 DUP2 PUSH2 0x312B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20C4 DUP3 PUSH2 0x29CB JUMP JUMPDEST PUSH2 0x20CE DUP2 DUP6 PUSH2 0x2A8C JUMP JUMPDEST SWAP4 POP PUSH2 0x20DE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x20E7 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x20FD DUP3 PUSH2 0x29CB JUMP JUMPDEST PUSH2 0x2107 DUP2 DUP6 PUSH2 0x2A9D JUMP JUMPDEST SWAP4 POP PUSH2 0x2117 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x3182 JUMP JUMPDEST PUSH2 0x2120 DUP2 PUSH2 0x33C2 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2138 PUSH1 0x35 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2143 DUP3 PUSH2 0x33ED JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x215B PUSH1 0x54 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2166 DUP3 PUSH2 0x343C JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x217E PUSH1 0x51 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2189 DUP3 PUSH2 0x34B1 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21A1 PUSH1 0x49 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x21AC DUP3 PUSH2 0x3526 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21C4 PUSH1 0x54 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x21CF DUP3 PUSH2 0x359B JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21E7 PUSH1 0x35 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x21F2 DUP3 PUSH2 0x3610 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x220A PUSH1 0x41 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2215 DUP3 PUSH2 0x365F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x222D PUSH1 0x57 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2238 DUP3 PUSH2 0x36D4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2250 PUSH1 0x53 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x225B DUP3 PUSH2 0x3749 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2273 PUSH1 0x2B DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x227E DUP3 PUSH2 0x37BE JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2296 PUSH1 0x3C DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x22A1 DUP3 PUSH2 0x380D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22B9 PUSH1 0x53 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x22C4 DUP3 PUSH2 0x385C JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22DC PUSH1 0x29 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x22E7 DUP3 PUSH2 0x38D1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x22FF PUSH1 0x5C DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x230A DUP3 PUSH2 0x3920 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2322 PUSH1 0x21 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x232D DUP3 PUSH2 0x3995 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2345 PUSH1 0x57 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2350 DUP3 PUSH2 0x39E4 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2368 PUSH1 0x53 DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2373 DUP3 PUSH2 0x3A59 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x238B PUSH1 0x5B DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x2396 DUP3 PUSH2 0x3ACE JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23AE PUSH1 0x2B DUP4 PUSH2 0x2A7B JUMP JUMPDEST SWAP2 POP PUSH2 0x23B9 DUP3 PUSH2 0x3B43 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x23E1 DUP3 DUP3 PUSH2 0x2013 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x23F6 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x248A JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x241E DUP3 DUP3 PUSH2 0x23C4 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x2433 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x24B7 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x2446 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x24B7 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x2459 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x24B7 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x246C PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x24A8 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x247F PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x24A8 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2493 DUP2 PUSH2 0x3142 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24A2 DUP2 PUSH2 0x3152 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24B1 DUP2 PUSH2 0x3152 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24C0 DUP2 PUSH2 0x3166 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x24D7 PUSH2 0x24D2 DUP3 PUSH2 0x3166 JUMP JUMPDEST PUSH2 0x328D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x24E9 DUP3 DUP6 PUSH2 0x204C JUMP JUMPDEST SWAP2 POP PUSH2 0x24F5 DUP3 DUP5 PUSH2 0x204C JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x250D DUP3 DUP6 PUSH2 0x204C JUMP JUMPDEST SWAP2 POP PUSH2 0x2519 DUP3 DUP5 PUSH2 0x24C6 JUMP JUMPDEST PUSH1 0x1 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2543 DUP2 DUP5 PUSH2 0x1E2D 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 0x2565 DUP2 DUP5 PUSH2 0x1E8B 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 0x2587 DUP2 DUP5 PUSH2 0x1EE9 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 0x25A9 DUP2 DUP5 PUSH2 0x1F5E JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25C6 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FBC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x25E1 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FCB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2601 DUP2 DUP5 PUSH2 0x1FDA JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x261E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x207D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2639 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x209B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2659 DUP2 DUP5 PUSH2 0x20B9 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 0x267A DUP2 PUSH2 0x212B 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 0x269A DUP2 PUSH2 0x214E 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 0x26BA DUP2 PUSH2 0x2171 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 0x26DA DUP2 PUSH2 0x2194 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 0x26FA DUP2 PUSH2 0x21B7 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 0x271A DUP2 PUSH2 0x21DA 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 0x273A DUP2 PUSH2 0x21FD 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 0x275A DUP2 PUSH2 0x2220 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 0x277A DUP2 PUSH2 0x2243 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 0x279A DUP2 PUSH2 0x2266 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 0x27BA DUP2 PUSH2 0x2289 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 0x27DA DUP2 PUSH2 0x22AC 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 0x27FA DUP2 PUSH2 0x22CF 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 0x281A DUP2 PUSH2 0x22F2 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 0x283A DUP2 PUSH2 0x2315 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 0x285A DUP2 PUSH2 0x2338 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 0x287A DUP2 PUSH2 0x235B 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 0x289A DUP2 PUSH2 0x237E 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 0x28BA DUP2 PUSH2 0x23A1 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 0x28DB DUP2 DUP5 PUSH2 0x2401 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x28F8 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2499 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2908 PUSH2 0x2919 JUMP JUMPDEST SWAP1 POP PUSH2 0x2914 DUP3 DUP3 PUSH2 0x31B5 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 0x293E JUMPI PUSH2 0x293D PUSH2 0x3375 JUMP JUMPDEST JUMPDEST PUSH2 0x2947 DUP3 PUSH2 0x33C2 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 SWAP1 POP PUSH1 0x20 DUP3 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 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 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 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD 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 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 DUP2 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 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2AB9 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x2AC4 DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2AF9 JUMPI PUSH2 0x2AF8 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B0F DUP3 PUSH2 0x3142 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B1A DUP4 PUSH2 0x3142 JUMP JUMPDEST SWAP3 POP DUP3 PUSH4 0xFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2B33 JUMPI PUSH2 0x2B32 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2B49 DUP3 PUSH2 0x3121 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B54 DUP4 PUSH2 0x3121 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2B64 JUMPI PUSH2 0x2B63 PUSH2 0x3317 JUMP JUMPDEST JUMPDEST PUSH1 0x1 PUSH1 0x0 SUB DUP4 EQ PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 DUP4 EQ AND ISZERO PUSH2 0x2B9D JUMPI PUSH2 0x2B9C PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SDIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2BB3 DUP3 PUSH2 0x3152 JUMP JUMPDEST SWAP2 POP PUSH2 0x2BBE DUP4 PUSH2 0x3152 JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x2BCE JUMPI PUSH2 0x2BCD PUSH2 0x3317 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x2C23 JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x2BFF JUMPI PUSH2 0x2BFE PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x2C0E JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x2C1C DUP6 PUSH2 0x33E0 JUMP JUMPDEST SWAP5 POP PUSH2 0x2BE3 JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2C37 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C42 DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP PUSH2 0x2C6F PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x2C77 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x2C87 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x2D43 JUMP JUMPDEST DUP2 PUSH2 0x2C95 JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x2D43 JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x2CAB JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x2CB5 JUMPI PUSH2 0x2CE4 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x2D43 JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x2CC7 JUMPI PUSH2 0x2CC6 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x2CDE JUMPI PUSH2 0x2CDD PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST POP PUSH2 0x2D43 JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x2D19 JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x2D14 JUMPI PUSH2 0x2D13 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH2 0x2D43 JUMP JUMPDEST PUSH2 0x2D26 DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x2BD9 JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x2D3D JUMPI PUSH2 0x2D3C PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D55 DUP3 PUSH2 0x3121 JUMP JUMPDEST SWAP2 POP PUSH2 0x2D60 DUP4 PUSH2 0x3121 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP3 GT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2D9F JUMPI PUSH2 0x2D9E PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 SDIV DUP4 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2DDC JUMPI PUSH2 0x2DDB PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0x8000000000000000000000000000000000000000000000000000000000000000 SDIV DUP3 SLT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2E19 JUMPI PUSH2 0x2E18 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SDIV DUP3 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2E56 JUMPI PUSH2 0x2E55 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E6C DUP3 PUSH2 0x312B JUMP JUMPDEST SWAP2 POP PUSH2 0x2E77 DUP4 PUSH2 0x312B JUMP JUMPDEST SWAP3 POP DUP3 PUSH4 0x7FFFFFFF DIV DUP3 GT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2E9A JUMPI PUSH2 0x2E99 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 SDIV DUP4 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SGT AND AND ISZERO PUSH2 0x2ED7 JUMPI PUSH2 0x2ED6 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 SDIV DUP3 SLT PUSH1 0x0 DUP5 SGT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2F14 JUMPI PUSH2 0x2F13 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH4 0x7FFFFFFF SDIV DUP3 SLT PUSH1 0x0 DUP5 SLT PUSH1 0x0 DUP5 SLT AND AND ISZERO PUSH2 0x2F35 JUMPI PUSH2 0x2F34 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F4B DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x2F56 DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x2F8F JUMPI PUSH2 0x2F8E PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2FA5 DUP3 PUSH2 0x3114 JUMP JUMPDEST SWAP2 POP PUSH2 0x2FB0 DUP4 PUSH2 0x3114 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000000000000000000000000000 ADD DUP3 SLT PUSH1 0x0 DUP5 SLT ISZERO AND ISZERO PUSH2 0x2FEB JUMPI PUSH2 0x2FEA PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH16 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF ADD DUP3 SGT PUSH1 0x0 DUP5 SLT AND ISZERO PUSH2 0x3013 JUMPI PUSH2 0x3012 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3029 DUP3 PUSH2 0x312B JUMP JUMPDEST SWAP2 POP PUSH2 0x3034 DUP4 PUSH2 0x312B JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 ADD DUP3 SLT PUSH1 0x0 DUP5 SLT ISZERO AND ISZERO PUSH2 0x306F JUMPI PUSH2 0x306E PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 PUSH4 0x7FFFFFFF ADD DUP3 SGT PUSH1 0x0 DUP5 SLT AND ISZERO PUSH2 0x308B JUMPI PUSH2 0x308A PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30A1 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH2 0x30AC DUP4 PUSH2 0x3138 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x30BF JUMPI PUSH2 0x30BE PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30D5 DUP3 PUSH2 0x3152 JUMP JUMPDEST SWAP2 POP PUSH2 0x30E0 DUP4 PUSH2 0x3152 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x30F3 JUMPI PUSH2 0x30F2 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP 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 PUSH1 0xF SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x3 SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND 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 0x31A0 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x3185 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x31AF JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x31BE DUP3 PUSH2 0x33C2 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x31DD JUMPI PUSH2 0x31DC PUSH2 0x3375 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31F1 DUP3 PUSH2 0x3138 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x3224 JUMPI PUSH2 0x3223 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x323A DUP3 PUSH2 0x3142 JUMP JUMPDEST SWAP2 POP PUSH4 0xFFFFFFFF DUP3 EQ ISZERO PUSH2 0x3251 JUMPI PUSH2 0x3250 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3267 DUP3 PUSH2 0x3152 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x3282 JUMPI PUSH2 0x3281 PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3298 DUP3 PUSH2 0x33D3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32AA DUP3 PUSH2 0x312B JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF80000000 DUP3 EQ ISZERO PUSH2 0x32DD JUMPI PUSH2 0x32DC PUSH2 0x32E8 JUMP JUMPDEST JUMPDEST DUP2 PUSH1 0x0 SUB 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 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF8 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A204E6F7420656E6F7567682062797465732069 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E20627566666572207768656E207365656B696E670000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6120606669786564602076616C75652066726F6D2061206057542E43424F5260 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x2077697468206D616A6F725479706520213D2037000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6075696E743634602066726F6D206120605769746E65742E43424F5260207769 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x7468206D616A6F725479706520213D2030000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A20547269656420746F20726561642066726F6D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206120636F6E73756D65642042756666657220286D75737420726577696E6420 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6974206669727374290000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E76616C6964206C656E677468 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x20656E636F64696E6720286E6F6E2D6578697374656E74206164646974696F6E PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x616C496E666F726D6174696F6E2076616C756529000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A204E6F7420656E6F7567682062797465732069 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E20627566666572207768656E2072656164696E670000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E646566696E6974652D6C656E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6774682043424F522061727261797320617265206E6F7420737570706F727465 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6400000000000000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x612060626F6F6C602076616C75652066726F6D206120605769746E65742E4342 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x4F52602077697468206D616A6F725479706520213D2037000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60696E743132385B5D602066726F6D206120605769746E65742E43424F526020 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x77697468206D616A6F725479706520213D203400000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E76616C696420696E64656669 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E697465206C656E677468000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20466F756E6420656D707479206275 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x66666572207768656E2070617273696E672043424F522076616C756500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6075696E7436345B5D602066726F6D206120605769746E65742E43424F526020 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x77697468206D616A6F725479706520213D203400000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20496E76616C69642043424F52206D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x616A6F7220747970650000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60626F6F6C602066726F6D206120605769746E65742E43424F52602077697468 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x206C656E20646966666572656E74207468616E203230206F7220323100000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A2043616E6E6F7420636F707920302062797465 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60696E74313238602066726F6D206120605769746E65742E43424F5260207769 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x7468206D616A6F7254797065206E6F742030206F722031000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x60737472696E675B5D602066726F6D206120605769746E65742E43424F526020 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x77697468206D616A6F725479706520213D203400000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744465636F6465724C69623A20547269656420746F207265616420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6066697865643136602066726F6D2061206057542E43424F5260207769746820 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6164646974696F6E616C496E666F726D6174696F6E20213D2032350000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65744275666665723A20496E7465676572206F766572666C6F772077 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x68656E207365656B696E67000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x3B9B DUP2 PUSH2 0x3142 JUMP JUMPDEST DUP2 EQ PUSH2 0x3BA6 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3BB2 DUP2 PUSH2 0x3152 JUMP JUMPDEST DUP2 EQ PUSH2 0x3BBD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x3BC9 DUP2 PUSH2 0x3166 JUMP JUMPDEST DUP2 EQ PUSH2 0x3BD4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 LOG4 0xD4 0xD1 LT 0xE1 0xCA SWAP15 PUSH16 0x5FBECBC2CD493E629DFA4AE32D005565 0xF6 SWAP13 PUSH4 0x361D2074 REVERT PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"814:13642:31:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3073:301;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6340:642;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4634:641;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8941:287;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10936:925;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3932:406;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5482:647;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1202:538;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1947:909;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8092:642;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10405:197;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7188:693;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9439:642;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3073:301;3147:16;3171;3190:23;3202:10;3190:11;:23::i;:::-;3171:42;;3219:9;3244:2;3231:3;:10;:15;:33;;3254:3;:10;3231:33;;;3249:2;3231:33;3219:45;;3275:7;3270:100;3293:4;3288:2;:9;3270:100;;;3361:1;3356:2;:6;;;;:::i;:::-;3346:4;3336:14;;:3;3340:2;3336:7;;;;;;;;:::i;:::-;;;;;;;;;;:14;3328:23;;;:35;;3316:47;;;;3299:5;;;;;:::i;:::-;;;;3270:100;;;;3165:209;;3073:301;;;:::o;6340:642::-;6420:15;6475:1;6451:10;:20;;;:25;;;6443:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;6571:13;6587:63;6598:10;:17;;;6617:10;:32;;;6587:10;:63::i;:::-;6571:79;;983:16;6664:20;;:6;:20;;;6656:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;6761:21;6798:6;6785:20;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6761:44;;6816:8;6811:148;6834:6;6830:10;;:1;:10;;;6811:148;;;6855:23;6881:34;6897:10;:17;;;6881:15;:34::i;:::-;6855:60;;6934:18;6947:4;6934:12;:18::i;:::-;6923:5;6929:1;6923:8;;;;;;;;;;:::i;:::-;;;;;;;:29;;;;;;;;;;;6847:112;6842:3;;;;;:::i;:::-;;;;6811:148;;;;6972:5;6965:12;;;;6340:642;;;:::o;4634:641::-;4715:14;4769:1;4745:10;:20;;;:25;;;4737:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;4865:13;4881:63;4892:10;:17;;;4911:10;:32;;;4881:10;:63::i;:::-;4865:79;;983:16;4958:20;;:6;:20;;;4950:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;5055:20;5090:6;5078:19;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5055:42;;5108:8;5103:149;5126:6;5122:10;;:1;:10;;;5103:149;;;5147:23;5173:34;5189:10;:17;;;5173:15;:34::i;:::-;5147:60;;5226:19;5240:4;5226:13;:19::i;:::-;5215:5;5221:1;5215:8;;;;;;;;;;:::i;:::-;;;;;;;:30;;;;;;;;;;;5139:113;5134:3;;;;;:::i;:::-;;;;5103:149;;;;5265:5;5258:12;;;;4634:641;;;:::o;8941:287::-;9014:6;9060:1;9036:10;:20;;;:25;;;9028:119;;;;;;;;;;;;:::i;:::-;;;;;;;;;9160:63;9171:10;:17;;;9190:10;:32;;;9160:10;:63::i;:::-;9153:70;;8941:287;;;:::o;10936:925::-;11011:18;;:::i;:::-;11067:1;11045:7;:12;;;:19;:23;11037:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;11140:17;11163:15;11181:3;11163:21;;11190:27;11223:10;983:16;11223:24;;11254:13;11270:4;11254:20;;11280:376;11287:8;11280:376;;;11375:19;:7;:17;:19::i;:::-;11361:33;;11429:1;11414:11;:16;;;;11402:28;;11476:4;11462:11;:18;11438:42;;11539:1;11526:9;:14;;;11522:128;;;11558:42;11569:7;11578:21;11558:10;:42::i;:::-;11552:48;;11522:128;;;11636:5;11625:16;;11522:128;11280:376;;;11683:1;11670:9;:14;;;;11662:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11744:112;;;;;;;;11763:7;11744:112;;;;11778:11;11744:112;;;;;;11797:9;11744:112;;;;;;11814:21;11744:112;;;;;;11843:1;11744:112;;;;;;11852:3;11744:112;;;;;11737:119;;;;;;;10936:925;;;:::o;3932:406::-;4006:5;4051:1;4027:10;:20;;;:25;;;4019:122;;;;;;;;;;;;:::i;:::-;;;;;;;;;4191:2;4155:10;:32;;;:38;;;4147:142;;;;;;;;;;;;:::i;:::-;;;;;;;;;4302:31;:10;:17;;;:29;:31::i;:::-;4295:38;;3932:406;;;:::o;5482:647::-;5555:6;5597:1;5573:10;:20;;;:25;;;5569:453;;;5608:13;5624:63;5635:10;:17;;;5654:10;:32;;;5624:10;:63::i;:::-;5608:79;;5730:6;5722:15;;5709:2;5702:36;;;;:::i;:::-;5695:43;;;;;5569:453;5779:1;5755:10;:20;;;:25;;;5751:271;;;5989:24;6002:10;5989:12;:24::i;:::-;5981:33;;5967:48;;;;5751:271;6027:97;;;;;;;;;;:::i;:::-;;;;;;;;5482:647;;;;:::o;1202:538::-;1273:4;1302:63;1313:10;:17;;;1332:10;:32;;;1302:10;:63::i;:::-;1285:10;:14;;:80;;;;;;;;;;;1403:1;1379:10;:20;;;:25;;;1371:125;;;;;;;;;;;;:::i;:::-;;;;;;;;;1524:2;1506:10;:14;;;:20;;;1502:234;;;1543:5;1536:12;;;;1502:234;1583:2;1565:10;:14;;;:20;;;1561:175;;;1602:4;1595:11;;;;1561:175;1627:102;;;;;;;;;;:::i;:::-;;;;;;;;1202:538;;;;:::o;1947:909::-;2019:12;2056:63;2067:10;:17;;;2086:10;:32;;;2056:10;:63::i;:::-;2039:10;:14;;:80;;;;;;;;;;;924:16;2129:29;;:10;:14;;;:29;;;2125:727;;;2168:22;2286:17;2313:67;2340:10;:17;;;2359:10;:20;;;2313:26;:67::i;:::-;2286:95;;924:16;2393:24;;:10;:24;;;2389:359;;;2458:9;2469:34;2492:10;2469;:17;;;:22;;:34;;;;:::i;:::-;2441:63;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2429:75;;2534:67;2561:10;:17;;;2580:10;:20;;;2534:26;:67::i;:::-;2514:88;;924:16;2616:24;;:10;:24;;;2612:128;;;2683:9;2694:34;2717:10;2694;:17;;;:22;;:34;;;;:::i;:::-;2666:63;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2654:75;;2612:128;2389:359;2762:9;2755:16;;;;;;2125:727;2799:46;2829:10;:14;;;2799:10;:17;;;:22;;:46;;;;:::i;:::-;2792:53;;1947:909;;;;:::o;8092:642::-;8172:15;8227:1;8203:10;:20;;;:25;;;8195:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;8323:13;8339:63;8350:10;:17;;;8369:10;:32;;;8339:10;:63::i;:::-;8323:79;;983:16;8416:20;;:6;:20;;;8408:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;8513:21;8550:6;8537:20;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8513:44;;8568:8;8563:148;8586:6;8582:10;;:1;:10;;;8563:148;;;8607:23;8633:34;8649:10;:17;;;8633:15;:34::i;:::-;8607:60;;8686:18;8699:4;8686:12;:18::i;:::-;8675:5;8681:1;8675:8;;;;;;;;;;:::i;:::-;;;;;;;:29;;;;8599:112;8594:3;;;;;:::i;:::-;;;;8563:148;;;;8724:5;8717:12;;;;8092:642;;;:::o;10405:197::-;10476:18;;:::i;:::-;10502:27;10532:28;;;;;;;;10546:10;10532:28;;;;10558:1;10532:28;;;;;10502:58;;10574:23;10590:6;10574:15;:23::i;:::-;10567:30;;;10405:197;;;:::o;7188:693::-;7261:13;7299:63;7310:10;:17;;;7329:10;:32;;;7299:10;:63::i;:::-;7282:10;:14;;:80;;;;;;;;;;;983:16;7372:29;;:10;:14;;;:29;;;7368:509;;;7411:21;7440:9;7457:304;7465:4;7457:304;;7481:17;7501:67;7528:10;:17;;;7547:10;:20;;;7501:26;:67::i;:::-;7481:87;;983:16;7582:24;;:10;:24;;;7578:175;;;7648:8;7658:43;7667:10;:17;;;7699:1;7686:10;:14;;;;:::i;:::-;7658:8;:43::i;:::-;7631:71;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7620:82;;7578:175;;;7738:4;7731:11;;7578:175;7471:290;7457:304;;;7782:8;7768:23;;;;;;7368:509;7826:43;7835:10;:17;;;7854:10;:14;;;7826:8;:43::i;:::-;7812:58;;7188:693;;;;:::o;9439:642::-;9519:15;9574:1;9550:10;:20;;;:25;;;9542:121;;;;;;;;;;;;:::i;:::-;;;;;;;;;9670:13;9686:63;9697:10;:17;;;9716:10;:32;;;9686:10;:63::i;:::-;9670:79;;983:16;9763:20;;:6;:20;;;9755:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;9860:21;9897:6;9884:20;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9860:44;;9915:8;9910:148;9933:6;9929:10;;:1;:10;;;9910:148;;;9954:23;9980:34;9996:10;:17;;;9980:15;:34::i;:::-;9954:60;;10033:18;10046:4;10033:12;:18::i;:::-;10022:5;10028:1;10022:8;;;;;;;;;;:::i;:::-;;;;;;;:29;;;;;;;;;;;9946:112;9941:3;;;;;:::i;:::-;;;;9910:148;;;;10071:5;10064:12;;;;9439:642;;;:::o;12033:683::-;12133:6;12175:2;12151:21;:26;;;12147:75;;;12194:21;12187:28;;;;;;12147:75;12256:2;12231:21;:27;;;12227:74;;;12275:19;:7;:17;:19::i;:::-;12268:26;;;;;;12227:74;12335:2;12310:21;:27;;;12306:75;;;12354:20;:7;:18;:20::i;:::-;12347:27;;;;;;12306:75;12415:2;12390:21;:27;;;12386:75;;;12434:20;:7;:18;:20::i;:::-;12427:27;;;;;;12386:75;12495:2;12470:21;:27;;;12466:75;;;12514:20;:7;:18;:20::i;:::-;12507:27;;;;12466:75;12575:2;12550:21;:27;;;12546:66;;;983:16;12587:18;;;;12546:66;12617:94;;;;;;;;;;:::i;:::-;;;;;;;;12033:683;;;;;:::o;4691:349:30:-;4815:5;4769:7;:14;;;4785:7;:12;;;:19;813:6;805:5;:14;;;797:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;4828:23:::1;4854:7;:12;;;4828:38;;4872:13;4888:7;:14;;;4872:30;;4908:11;4981:6;4977:1;4965:10;4961:18;4957:31;4951:38;4942:47;;5000:7;:14;;:16;;;;;;;;:::i;:::-;;;;;;;::::0;::::1;5030:5;5023:12;;;;;4691:349:::0;;;;;:::o;8806:1064::-;8880:5;8893:17;8913:19;8924:7;8913:10;:19::i;:::-;8893:39;;;;8967:11;8994:6;8981:10;:19;8967:33;;9118:14;9172:2;9166;9155:6;9142:10;:19;9136:32;;;;9135:39;;;;:::i;:::-;9118:56;;9204:17;9243:6;9230:10;:19;9204:46;;9326:2;9314:8;:14;;;9310:55;;;9353:5;9338:20;;;;9310:55;9426:12;9464:1;9452:8;:13;;;9448:293;;9589:2;9578:5;9562:11;9555:19;;9547:36;9532:5;9518:8;9511:16;;9498:1;:30;;9491:46;;;;:::i;:::-;:93;;;;:::i;:::-;9490:101;;9475:117;;9448:293;;;9731:2;9715:8;9713:10;;;:::i;:::-;9706:18;;9693:1;:32;;9677:5;9668;9652:11;9645:19;;9637:36;9630:52;;;;:::i;:::-;9629:97;;;;:::i;:::-;9628:105;;9613:121;;9448:293;9816:1;9808:4;:9;;;9804:43;;9837:3;9827:13;;;;;:::i;:::-;;;9804:43;9859:6;9852:13;;;;;;;8806:1064;;;:::o;12890:422:31:-;12994:6;13008:17;13028:19;:7;:17;:19::i;:::-;13008:39;;13072:4;13057:11;:19;;;13053:58;;;983:16;13086:18;;;;;13053:58;13116:13;13132:39;13143:7;13166:4;13152:11;:18;13132:10;:39::i;:::-;13116:55;;983:16;13185:20;;:6;:20;;;:55;;;;;13231:9;13209:31;;13225:1;13210:11;:16;;;;13209:31;;;13185:55;13177:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;13301:6;13294:13;;;;12890:422;;;;;:::o;1233:1032:30:-;1316:12;1441:7;:12;;;:19;1430:7;1413;:14;;;:24;;;;:::i;:::-;:47;;;;1405:113;;;;;;;;;;;;:::i;:::-;;;;;;;;;1578:24;1615:7;1605:18;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1578:45;;1696:1;1685:7;:12;;;1681:556;;1707:19;1729:7;:12;;;1707:34;;1749:13;1765:7;:14;;;1749:30;;1841:18;1867:23;1955:6;1950:2;1942:6;1938:15;1934:28;1917:45;;2010:2;1997:11;1993:20;1971:42;;2085:56;2092:18;2112:13;2132:7;2127:13;;2085:6;:56::i;:::-;2202:28;2207:7;2216;2225:4;2202;:28::i;:::-;;1699:538;;;;1681:556;2249:11;2242:18;;;1233:1032;;;;:::o;13561:893:31:-;13646:12;13666:19;13696:12;13691:740;13722:7;13714:15;;:5;:15;;;13691:740;;;13748:11;13762:19;:7;:17;:19::i;:::-;13748:33;;13809:1;13801:4;13793:5;:12;:17;;;13789:588;;13834:4;13826:5;:12;;;13822:547;;;13917:4;13895:19;:7;:17;:19::i;:::-;:26;13878:1;13869:4;13861:5;:12;13860:19;;;;:62;13852:70;;13945:1;13934:12;;;;;:::i;:::-;;;13822:547;;;13975:4;13967:5;:12;;;13963:406;;;14107:4;14085:19;:7;:17;:19::i;:::-;:26;14068:1;14059:4;14037:19;:7;:17;:19::i;:::-;:26;14036:33;;;;14019:2;14010:4;14002:5;:12;14001:20;;;;:68;:111;13993:119;;14135:1;14124:12;;;;;:::i;:::-;;;13963:406;;;14329:4;14307:19;:7;:17;:19::i;:::-;:26;14289:1;14280:4;14258:19;:7;:17;:19::i;:::-;:26;14257:33;;;;14240:2;14231:4;14209:19;:7;:17;:19::i;:::-;:26;14208:34;;;;14191:2;14182:4;14174:5;:12;14173:20;;;;:69;:117;:161;14165:169;;14357:1;14346:12;;;;;:::i;:::-;;;13963:406;13822:547;13789:588;14410:6;14418:5;14393:31;;;;;;;;;:::i;:::-;;;;;;;;;;;;;14384:40;;13740:691;13731:7;;;;;:::i;:::-;;;;13691:740;;;;14443:6;14436:13;;;13561:893;;;;:::o;5279:359:30:-;5408:6;5375:1;5358:7;:14;;;:18;;;;:::i;:::-;5378:7;:12;;;:19;813:6;805:5;:14;;;797:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;5422:23:::1;5448:7;:12;;;5422:38;;5466:13;5482:7;:14;;;5466:30;;5502:12;5576:6;5572:1;5560:10;5556:18;5552:31;5546:38;5537:47;;5613:1;5595:7;:14;;:19;;;;;;;:::i;:::-;;;;;;;;;;;;::::0;::::1;5628:5;5621:12;;;;;5279:359:::0;;;;;:::o;5877:::-;6006:6;5973:1;5956:7;:14;;;:18;;;;:::i;:::-;5976:7;:12;;;:19;813:6;805:5;:14;;;797:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;6020:23:::1;6046:7;:12;;;6020:38;;6064:13;6080:7;:14;;;6064:30;;6100:12;6174:6;6170:1;6158:10;6154:18;6150:31;6144:38;6135:47;;6211:1;6193:7;:14;;:19;;;;;;;:::i;:::-;;;;;;;;;;;;::::0;::::1;6226:5;6219:12;;;;;5877:359:::0;;;;;:::o;6475:::-;6604:6;6571:1;6554:7;:14;;;:18;;;;:::i;:::-;6574:7;:12;;;:19;813:6;805:5;:14;;;797:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;6618:23:::1;6644:7;:12;;;6618:38;;6662:13;6678:7;:14;;;6662:30;;6698:12;6772:6;6768:1;6756:10;6752:18;6748:31;6742:38;6733:47;;6809:1;6791:7;:14;;:19;;;;;;;:::i;:::-;;;;;;;;;;;;::::0;::::1;6824:5;6817:12;;;;;6475:359:::0;;;;;:::o;10360:582::-;10444:1;10437:4;:8;10429:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;10536:135;10551:2;10543:4;:10;10536:135;;10614:4;10608:11;10601:5;10594:26;10644:2;10635:11;;;;;:::i;:::-;;;10662:2;10654:10;;;;;:::i;:::-;;;10563:2;10555:10;;;;;:::i;:::-;;;10536:135;;;10687:1;10680:4;:8;10676:262;;;10728:9;10761:1;10753:4;10748:2;:9;;;;:::i;:::-;10740:3;:18;;;;:::i;:::-;:22;;;;:::i;:::-;10728:34;;10825:4;10821:9;10814:4;10808:11;10804:27;10874:4;10866:5;10860:12;10856:23;10915:7;10905:8;10902:21;10895:5;10888:36;10779:153;;;10676:262;10360:582;;;:::o;3234:532::-;3333:6;3385:9;3381:153;;;3439:7;3412:34;;3422:7;:14;;;3412:7;:24;;;;:::i;:::-;:34;;;3404:90;;;;;;;;;;;;:::i;:::-;;;;;;;;;3513:7;:14;;;3502:25;;;;;:::i;:::-;;;3381:153;3627:7;:12;;;:19;3616:7;:30;;;;3608:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;3727:7;3710;:14;;:24;;;;;;;;;;;3747:7;:14;;;3740:21;;3234:532;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;436:338::-;491:5;540:3;533:4;525:6;521:17;517:27;507:122;;548:79;;:::i;:::-;507:122;665:6;652:20;690:78;764:3;756:6;749:4;741:6;737:17;690:78;:::i;:::-;681:87;;497:277;436:338;;;;:::o;808:743::-;881:5;925:4;913:9;908:3;904:19;900:30;897:117;;;933:79;;:::i;:::-;897:117;1032:21;1048:4;1032:21;:::i;:::-;1023:30;;1140:1;1129:9;1125:17;1112:31;1170:18;1162:6;1159:30;1156:117;;;1192:79;;:::i;:::-;1156:117;1312:58;1366:3;1357:6;1346:9;1342:22;1312:58;:::i;:::-;1305:4;1298:5;1294:16;1287:84;1063:319;1443:2;1484:48;1528:3;1519:6;1508:9;1504:22;1484:48;:::i;:::-;1477:4;1470:5;1466:16;1459:74;1392:152;808:743;;;;:::o;1583:1422::-;1654:5;1698:4;1686:9;1681:3;1677:19;1673:30;1670:117;;;1706:79;;:::i;:::-;1670:117;1805:21;1821:4;1805:21;:::i;:::-;1796:30;;1915:1;1904:9;1900:17;1887:31;1945:18;1937:6;1934:30;1931:117;;;1967:79;;:::i;:::-;1931:117;2087:73;2156:3;2147:6;2136:9;2132:22;2087:73;:::i;:::-;2080:4;2073:5;2069:16;2062:99;1836:336;2238:2;2279:47;2322:3;2313:6;2302:9;2298:22;2279:47;:::i;:::-;2272:4;2265:5;2261:16;2254:73;2182:156;2402:2;2443:47;2486:3;2477:6;2466:9;2462:22;2443:47;:::i;:::-;2436:4;2429:5;2425:16;2418:73;2348:154;2578:2;2619:47;2662:3;2653:6;2642:9;2638:22;2619:47;:::i;:::-;2612:4;2605:5;2601:16;2594:73;2512:166;2736:3;2778:48;2822:3;2813:6;2802:9;2798:22;2778:48;:::i;:::-;2771:4;2764:5;2760:16;2753:74;2688:150;2896:3;2938:48;2982:3;2973:6;2962:9;2958:22;2938:48;:::i;:::-;2931:4;2924:5;2920:16;2913:74;2848:150;1583:1422;;;;:::o;3011:137::-;3056:5;3094:6;3081:20;3072:29;;3110:32;3136:5;3110:32;:::i;:::-;3011:137;;;;:::o;3154:::-;3199:5;3237:6;3224:20;3215:29;;3253:32;3279:5;3253:32;:::i;:::-;3154:137;;;;:::o;3297:135::-;3341:5;3379:6;3366:20;3357:29;;3395:31;3420:5;3395:31;:::i;:::-;3297:135;;;;:::o;3438:507::-;3506:6;3555:2;3543:9;3534:7;3530:23;3526:32;3523:119;;;3561:79;;:::i;:::-;3523:119;3709:1;3698:9;3694:17;3681:31;3739:18;3731:6;3728:30;3725:117;;;3761:79;;:::i;:::-;3725:117;3866:62;3920:7;3911:6;3900:9;3896:22;3866:62;:::i;:::-;3856:72;;3652:286;3438:507;;;;:::o;3951:537::-;4034:6;4083:2;4071:9;4062:7;4058:23;4054:32;4051:119;;;4089:79;;:::i;:::-;4051:119;4237:1;4226:9;4222:17;4209:31;4267:18;4259:6;4256:30;4253:117;;;4289:79;;:::i;:::-;4253:117;4394:77;4463:7;4454:6;4443:9;4439:22;4394:77;:::i;:::-;4384:87;;4180:301;3951:537;;;;:::o;4494:533::-;4575:6;4624:2;4612:9;4603:7;4599:23;4595:32;4592:119;;;4630:79;;:::i;:::-;4592:119;4778:1;4767:9;4763:17;4750:31;4808:18;4800:6;4797:30;4794:117;;;4830:79;;:::i;:::-;4794:117;4935:75;5002:7;4993:6;4982:9;4978:22;4935:75;:::i;:::-;4925:85;;4721:299;4494:533;;;;:::o;5033:191::-;5108:10;5129:52;5177:3;5169:6;5129:52;:::i;:::-;5213:4;5208:3;5204:14;5190:28;;5033:191;;;;:::o;5230:187::-;5303:10;5324:50;5370:3;5362:6;5324:50;:::i;:::-;5406:4;5401:3;5397:14;5383:28;;5230:187;;;;:::o;5423:212::-;5520:10;5555:74;5625:3;5617:6;5555:74;:::i;:::-;5541:88;;5423:212;;;;:::o;5641:191::-;5716:10;5737:52;5785:3;5777:6;5737:52;:::i;:::-;5821:4;5816:3;5812:14;5798:28;;5641:191;;;;:::o;5866:748::-;5991:3;6020:53;6067:5;6020:53;:::i;:::-;6089:93;6175:6;6170:3;6089:93;:::i;:::-;6082:100;;6206:55;6255:5;6206:55;:::i;:::-;6284:7;6315:1;6300:289;6325:6;6322:1;6319:13;6300:289;;;6401:6;6395:13;6428:69;6493:3;6478:13;6428:69;:::i;:::-;6421:76;;6520:59;6572:6;6520:59;:::i;:::-;6510:69;;6360:229;6347:1;6344;6340:9;6335:14;;6300:289;;;6304:14;6605:3;6598:10;;5996:618;;;5866:748;;;;:::o;6646:740::-;6769:3;6798:52;6844:5;6798:52;:::i;:::-;6866:92;6951:6;6946:3;6866:92;:::i;:::-;6859:99;;6982:54;7030:5;6982:54;:::i;:::-;7059:7;7090:1;7075:286;7100:6;7097:1;7094:13;7075:286;;;7176:6;7170:13;7203:67;7266:3;7251:13;7203:67;:::i;:::-;7196:74;;7293:58;7344:6;7293:58;:::i;:::-;7283:68;;7135:226;7122:1;7119;7115:9;7110:14;;7075:286;;;7079:14;7377:3;7370:10;;6774:612;;;6646:740;;;;:::o;7420:1015::-;7567:3;7596:64;7654:5;7596:64;:::i;:::-;7676:104;7773:6;7768:3;7676:104;:::i;:::-;7669:111;;7806:3;7851:4;7843:6;7839:17;7834:3;7830:27;7881:66;7941:5;7881:66;:::i;:::-;7970:7;8001:1;7986:404;8011:6;8008:1;8005:13;7986:404;;;8082:9;8076:4;8072:20;8067:3;8060:33;8133:6;8127:13;8161:92;8248:4;8233:13;8161:92;:::i;:::-;8153:100;;8276:70;8339:6;8276:70;:::i;:::-;8266:80;;8375:4;8370:3;8366:14;8359:21;;8046:344;8033:1;8030;8026:9;8021:14;;7986:404;;;7990:14;8406:4;8399:11;;8426:3;8419:10;;7572:863;;;;;7420:1015;;;;:::o;8469:748::-;8594:3;8623:53;8670:5;8623:53;:::i;:::-;8692:93;8778:6;8773:3;8692:93;:::i;:::-;8685:100;;8809:55;8858:5;8809:55;:::i;:::-;8887:7;8918:1;8903:289;8928:6;8925:1;8922:13;8903:289;;;9004:6;8998:13;9031:69;9096:3;9081:13;9031:69;:::i;:::-;9024:76;;9123:59;9175:6;9123:59;:::i;:::-;9113:69;;8963:229;8950:1;8947;8943:9;8938:14;;8903:289;;;8907:14;9208:3;9201:10;;8599:618;;;8469:748;;;;:::o;9223:117::-;9312:21;9327:5;9312:21;:::i;:::-;9307:3;9300:34;9223:117;;:::o;9346:126::-;9441:24;9459:5;9441:24;:::i;:::-;9436:3;9429:37;9346:126;;:::o;9478:376::-;9572:3;9600:38;9632:5;9600:38;:::i;:::-;9654:78;9725:6;9720:3;9654:78;:::i;:::-;9647:85;;9741:52;9786:6;9781:3;9774:4;9767:5;9763:16;9741:52;:::i;:::-;9818:29;9840:6;9818:29;:::i;:::-;9813:3;9809:39;9802:46;;9576:278;9478:376;;;;:::o;9860:356::-;9944:3;9972:38;10004:5;9972:38;:::i;:::-;10026:68;10087:6;10082:3;10026:68;:::i;:::-;10019:75;;10103:52;10148:6;10143:3;10136:4;10129:5;10125:16;10103:52;:::i;:::-;10180:29;10202:6;10180:29;:::i;:::-;10175:3;10171:39;10164:46;;9948:268;9860:356;;;;:::o;10222:373::-;10326:3;10354:38;10386:5;10354:38;:::i;:::-;10408:88;10489:6;10484:3;10408:88;:::i;:::-;10401:95;;10505:52;10550:6;10545:3;10538:4;10531:5;10527:16;10505:52;:::i;:::-;10582:6;10577:3;10573:16;10566:23;;10330:265;10222:373;;;;:::o;10601:123::-;10694:23;10711:5;10694:23;:::i;:::-;10689:3;10682:36;10601:123;;:::o;10730:113::-;10813:23;10830:5;10813:23;:::i;:::-;10808:3;10801:36;10730:113;;:::o;10849:120::-;10940:22;10956:5;10940:22;:::i;:::-;10935:3;10928:35;10849:120;;:::o;10975:110::-;11056:22;11072:5;11056:22;:::i;:::-;11051:3;11044:35;10975:110;;:::o;11091:380::-;11187:3;11215:39;11248:5;11215:39;:::i;:::-;11270:79;11342:6;11337:3;11270:79;:::i;:::-;11263:86;;11358:52;11403:6;11398:3;11391:4;11384:5;11380:16;11358:52;:::i;:::-;11435:29;11457:6;11435:29;:::i;:::-;11430:3;11426:39;11419:46;;11191:280;11091:380;;;;:::o;11477:360::-;11563:3;11591:39;11624:5;11591:39;:::i;:::-;11646:69;11708:6;11703:3;11646:69;:::i;:::-;11639:76;;11724:52;11769:6;11764:3;11757:4;11750:5;11746:16;11724:52;:::i;:::-;11801:29;11823:6;11801:29;:::i;:::-;11796:3;11792:39;11785:46;;11567:270;11477:360;;;;:::o;11843:366::-;11985:3;12006:67;12070:2;12065:3;12006:67;:::i;:::-;11999:74;;12082:93;12171:3;12082:93;:::i;:::-;12200:2;12195:3;12191:12;12184:19;;11843:366;;;:::o;12215:::-;12357:3;12378:67;12442:2;12437:3;12378:67;:::i;:::-;12371:74;;12454:93;12543:3;12454:93;:::i;:::-;12572:2;12567:3;12563:12;12556:19;;12215:366;;;:::o;12587:::-;12729:3;12750:67;12814:2;12809:3;12750:67;:::i;:::-;12743:74;;12826:93;12915:3;12826:93;:::i;:::-;12944:2;12939:3;12935:12;12928:19;;12587:366;;;:::o;12959:::-;13101:3;13122:67;13186:2;13181:3;13122:67;:::i;:::-;13115:74;;13198:93;13287:3;13198:93;:::i;:::-;13316:2;13311:3;13307:12;13300:19;;12959:366;;;:::o;13331:::-;13473:3;13494:67;13558:2;13553:3;13494:67;:::i;:::-;13487:74;;13570:93;13659:3;13570:93;:::i;:::-;13688:2;13683:3;13679:12;13672:19;;13331:366;;;:::o;13703:::-;13845:3;13866:67;13930:2;13925:3;13866:67;:::i;:::-;13859:74;;13942:93;14031:3;13942:93;:::i;:::-;14060:2;14055:3;14051:12;14044:19;;13703:366;;;:::o;14075:::-;14217:3;14238:67;14302:2;14297:3;14238:67;:::i;:::-;14231:74;;14314:93;14403:3;14314:93;:::i;:::-;14432:2;14427:3;14423:12;14416:19;;14075:366;;;:::o;14447:::-;14589:3;14610:67;14674:2;14669:3;14610:67;:::i;:::-;14603:74;;14686:93;14775:3;14686:93;:::i;:::-;14804:2;14799:3;14795:12;14788:19;;14447:366;;;:::o;14819:::-;14961:3;14982:67;15046:2;15041:3;14982:67;:::i;:::-;14975:74;;15058:93;15147:3;15058:93;:::i;:::-;15176:2;15171:3;15167:12;15160:19;;14819:366;;;:::o;15191:::-;15333:3;15354:67;15418:2;15413:3;15354:67;:::i;:::-;15347:74;;15430:93;15519:3;15430:93;:::i;:::-;15548:2;15543:3;15539:12;15532:19;;15191:366;;;:::o;15563:::-;15705:3;15726:67;15790:2;15785:3;15726:67;:::i;:::-;15719:74;;15802:93;15891:3;15802:93;:::i;:::-;15920:2;15915:3;15911:12;15904:19;;15563:366;;;:::o;15935:::-;16077:3;16098:67;16162:2;16157:3;16098:67;:::i;:::-;16091:74;;16174:93;16263:3;16174:93;:::i;:::-;16292:2;16287:3;16283:12;16276:19;;15935:366;;;:::o;16307:::-;16449:3;16470:67;16534:2;16529:3;16470:67;:::i;:::-;16463:74;;16546:93;16635:3;16546:93;:::i;:::-;16664:2;16659:3;16655:12;16648:19;;16307:366;;;:::o;16679:::-;16821:3;16842:67;16906:2;16901:3;16842:67;:::i;:::-;16835:74;;16918:93;17007:3;16918:93;:::i;:::-;17036:2;17031:3;17027:12;17020:19;;16679:366;;;:::o;17051:::-;17193:3;17214:67;17278:2;17273:3;17214:67;:::i;:::-;17207:74;;17290:93;17379:3;17290:93;:::i;:::-;17408:2;17403:3;17399:12;17392:19;;17051:366;;;:::o;17423:::-;17565:3;17586:67;17650:2;17645:3;17586:67;:::i;:::-;17579:74;;17662:93;17751:3;17662:93;:::i;:::-;17780:2;17775:3;17771:12;17764:19;;17423:366;;;:::o;17795:::-;17937:3;17958:67;18022:2;18017:3;17958:67;:::i;:::-;17951:74;;18034:93;18123:3;18034:93;:::i;:::-;18152:2;18147:3;18143:12;18136:19;;17795:366;;;:::o;18167:::-;18309:3;18330:67;18394:2;18389:3;18330:67;:::i;:::-;18323:74;;18406:93;18495:3;18406:93;:::i;:::-;18524:2;18519:3;18515:12;18508:19;;18167:366;;;:::o;18539:::-;18681:3;18702:67;18766:2;18761:3;18702:67;:::i;:::-;18695:74;;18778:93;18867:3;18778:93;:::i;:::-;18896:2;18891:3;18887:12;18880:19;;18539:366;;;:::o;18963:616::-;19078:3;19114:4;19109:3;19105:14;19201:4;19194:5;19190:16;19184:23;19254:3;19248:4;19244:14;19237:4;19232:3;19228:14;19221:38;19280:79;19354:4;19340:12;19280:79;:::i;:::-;19272:87;;19129:241;19454:4;19447:5;19443:16;19437:23;19473:69;19536:4;19531:3;19527:14;19513:12;19473:69;:::i;:::-;19380:172;19569:4;19562:11;;19083:496;18963:616;;;;:::o;19633:1393::-;19754:3;19790:4;19785:3;19781:14;19879:4;19872:5;19868:16;19862:23;19932:3;19926:4;19922:14;19915:4;19910:3;19906:14;19899:38;19958:109;20062:4;20048:12;19958:109;:::i;:::-;19950:117;;19805:273;20167:4;20160:5;20156:16;20150:23;20186:67;20247:4;20242:3;20238:14;20224:12;20186:67;:::i;:::-;20088:175;20350:4;20343:5;20339:16;20333:23;20369:67;20430:4;20425:3;20421:14;20407:12;20369:67;:::i;:::-;20273:173;20545:4;20538:5;20534:16;20528:23;20564:67;20625:4;20620:3;20616:14;20602:12;20564:67;:::i;:::-;20456:185;20722:4;20715:5;20711:16;20705:23;20741:69;20804:4;20799:3;20795:14;20781:12;20741:69;:::i;:::-;20651:169;20901:4;20894:5;20890:16;20884:23;20920:69;20983:4;20978:3;20974:14;20960:12;20920:69;:::i;:::-;20830:169;21016:4;21009:11;;19759:1267;19633:1393;;;;:::o;21032:113::-;21115:23;21132:5;21115:23;:::i;:::-;21110:3;21103:36;21032:113;;:::o;21151:123::-;21244:23;21261:5;21244:23;:::i;:::-;21239:3;21232:36;21151:123;;:::o;21280:113::-;21363:23;21380:5;21363:23;:::i;:::-;21358:3;21351:36;21280:113;;:::o;21399:110::-;21480:22;21496:5;21480:22;:::i;:::-;21475:3;21468:35;21399:110;;:::o;21515:149::-;21616:41;21634:22;21650:5;21634:22;:::i;:::-;21616:41;:::i;:::-;21611:3;21604:54;21515:149;;:::o;21670:427::-;21846:3;21868:93;21957:3;21948:6;21868:93;:::i;:::-;21861:100;;21978:93;22067:3;22058:6;21978:93;:::i;:::-;21971:100;;22088:3;22081:10;;21670:427;;;;;:::o;22103:403::-;22257:3;22279:93;22368:3;22359:6;22279:93;:::i;:::-;22272:100;;22382:71;22449:3;22440:6;22382:71;:::i;:::-;22478:1;22473:3;22469:11;22462:18;;22497:3;22490:10;;22103:403;;;;;:::o;22512:385::-;22661:4;22699:2;22688:9;22684:18;22676:26;;22748:9;22742:4;22738:20;22734:1;22723:9;22719:17;22712:47;22776:114;22885:4;22876:6;22776:114;:::i;:::-;22768:122;;22512:385;;;;:::o;22903:381::-;23050:4;23088:2;23077:9;23073:18;23065:26;;23137:9;23131:4;23127:20;23123:1;23112:9;23108:17;23101:47;23165:112;23272:4;23263:6;23165:112;:::i;:::-;23157:120;;22903:381;;;;:::o;23290:429::-;23461:4;23499:2;23488:9;23484:18;23476:26;;23548:9;23542:4;23538:20;23534:1;23523:9;23519:17;23512:47;23576:136;23707:4;23698:6;23576:136;:::i;:::-;23568:144;;23290:429;;;;:::o;23725:385::-;23874:4;23912:2;23901:9;23897:18;23889:26;;23961:9;23955:4;23951:20;23947:1;23936:9;23932:17;23925:47;23989:114;24098:4;24089:6;23989:114;:::i;:::-;23981:122;;23725:385;;;;:::o;24116:226::-;24211:4;24249:2;24238:9;24234:18;24226:26;;24262:73;24332:1;24321:9;24317:17;24308:6;24262:73;:::i;:::-;24116:226;;;;:::o;24348:238::-;24449:4;24487:2;24476:9;24472:18;24464:26;;24500:79;24576:1;24565:9;24561:17;24552:6;24500:79;:::i;:::-;24348:238;;;;:::o;24592:325::-;24711:4;24749:2;24738:9;24734:18;24726:26;;24798:9;24792:4;24788:20;24784:1;24773:9;24769:17;24762:47;24826:84;24905:4;24896:6;24826:84;:::i;:::-;24818:92;;24592:325;;;;:::o;24923:234::-;25022:4;25060:2;25049:9;25045:18;25037:26;;25073:77;25147:1;25136:9;25132:17;25123:6;25073:77;:::i;:::-;24923:234;;;;:::o;25163:230::-;25260:4;25298:2;25287:9;25283:18;25275:26;;25311:75;25383:1;25372:9;25368:17;25359:6;25311:75;:::i;:::-;25163:230;;;;:::o;25399:329::-;25520:4;25558:2;25547:9;25543:18;25535:26;;25607:9;25601:4;25597:20;25593:1;25582:9;25578:17;25571:47;25635:86;25716:4;25707:6;25635:86;:::i;:::-;25627:94;;25399:329;;;;:::o;25734:419::-;25900:4;25938:2;25927:9;25923:18;25915:26;;25987:9;25981:4;25977:20;25973:1;25962:9;25958:17;25951:47;26015:131;26141:4;26015:131;:::i;:::-;26007:139;;25734:419;;;:::o;26159:::-;26325:4;26363:2;26352:9;26348:18;26340:26;;26412:9;26406:4;26402:20;26398:1;26387:9;26383:17;26376:47;26440:131;26566:4;26440:131;:::i;:::-;26432:139;;26159:419;;;:::o;26584:::-;26750:4;26788:2;26777:9;26773:18;26765:26;;26837:9;26831:4;26827:20;26823:1;26812:9;26808:17;26801:47;26865:131;26991:4;26865:131;:::i;:::-;26857:139;;26584:419;;;:::o;27009:::-;27175:4;27213:2;27202:9;27198:18;27190:26;;27262:9;27256:4;27252:20;27248:1;27237:9;27233:17;27226:47;27290:131;27416:4;27290:131;:::i;:::-;27282:139;;27009:419;;;:::o;27434:::-;27600:4;27638:2;27627:9;27623:18;27615:26;;27687:9;27681:4;27677:20;27673:1;27662:9;27658:17;27651:47;27715:131;27841:4;27715:131;:::i;:::-;27707:139;;27434:419;;;:::o;27859:::-;28025:4;28063:2;28052:9;28048:18;28040:26;;28112:9;28106:4;28102:20;28098:1;28087:9;28083:17;28076:47;28140:131;28266:4;28140:131;:::i;:::-;28132:139;;27859:419;;;:::o;28284:::-;28450:4;28488:2;28477:9;28473:18;28465:26;;28537:9;28531:4;28527:20;28523:1;28512:9;28508:17;28501:47;28565:131;28691:4;28565:131;:::i;:::-;28557:139;;28284:419;;;:::o;28709:::-;28875:4;28913:2;28902:9;28898:18;28890:26;;28962:9;28956:4;28952:20;28948:1;28937:9;28933:17;28926:47;28990:131;29116:4;28990:131;:::i;:::-;28982:139;;28709:419;;;:::o;29134:::-;29300:4;29338:2;29327:9;29323:18;29315:26;;29387:9;29381:4;29377:20;29373:1;29362:9;29358:17;29351:47;29415:131;29541:4;29415:131;:::i;:::-;29407:139;;29134:419;;;:::o;29559:::-;29725:4;29763:2;29752:9;29748:18;29740:26;;29812:9;29806:4;29802:20;29798:1;29787:9;29783:17;29776:47;29840:131;29966:4;29840:131;:::i;:::-;29832:139;;29559:419;;;:::o;29984:::-;30150:4;30188:2;30177:9;30173:18;30165:26;;30237:9;30231:4;30227:20;30223:1;30212:9;30208:17;30201:47;30265:131;30391:4;30265:131;:::i;:::-;30257:139;;29984:419;;;:::o;30409:::-;30575:4;30613:2;30602:9;30598:18;30590:26;;30662:9;30656:4;30652:20;30648:1;30637:9;30633:17;30626:47;30690:131;30816:4;30690:131;:::i;:::-;30682:139;;30409:419;;;:::o;30834:::-;31000:4;31038:2;31027:9;31023:18;31015:26;;31087:9;31081:4;31077:20;31073:1;31062:9;31058:17;31051:47;31115:131;31241:4;31115:131;:::i;:::-;31107:139;;30834:419;;;:::o;31259:::-;31425:4;31463:2;31452:9;31448:18;31440:26;;31512:9;31506:4;31502:20;31498:1;31487:9;31483:17;31476:47;31540:131;31666:4;31540:131;:::i;:::-;31532:139;;31259:419;;;:::o;31684:::-;31850:4;31888:2;31877:9;31873:18;31865:26;;31937:9;31931:4;31927:20;31923:1;31912:9;31908:17;31901:47;31965:131;32091:4;31965:131;:::i;:::-;31957:139;;31684:419;;;:::o;32109:::-;32275:4;32313:2;32302:9;32298:18;32290:26;;32362:9;32356:4;32352:20;32348:1;32337:9;32333:17;32326:47;32390:131;32516:4;32390:131;:::i;:::-;32382:139;;32109:419;;;:::o;32534:::-;32700:4;32738:2;32727:9;32723:18;32715:26;;32787:9;32781:4;32777:20;32773:1;32762:9;32758:17;32751:47;32815:131;32941:4;32815:131;:::i;:::-;32807:139;;32534:419;;;:::o;32959:::-;33125:4;33163:2;33152:9;33148:18;33140:26;;33212:9;33206:4;33202:20;33198:1;33187:9;33183:17;33176:47;33240:131;33366:4;33240:131;:::i;:::-;33232:139;;32959:419;;;:::o;33384:::-;33550:4;33588:2;33577:9;33573:18;33565:26;;33637:9;33631:4;33627:20;33623:1;33612:9;33608:17;33601:47;33665:131;33791:4;33665:131;:::i;:::-;33657:139;;33384:419;;;:::o;33809:377::-;33954:4;33992:2;33981:9;33977:18;33969:26;;34041:9;34035:4;34031:20;34027:1;34016:9;34012:17;34005:47;34069:110;34174:4;34165:6;34069:110;:::i;:::-;34061:118;;33809:377;;;;:::o;34192:234::-;34291:4;34329:2;34318:9;34314:18;34306:26;;34342:77;34416:1;34405:9;34401:17;34392:6;34342:77;:::i;:::-;34192:234;;;;:::o;34432:129::-;34466:6;34493:20;;:::i;:::-;34483:30;;34522:33;34550:4;34542:6;34522:33;:::i;:::-;34432:129;;;:::o;34567:75::-;34600:6;34633:2;34627:9;34617:19;;34567:75;:::o;34648:307::-;34709:4;34799:18;34791:6;34788:30;34785:56;;;34821:18;;:::i;:::-;34785:56;34859:29;34881:6;34859:29;:::i;:::-;34851:37;;34943:4;34937;34933:15;34925:23;;34648:307;;;:::o;34961:131::-;35027:4;35050:3;35042:11;;35080:4;35075:3;35071:14;35063:22;;34961:131;;;:::o;35098:130::-;35163:4;35186:3;35178:11;;35216:4;35211:3;35207:14;35199:22;;35098:130;;;:::o;35234:142::-;35311:4;35334:3;35326:11;;35364:4;35359:3;35355:14;35347:22;;35234:142;;;:::o;35382:131::-;35448:4;35471:3;35463:11;;35501:4;35496:3;35492:14;35484:22;;35382:131;;;:::o;35519:113::-;35585:6;35619:5;35613:12;35603:22;;35519:113;;;:::o;35638:112::-;35703:6;35737:5;35731:12;35721:22;;35638:112;;;:::o;35756:124::-;35833:6;35867:5;35861:12;35851:22;;35756:124;;;:::o;35886:113::-;35952:6;35986:5;35980:12;35970:22;;35886:113;;;:::o;36005:98::-;36056:6;36090:5;36084:12;36074:22;;36005:98;;;:::o;36109:99::-;36161:6;36195:5;36189:12;36179:22;;36109:99;;;:::o;36214:112::-;36283:4;36315;36310:3;36306:14;36298:22;;36214:112;;;:::o;36332:111::-;36400:4;36432;36427:3;36423:14;36415:22;;36332:111;;;:::o;36449:123::-;36529:4;36561;36556:3;36552:14;36544:22;;36449:123;;;:::o;36578:112::-;36647:4;36679;36674:3;36670:14;36662:22;;36578:112;;;:::o;36696:191::-;36802:11;36836:6;36831:3;36824:19;36876:4;36871:3;36867:14;36852:29;;36696:191;;;;:::o;36893:190::-;36998:11;37032:6;37027:3;37020:19;37072:4;37067:3;37063:14;37048:29;;36893:190;;;;:::o;37089:202::-;37206:11;37240:6;37235:3;37228:19;37280:4;37275:3;37271:14;37256:29;;37089:202;;;;:::o;37297:191::-;37403:11;37437:6;37432:3;37425:19;37477:4;37472:3;37468:14;37453:29;;37297:191;;;;:::o;37494:176::-;37585:11;37619:6;37614:3;37607:19;37659:4;37654:3;37650:14;37635:29;;37494:176;;;;:::o;37676:166::-;37757:11;37791:6;37786:3;37779:19;37831:4;37826:3;37822:14;37807:29;;37676:166;;;;:::o;37848:147::-;37949:11;37986:3;37971:18;;37848:147;;;;:::o;38001:169::-;38085:11;38119:6;38114:3;38107:19;38159:4;38154:3;38150:14;38135:29;;38001:169;;;;:::o;38176:177::-;38268:11;38302:6;38297:3;38290:19;38342:4;38337:3;38333:14;38318:29;;38176:177;;;;:::o;38359:167::-;38441:11;38475:6;38470:3;38463:19;38515:4;38510:3;38506:14;38491:29;;38359:167;;;;:::o;38532:305::-;38572:3;38591:20;38609:1;38591:20;:::i;:::-;38586:25;;38625:20;38643:1;38625:20;:::i;:::-;38620:25;;38779:1;38711:66;38707:74;38704:1;38701:81;38698:107;;;38785:18;;:::i;:::-;38698:107;38829:1;38826;38822:9;38815:16;;38532:305;;;;:::o;38843:246::-;38882:3;38901:19;38918:1;38901:19;:::i;:::-;38896:24;;38934:19;38951:1;38934:19;:::i;:::-;38929:24;;39031:1;39019:10;39015:18;39012:1;39009:25;39006:51;;;39037:18;;:::i;:::-;39006:51;39081:1;39078;39074:9;39067:16;;38843:246;;;;:::o;39095:385::-;39134:1;39151:19;39168:1;39151:19;:::i;:::-;39146:24;;39184:19;39201:1;39184:19;:::i;:::-;39179:24;;39222:1;39212:35;;39227:18;;:::i;:::-;39212:35;39413:1;39410;39406:9;39403:1;39400:16;39319:66;39316:1;39313:73;39296:130;39293:156;;;39429:18;;:::i;:::-;39293:156;39472:1;39469;39464:10;39459:15;;39095:385;;;;:::o;39486:182::-;39525:1;39542:19;39559:1;39542:19;:::i;:::-;39537:24;;39575:19;39592:1;39575:19;:::i;:::-;39570:24;;39613:1;39603:35;;39618:18;;:::i;:::-;39603:35;39660:1;39657;39653:9;39648:14;;39486:182;;;;:::o;39674:848::-;39735:5;39742:4;39766:6;39757:15;;39790:5;39781:14;;39804:712;39825:1;39815:8;39812:15;39804:712;;;39920:4;39915:3;39911:14;39905:4;39902:24;39899:50;;;39929:18;;:::i;:::-;39899:50;39979:1;39969:8;39965:16;39962:451;;;40394:4;40387:5;40383:16;40374:25;;39962:451;40444:4;40438;40434:15;40426:23;;40474:32;40497:8;40474:32;:::i;:::-;40462:44;;39804:712;;;39674:848;;;;;;;:::o;40528:285::-;40588:5;40612:23;40630:4;40612:23;:::i;:::-;40604:31;;40656:27;40674:8;40656:27;:::i;:::-;40644:39;;40702:104;40739:66;40729:8;40723:4;40702:104;:::i;:::-;40693:113;;40528:285;;;;:::o;40819:1073::-;40873:5;41064:8;41054:40;;41085:1;41076:10;;41087:5;;41054:40;41113:4;41103:36;;41130:1;41121:10;;41132:5;;41103:36;41199:4;41247:1;41242:27;;;;41283:1;41278:191;;;;41192:277;;41242:27;41260:1;41251:10;;41262:5;;;41278:191;41323:3;41313:8;41310:17;41307:43;;;41330:18;;:::i;:::-;41307:43;41379:8;41376:1;41372:16;41363:25;;41414:3;41407:5;41404:14;41401:40;;;41421:18;;:::i;:::-;41401:40;41454:5;;;41192:277;;41578:2;41568:8;41565:16;41559:3;41553:4;41550:13;41546:36;41528:2;41518:8;41515:16;41510:2;41504:4;41501:12;41497:35;41481:111;41478:246;;;41634:8;41628:4;41624:19;41615:28;;41669:3;41662:5;41659:14;41656:40;;;41676:18;;:::i;:::-;41656:40;41709:5;;41478:246;41749:42;41787:3;41777:8;41771:4;41768:1;41749:42;:::i;:::-;41734:57;;;;41823:4;41818:3;41814:14;41807:5;41804:25;41801:51;;;41832:18;;:::i;:::-;41801:51;41881:4;41874:5;41870:16;41861:25;;40819:1073;;;;;;:::o;41898:991::-;41937:7;41960:19;41977:1;41960:19;:::i;:::-;41955:24;;41993:19;42010:1;41993:19;:::i;:::-;41988:24;;42194:1;42126:66;42122:74;42119:1;42116:81;42111:1;42108;42104:9;42100:1;42097;42093:9;42089:25;42085:113;42082:139;;;42201:18;;:::i;:::-;42082:139;42405:1;42337:66;42332:75;42329:1;42325:83;42320:1;42317;42313:9;42309:1;42306;42302:9;42298:25;42294:115;42291:141;;;42412:18;;:::i;:::-;42291:141;42616:1;42548:66;42543:75;42540:1;42536:83;42531:1;42528;42524:9;42520:1;42517;42513:9;42509:25;42505:115;42502:141;;;42623:18;;:::i;:::-;42502:141;42826:1;42758:66;42753:75;42750:1;42746:83;42741:1;42738;42734:9;42730:1;42727;42723:9;42719:25;42715:115;42712:141;;;42833:18;;:::i;:::-;42712:141;42881:1;42878;42874:9;42863:20;;41898:991;;;;:::o;42895:876::-;42933:7;42956:18;42972:1;42956:18;:::i;:::-;42951:23;;42988:18;43004:1;42988:18;:::i;:::-;42983:23;;43132:1;43120:10;43116:18;43113:1;43110:25;43105:1;43102;43098:9;43094:1;43091;43087:9;43083:25;43079:57;43076:83;;;43139:18;;:::i;:::-;43076:83;43343:1;43275:66;43270:75;43267:1;43263:83;43258:1;43255;43251:9;43247:1;43244;43240:9;43236:25;43232:115;43229:141;;;43350:18;;:::i;:::-;43229:141;43554:1;43486:66;43481:75;43478:1;43474:83;43469:1;43466;43462:9;43458:1;43455;43451:9;43447:25;43443:115;43440:141;;;43561:18;;:::i;:::-;43440:141;43708:1;43696:10;43691:19;43688:1;43684:27;43679:1;43676;43672:9;43668:1;43665;43661:9;43657:25;43653:59;43650:85;;;43715:18;;:::i;:::-;43650:85;43763:1;43760;43756:9;43745:20;;42895:876;;;;:::o;43777:348::-;43817:7;43840:20;43858:1;43840:20;:::i;:::-;43835:25;;43874:20;43892:1;43874:20;:::i;:::-;43869:25;;44062:1;43994:66;43990:74;43987:1;43984:81;43979:1;43972:9;43965:17;43961:105;43958:131;;;44069:18;;:::i;:::-;43958:131;44117:1;44114;44110:9;44099:20;;43777:348;;;;:::o;44131:495::-;44170:4;44190:19;44207:1;44190:19;:::i;:::-;44185:24;;44223:19;44240:1;44223:19;:::i;:::-;44218:24;;44412:1;44344:66;44340:74;44337:1;44333:82;44328:1;44325;44321:9;44314:17;44310:106;44307:132;;;44419:18;;:::i;:::-;44307:132;44566:1;44530:34;44526:42;44523:1;44519:50;44515:1;44512;44508:9;44504:66;44501:92;;;44573:18;;:::i;:::-;44501:92;44618:1;44615;44611:9;44603:17;;44131:495;;;;:::o;44632:468::-;44670:4;44690:18;44706:1;44690:18;:::i;:::-;44685:23;;44722:18;44738:1;44722:18;:::i;:::-;44717:23;;44910:1;44842:66;44838:74;44835:1;44831:82;44826:1;44823;44819:9;44812:17;44808:106;44805:132;;;44917:18;;:::i;:::-;44805:132;45040:1;45028:10;45024:18;45021:1;45017:26;45013:1;45010;45006:9;45002:42;44999:68;;;45047:18;;:::i;:::-;44999:68;45092:1;45089;45085:9;45077:17;;44632:468;;;;:::o;45106:191::-;45146:4;45166:20;45184:1;45166:20;:::i;:::-;45161:25;;45200:20;45218:1;45200:20;:::i;:::-;45195:25;;45239:1;45236;45233:8;45230:34;;;45244:18;;:::i;:::-;45230:34;45289:1;45286;45282:9;45274:17;;45106:191;;;;:::o;45303:188::-;45342:4;45362:19;45379:1;45362:19;:::i;:::-;45357:24;;45395:19;45412:1;45395:19;:::i;:::-;45390:24;;45433:1;45430;45427:8;45424:34;;;45438:18;;:::i;:::-;45424:34;45483:1;45480;45476:9;45468:17;;45303:188;;;;:::o;45497:90::-;45531:7;45574:5;45567:13;45560:21;45549:32;;45497:90;;;:::o;45593:77::-;45630:7;45659:5;45648:16;;45593:77;;;:::o;45676:92::-;45712:7;45756:5;45752:2;45741:21;45730:32;;45676:92;;;:::o;45774:76::-;45810:7;45839:5;45828:16;;45774:76;;;:::o;45856:90::-;45891:7;45934:5;45931:1;45920:20;45909:31;;45856:90;;;:::o;45952:77::-;45989:7;46018:5;46007:16;;45952:77;;;:::o;46035:93::-;46071:7;46111:10;46104:5;46100:22;46089:33;;46035:93;;;:::o;46134:101::-;46170:7;46210:18;46203:5;46199:30;46188:41;;46134:101;;;:::o;46241:86::-;46276:7;46316:4;46309:5;46305:16;46294:27;;46241:86;;;:::o;46333:154::-;46417:6;46412:3;46407;46394:30;46479:1;46470:6;46465:3;46461:16;46454:27;46333:154;;;:::o;46493:307::-;46561:1;46571:113;46585:6;46582:1;46579:13;46571:113;;;46670:1;46665:3;46661:11;46655:18;46651:1;46646:3;46642:11;46635:39;46607:2;46604:1;46600:10;46595:15;;46571:113;;;46702:6;46699:1;46696:13;46693:101;;;46782:1;46773:6;46768:3;46764:16;46757:27;46693:101;46542:258;46493:307;;;:::o;46806:281::-;46889:27;46911:4;46889:27;:::i;:::-;46881:6;46877:40;47019:6;47007:10;47004:22;46983:18;46971:10;46968:34;46965:62;46962:88;;;47030:18;;:::i;:::-;46962:88;47070:10;47066:2;47059:22;46849:238;46806:281;;:::o;47093:233::-;47132:3;47155:24;47173:5;47155:24;:::i;:::-;47146:33;;47201:66;47194:5;47191:77;47188:103;;;47271:18;;:::i;:::-;47188:103;47318:1;47311:5;47307:13;47300:20;;47093:233;;;:::o;47332:175::-;47370:3;47393:23;47410:5;47393:23;:::i;:::-;47384:32;;47438:10;47431:5;47428:21;47425:47;;;47452:18;;:::i;:::-;47425:47;47499:1;47492:5;47488:13;47481:20;;47332:175;;;:::o;47513:183::-;47551:3;47574:23;47591:5;47574:23;:::i;:::-;47565:32;;47619:18;47612:5;47609:29;47606:55;;;47641:18;;:::i;:::-;47606:55;47688:1;47681:5;47677:13;47670:20;;47513:183;;;:::o;47702:93::-;47739:7;47768:21;47783:5;47768:21;:::i;:::-;47757:32;;47702:93;;;:::o;47801:226::-;47835:3;47858:22;47874:5;47858:22;:::i;:::-;47849:31;;47902:66;47895:5;47892:77;47889:103;;;47972:18;;:::i;:::-;47889:103;48015:5;48012:1;48008:13;48001:20;;47801:226;;;:::o;48033:180::-;48081:77;48078:1;48071:88;48178:4;48175:1;48168:15;48202:4;48199:1;48192:15;48219:180;48267:77;48264:1;48257:88;48364:4;48361:1;48354:15;48388:4;48385:1;48378:15;48405:180;48453:77;48450:1;48443:88;48550:4;48547:1;48540:15;48574:4;48571:1;48564:15;48591:180;48639:77;48636:1;48629:88;48736:4;48733:1;48726:15;48760:4;48757:1;48750:15;48777:117;48886:1;48883;48876:12;48900:117;49009:1;49006;48999:12;49023:117;49132:1;49129;49122:12;49146:117;49255:1;49252;49245:12;49269:117;49378:1;49375;49368:12;49392:117;49501:1;49498;49491:12;49515:102;49556:6;49607:2;49603:7;49598:2;49591:5;49587:14;49583:28;49573:38;;49515:102;;;:::o;49623:96::-;49657:8;49706:5;49701:3;49697:15;49676:36;;49623:96;;;:::o;49725:102::-;49767:8;49814:5;49811:1;49807:13;49786:34;;49725:102;;;:::o;49833:240::-;49973:34;49969:1;49961:6;49957:14;49950:58;50042:23;50037:2;50029:6;50025:15;50018:48;49833:240;:::o;50079:308::-;50219:34;50215:1;50207:6;50203:14;50196:58;50288:34;50283:2;50275:6;50271:15;50264:59;50357:22;50352:2;50344:6;50340:15;50333:47;50079:308;:::o;50393:305::-;50533:34;50529:1;50521:6;50517:14;50510:58;50602:34;50597:2;50589:6;50585:15;50578:59;50671:19;50666:2;50658:6;50654:15;50647:44;50393:305;:::o;50704:297::-;50844:34;50840:1;50832:6;50828:14;50821:58;50913:34;50908:2;50900:6;50896:15;50889:59;50982:11;50977:2;50969:6;50965:15;50958:36;50704:297;:::o;51007:308::-;51147:34;51143:1;51135:6;51131:14;51124:58;51216:34;51211:2;51203:6;51199:15;51192:59;51285:22;51280:2;51272:6;51268:15;51261:47;51007:308;:::o;51321:240::-;51461:34;51457:1;51449:6;51445:14;51438:58;51530:23;51525:2;51517:6;51513:15;51506:48;51321:240;:::o;51567:289::-;51707:34;51703:1;51695:6;51691:14;51684:58;51776:34;51771:2;51763:6;51759:15;51752:59;51845:3;51840:2;51832:6;51828:15;51821:28;51567:289;:::o;51862:311::-;52002:34;51998:1;51990:6;51986:14;51979:58;52071:34;52066:2;52058:6;52054:15;52047:59;52140:25;52135:2;52127:6;52123:15;52116:50;51862:311;:::o;52179:307::-;52319:34;52315:1;52307:6;52303:14;52296:58;52388:34;52383:2;52375:6;52371:15;52364:59;52457:21;52452:2;52444:6;52440:15;52433:46;52179:307;:::o;52492:230::-;52632:34;52628:1;52620:6;52616:14;52609:58;52701:13;52696:2;52688:6;52684:15;52677:38;52492:230;:::o;52728:247::-;52868:34;52864:1;52856:6;52852:14;52845:58;52937:30;52932:2;52924:6;52920:15;52913:55;52728:247;:::o;52981:307::-;53121:34;53117:1;53109:6;53105:14;53098:58;53190:34;53185:2;53177:6;53173:15;53166:59;53259:21;53254:2;53246:6;53242:15;53235:46;52981:307;:::o;53294:228::-;53434:34;53430:1;53422:6;53418:14;53411:58;53503:11;53498:2;53490:6;53486:15;53479:36;53294:228;:::o;53528:316::-;53668:34;53664:1;53656:6;53652:14;53645:58;53737:34;53732:2;53724:6;53720:15;53713:59;53806:30;53801:2;53793:6;53789:15;53782:55;53528:316;:::o;53850:220::-;53990:34;53986:1;53978:6;53974:14;53967:58;54059:3;54054:2;54046:6;54042:15;54035:28;53850:220;:::o;54076:311::-;54216:34;54212:1;54204:6;54200:14;54193:58;54285:34;54280:2;54272:6;54268:15;54261:59;54354:25;54349:2;54341:6;54337:15;54330:50;54076:311;:::o;54393:307::-;54533:34;54529:1;54521:6;54517:14;54510:58;54602:34;54597:2;54589:6;54585:15;54578:59;54671:21;54666:2;54658:6;54654:15;54647:46;54393:307;:::o;54706:315::-;54846:34;54842:1;54834:6;54830:14;54823:58;54915:34;54910:2;54902:6;54898:15;54891:59;54984:29;54979:2;54971:6;54967:15;54960:54;54706:315;:::o;55027:230::-;55167:34;55163:1;55155:6;55151:14;55144:58;55236:13;55231:2;55223:6;55219:15;55212:38;55027:230;:::o;55263:120::-;55335:23;55352:5;55335:23;:::i;:::-;55328:5;55325:34;55315:62;;55373:1;55370;55363:12;55315:62;55263:120;:::o;55389:::-;55461:23;55478:5;55461:23;:::i;:::-;55454:5;55451:34;55441:62;;55499:1;55496;55489:12;55441:62;55389:120;:::o;55515:118::-;55586:22;55602:5;55586:22;:::i;:::-;55579:5;55576:33;55566:61;;55623:1;55620;55613:12;55566:61;55515:118;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"3074600","executionCost":"3413","totalCost":"3078013"},"external":{"decodeBool(Witnet.CBOR)":"infinite","decodeBytes(Witnet.CBOR)":"infinite","decodeBytes32(Witnet.CBOR)":"infinite","decodeFixed16(Witnet.CBOR)":"infinite","decodeFixed16Array(Witnet.CBOR)":"infinite","decodeInt128(Witnet.CBOR)":"infinite","decodeInt128Array(Witnet.CBOR)":"infinite","decodeString(Witnet.CBOR)":"infinite","decodeStringArray(Witnet.CBOR)":"infinite","decodeUint64(Witnet.CBOR)":"infinite","decodeUint64Array(Witnet.CBOR)":"infinite","valueFromBuffer(Witnet.Buffer)":"infinite","valueFromBytes(bytes)":"infinite"},"internal":{"readIndefiniteStringLength(struct Witnet.Buffer memory,uint8)":"infinite","readLength(struct Witnet.Buffer memory,uint8)":"infinite","readText(struct Witnet.Buffer memory,uint64)":"infinite"}},"methodIdentifiers":{"decodeBool(Witnet.CBOR)":"9eee60ca","decodeBytes(Witnet.CBOR)":"bb6ef6cf","decodeBytes32(Witnet.CBOR)":"08c05c33","decodeFixed16(Witnet.CBOR)":"8138799a","decodeFixed16Array(Witnet.CBOR)":"531f4ba7","decodeInt128(Witnet.CBOR)":"94863ea4","decodeInt128Array(Witnet.CBOR)":"3380d816","decodeString(Witnet.CBOR)":"e67c5bd1","decodeStringArray(Witnet.CBOR)":"c5e88ff2","decodeUint64(Witnet.CBOR)":"7a8acab1","decodeUint64Array(Witnet.CBOR)":"f8a597d3","valueFromBuffer(Witnet.Buffer)":"7f3fb7ca","valueFromBytes(bytes)":"dfca5d34"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_bytes32\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"decodeUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"_buffer\",\"type\":\"tuple\"}],\"name\":\"valueFromBuffer\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"valueFromBytes\",\"outputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.  TODO: add support for Array (majorType = 4) TODO: add support for Map (majorType = 5) TODO: add support for Float32 (majorType = 7, additionalInformation = 26) TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \",\"details\":\"Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\",\"kind\":\"dev\",\"methods\":{\"decodeBool(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as a `bool` value.\"}},\"decodeBytes(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as a `bytes` value.   \"}},\"decodeBytes32(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_bytes32\":\"The value represented by the input, as a `bytes32` value.\"}},\"decodeFixed16(Witnet.CBOR)\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16` use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `int128` value.\"}},\"decodeFixed16Array(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `int128[]` value.\"}},\"decodeInt128(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `int128` value.\"}},\"decodeInt128Array(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `int128[]` value.\"}},\"decodeString(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as a `string` value.\"}},\"decodeStringArray(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `string[]` value.\"}},\"decodeUint64(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `uint64` value.\"}},\"decodeUint64Array(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.CBOR`.\"},\"returns\":{\"_0\":\"The value represented by the input, as an `uint64[]` value.\"}},\"valueFromBuffer(Witnet.Buffer)\":{\"details\":\"This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\",\"params\":{\"_buffer\":\"A Buffer structure representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.CBOR` instance containing a partially decoded value.\"}},\"valueFromBytes(bytes)\":{\"details\":\"This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\",\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.CBOR` instance containing a partially decoded value.\"}}},\"title\":\"A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"decodeBool(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `bool` value.\"},\"decodeBytes(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `bytes` value.\"},\"decodeBytes32(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `bytes32` value.\"},\"decodeFixed16(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a `fixed16` value.\"},\"decodeFixed16Array(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention. as explained in `decodeFixed16`.\"},\"decodeInt128(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `int128` value.\"},\"decodeInt128Array(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `int128[]` value.\"},\"decodeString(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `string` value.\"},\"decodeStringArray(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `string[]` value.\"},\"decodeUint64(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `uint64` value.\"},\"decodeUint64Array(Witnet.CBOR)\":{\"notice\":\"Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\"},\"valueFromBuffer(Witnet.Buffer)\":{\"notice\":\"Decode a Witnet.CBOR structure from raw bytes.\"},\"valueFromBytes(bytes)\":{\"notice\":\"Decode a Witnet.CBOR structure from raw bytes.\"}},\"notice\":\"This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize the gas cost of decoding them into a useful native type.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":\"WitnetDecoderLib\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetBuffer.sol\\\";\\n\\n/// @title A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\\n/// the gas cost of decoding them into a useful native type.\\n/// @dev Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\\n/// @author The Witnet Foundation.\\n/// \\n/// TODO: add support for Array (majorType = 4)\\n/// TODO: add support for Map (majorType = 5)\\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \\n\\nlibrary WitnetDecoderLib {\\n\\n  using WitnetBuffer for Witnet.Buffer;\\n\\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bool` value.\\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\\\");\\n    if (_cborValue.len == 20) {\\n      return false;\\n    } else if (_cborValue.len == 21) {\\n      return true;\\n    } else {\\n      revert(\\\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\\\");\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bytes` value.   \\n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT32_MAX) {\\n      bytes memory bytesData;\\n\\n      // These checks look repetitive but the equivalent loop would be more expensive.\\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n      if (itemLength < _UINT32_MAX) {\\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n        if (itemLength < _UINT32_MAX) {\\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        }\\n      }\\n      return bytesData;\\n    } else {\\n      return _cborValue.buffer.read(uint32(_cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\\n    bytes memory _bb = decodeBytes(_cborValue);\\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\\n    for (uint _i = 0; _i < _len; _i ++) {\\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\\\");\\n    require(_cborValue.additionalInformation == 25, \\\"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\\\");\\n    return _cborValue.buffer.readFloat16();\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\\n  /// as explained in `decodeFixed16`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int32[] memory array = new int32[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeFixed16(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\\n    if (_cborValue.majorType == 1) {\\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n      return int128(-1) - int128(uint128(length));\\n    } else if (_cborValue.majorType == 0) {\\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\\n      // a uniform API for positive and negative numbers\\n      return int128(uint128(decodeUint64(_cborValue)));\\n    }\\n    revert(\\\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\\\");\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int128[] memory array = new int128[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeInt128(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `string` value.\\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT64_MAX) {\\n      bytes memory textData;\\n      bool done;\\n      while (!done) {\\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\\n        if (itemLength < _UINT64_MAX) {\\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\\n        } else {\\n          done = true;\\n        }\\n      }\\n      return string(textData);\\n    } else {\\n      return string(readText(_cborValue.buffer, _cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `string[]` value.\\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    string[] memory array = new string[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeString(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64` value.\\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\\n    require(_cborValue.majorType == 0, \\\"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\\\");\\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64[]` value.\\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    uint64[] memory array = new uint64[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeUint64(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\\n\\n    return valueFromBuffer(buffer);\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\\n    require(_buffer.data.length > 0, \\\"WitnetDecoderLib: Found empty buffer when parsing CBOR value\\\");\\n\\n    uint8 initialByte;\\n    uint8 majorType = 255;\\n    uint8 additionalInformation;\\n    uint64 tag = _UINT64_MAX;\\n\\n    bool isTagged = true;\\n    while (isTagged) {\\n      // Extract basic CBOR properties from input bytes\\n      initialByte = _buffer.readUint8();\\n      majorType = initialByte >> 5;\\n      additionalInformation = initialByte & 0x1f;\\n\\n      // Early CBOR tag parsing.\\n      if (majorType == 6) {\\n        tag = readLength(_buffer, additionalInformation);\\n      } else {\\n        isTagged = false;\\n      }\\n    }\\n\\n    require(majorType <= 7, \\\"WitnetDecoderLib: Invalid CBOR major type\\\");\\n\\n    return Witnet.CBOR(\\n      _buffer,\\n      initialByte,\\n      majorType,\\n      additionalInformation,\\n      0,\\n      tag);\\n  }\\n\\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\\n  /// value of the `additionalInformation` argument.\\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\\n    if (additionalInformation < 24) {\\n      return additionalInformation;\\n    }\\n    if (additionalInformation == 24) {\\n      return _buffer.readUint8();\\n    }\\n    if (additionalInformation == 25) {\\n      return _buffer.readUint16();\\n    }\\n    if (additionalInformation == 26) {\\n      return _buffer.readUint32();\\n    }\\n    if (additionalInformation == 27) {\\n      return _buffer.readUint64();\\n    }\\n    if (additionalInformation == 31) {\\n      return _UINT64_MAX;\\n    }\\n    revert(\\\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\\\");\\n  }\\n\\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\\n  /// as many bytes as specified by the first byte.\\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\\n    uint8 initialByte = _buffer.readUint8();\\n    if (initialByte == 0xff) {\\n      return _UINT64_MAX;\\n    }\\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \\\"WitnetDecoderLib: Invalid indefinite length\\\");\\n    return length;\\n  }\\n\\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\\n  /// but it can be easily casted into a string with `string(result)`.\\n  // solium-disable-next-line security/no-assign-params\\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\\n    bytes memory result;\\n    for (uint64 index = 0; index < _length; index++) {\\n      uint8 value = _buffer.readUint8();\\n      if (value & 0x80 != 0) {\\n        if (value < 0xe0) {\\n          value = (value & 0x1f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 1;\\n        } else if (value < 0xf0) {\\n          value = (value & 0x0f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 2;\\n        } else {\\n          value = (value & 0x0f) << 18 |\\n            (_buffer.readUint8() & 0x3f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6  |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 3;\\n        }\\n      }\\n      result = abi.encodePacked(result, value);\\n    }\\n    return result;\\n  }\\n}\\n\",\"keccak256\":\"0xb8f5b618ebae15a7f5d21870ac8ba7034afe5dce876b53a1a81572378a817c32\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"decodeBool(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `bool` value."},"decodeBytes(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `bytes` value."},"decodeBytes32(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `bytes32` value."},"decodeFixed16(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a `fixed16` value."},"decodeFixed16Array(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention. as explained in `decodeFixed16`."},"decodeInt128(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `int128` value."},"decodeInt128Array(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `int128[]` value."},"decodeString(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `string` value."},"decodeStringArray(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `string[]` value."},"decodeUint64(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `uint64` value."},"decodeUint64Array(Witnet.CBOR)":{"notice":"Decode a `Witnet.CBOR` structure into a native `uint64[]` value."},"valueFromBuffer(Witnet.Buffer)":{"notice":"Decode a Witnet.CBOR structure from raw bytes."},"valueFromBytes(bytes)":{"notice":"Decode a Witnet.CBOR structure from raw bytes."}},"notice":"This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize the gas cost of decoding them into a useful native type.","version":1}}},"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol":{"WitnetParserLib":{"abi":[{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asBytes32","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorCode","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"Witnet.ErrorCodes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asErrorMessage","outputs":[{"internalType":"enum Witnet.ErrorCodes","name":"","type":"Witnet.ErrorCodes"},{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16","outputs":[{"internalType":"int32","name":"","type":"int32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asFixed16Array","outputs":[{"internalType":"int32[]","name":"","type":"int32[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128","outputs":[{"internalType":"int128","name":"","type":"int128"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asInt128Array","outputs":[{"internalType":"int128[]","name":"","type":"int128[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asRawError","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asStringArray","outputs":[{"internalType":"string[]","name":"","type":"string[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"asUint64Array","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isError","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"_result","type":"tuple"}],"name":"isOk","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes","name":"_cborBytes","type":"bytes"}],"name":"resultFromCborBytes","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"_cborValue","type":"tuple"}],"name":"resultFromCborValue","outputs":[{"components":[{"internalType":"bool","name":"success","type":"bool"},{"components":[{"components":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint32","name":"cursor","type":"uint32"}],"internalType":"struct Witnet.Buffer","name":"buffer","type":"tuple"},{"internalType":"uint8","name":"initialByte","type":"uint8"},{"internalType":"uint8","name":"majorType","type":"uint8"},{"internalType":"uint8","name":"additionalInformation","type":"uint8"},{"internalType":"uint64","name":"len","type":"uint64"},{"internalType":"uint64","name":"tag","type":"uint64"}],"internalType":"struct Witnet.CBOR","name":"value","type":"tuple"}],"internalType":"struct Witnet.Result","name":"","type":"tuple"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint64","name":"_stageIndex","type":"uint64"}],"name":"stageName","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"}],"devdoc":{"author":"The Witnet Foundation.","kind":"dev","methods":{"asBool(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bool` decoded from the Witnet.Result."}},"asBytes(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes` decoded from the Witnet.Result."}},"asBytes32(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `bytes32` decoded from the Witnet.Result."}},"asErrorCode(Witnet.Result)":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `CBORValue.Error memory` decoded from the Witnet.Result."}},"asErrorMessage(Witnet.Result)":{"details":"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function","params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message."}},"asFixed16(Witnet.Result)":{"details":"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.","params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asFixed16Array(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asInt128(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128` decoded from the Witnet.Result."}},"asInt128Array(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `int128[]` decoded from the Witnet.Result."}},"asRawError(Witnet.Result)":{"params":{"_result":"An instance of `Witnet.Result`."},"returns":{"_0":"The `uint64[]` raw error as decoded from the `Witnet.Result`."}},"asString(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string` decoded from the Witnet.Result."}},"asStringArray(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `string[]` decoded from the Witnet.Result."}},"asUint64(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64` decoded from the Witnet.Result."}},"asUint64Array(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"The `uint64[]` decoded from the Witnet.Result."}},"isError(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if errored, `false` if successful."}},"isOk(Witnet.Result)":{"params":{"_result":"An instance of Witnet.Result."},"returns":{"_0":"`true` if successful, `false` if errored."}},"resultFromCborBytes(bytes)":{"params":{"_cborBytes":"Raw bytes representing a CBOR-encoded value."},"returns":{"_0":"A `Witnet.Result` instance."}},"resultFromCborValue(Witnet.CBOR)":{"params":{"_cborValue":"An instance of `Witnet.Value`."},"returns":{"_0":"A `Witnet.Result` instance."}},"stageName(uint64)":{"params":{"_stageIndex":"A `uint64` identifying the index of one of the Witnet request stages."},"returns":{"_0":"The name of the matching stage."}}},"title":"A library for decoding Witnet request results","version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol":{"WitnetDecoderLib":[{"length":20,"start":1378},{"length":20,"start":1601},{"length":20,"start":1886},{"length":20,"start":2109},{"length":20,"start":2346},{"length":20,"start":5168},{"length":20,"start":5406},{"length":20,"start":5624},{"length":20,"start":5842},{"length":20,"start":6443},{"length":20,"start":6665},{"length":20,"start":6901},{"length":20,"start":7124}]}},"object":"614f53610053600b82828239805160001a607314610046577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061012b5760003560e01c8063a1d45d56116100b7578063d45d097d1161007b578063d45d097d146103d1578063d8868db614610401578063e99e47f314610431578063f417daf514610461578063fc853c37146104915761012b565b8063a1d45d56146102e1578063a2e8765514610311578063abf82f4c14610341578063c71db52114610371578063cb5371c0146103a15761012b565b80632d26b9e2116100fe5780632d26b9e2146101f05780636646c119146102205780638233f9b3146102505780638cc5eb5414610280578063a1b90891146102b15761012b565b80630879730d1461013057806308efc09714610160578063130283ee14610190578063147e5c8f146101c0575b600080fd5b61014a60048036038101906101459190612ccf565b6104c1565b6040516101579190613b74565b60405180910390f35b61017a60048036038101906101759190612ccf565b6105a1565b6040516101879190613b30565b60405180910390f35b6101aa60048036038101906101a59190612c3d565b610680565b6040516101b79190613e33565b60405180910390f35b6101da60048036038101906101d59190612ccf565b6106be565b6040516101e79190613b74565b60405180910390f35b61020a60048036038101906102059190612ccf565b61079d565b6040516102179190613b52565b60405180910390f35b61023a60048036038101906102359190612ccf565b61087c565b6040516102479190613b96565b60405180910390f35b61026a60048036038101906102659190612ccf565b61088a565b6040516102779190613e55565b60405180910390f35b61029a60048036038101906102959190612ccf565b610964565b6040516102a8929190613c09565b60405180910390f35b6102cb60048036038101906102c69190612ccf565b611390565b6040516102d89190613bcc565b60405180910390f35b6102fb60048036038101906102f69190612ccf565b61146f565b6040516103089190613b96565b60405180910390f35b61032b60048036038101906103269190612ccf565b61147e565b6040516103389190613bb1565b60405180910390f35b61035b60048036038101906103569190612ccf565b611558565b6040516103689190613b96565b60405180910390f35b61038b60048036038101906103869190612ccf565b611632565b6040516103989190613c39565b60405180910390f35b6103bb60048036038101906103b69190612d18565b61170c565b6040516103c89190613c6f565b60405180910390f35b6103eb60048036038101906103e69190612ccf565b61183c565b6040516103f89190613bee565b60405180910390f35b61041b60048036038101906104169190612ccf565b61188b565b6040516104289190613c54565b60405180910390f35b61044b60048036038101906104469190612b04565b611965565b6040516104589190613e33565b60405180910390f35b61047b60048036038101906104769190612ccf565b611a55565b6040516104889190613c6f565b60405180910390f35b6104ab60048036038101906104a69190612ccf565b611b34565b6040516104b89190613b0e565b60405180910390f35b6060816000015115610508576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ff90613db1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63f8a597d390916040518263ffffffff1660e01b81526004016105459190613e11565b60006040518083038186803b15801561055d57600080fd5b505af4158015610571573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061059a9190612a61565b9050919050565b606081600001516105e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105de90613cd1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63531f4ba790916040518263ffffffff1660e01b81526004016106249190613e11565b60006040518083038186803b15801561063c57600080fd5b505af4158015610650573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061067991906129cf565b9050919050565b61068861210c565b600060278360a0015167ffffffffffffffff16141590506040518060400160405280821515815260200184815250915050919050565b60608160000151610704576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fb90613d31565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63f8a597d390916040518263ffffffff1660e01b81526004016107419190613e11565b60006040518083038186803b15801561075957600080fd5b505af415801561076d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906107969190612a61565b9050919050565b606081600001516107e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107da90613d51565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63c5e88ff290916040518263ffffffff1660e01b81526004016108209190613e11565b60006040518083038186803b15801561083857600080fd5b505af415801561084c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906108759190612a18565b9050919050565b600081600001519050919050565b600081600001516108d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c790613d11565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__637a8acab190916040518263ffffffff1660e01b815260040161090d9190613e11565b60206040518083038186803b15801561092557600080fd5b505af4158015610939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095d9190612d45565b9050919050565b600060606000610973846104c1565b90506000815114156109c15760006040518060400160405280601d81526020017f556e6b6e6f776e206572726f7220286e6f206572726f7220636f646529000000815250925092505061138b565b60006109e7826000815181106109da576109d9614320565b5b6020026020010151611c13565b90506060600160ff8111156109ff576109fe6142f1565b5b8260ff811115610a1257610a116142f1565b5b148015610a2157506002835110155b15610a7057610a4a83600181518110610a3d57610a3c614320565b5b6020026020010151611c39565b604051602001610a5a9190613892565b6040516020818303038152906040529050611381565b600260ff811115610a8457610a836142f1565b5b8260ff811115610a9757610a966142f1565b5b148015610aa657506002835110155b15610af557610acf83600181518110610ac257610ac1614320565b5b6020026020010151611c39565b604051602001610adf91906138bf565b6040516020818303038152906040529050611380565b600360ff811115610b0957610b086142f1565b5b8260ff811115610b1c57610b1b6142f1565b5b148015610b2b57506002835110155b15610b7a57610b5483600181518110610b4757610b46614320565b5b6020026020010151611c39565b604051602001610b6491906138ec565b604051602081830303815290604052905061137f565b601060ff811115610b8e57610b8d6142f1565b5b8260ff811115610ba157610ba06142f1565b5b148015610bb057506002835110155b15610bff57610bd983600181518110610bcc57610bcb614320565b5b6020026020010151611c39565b604051602001610be99190613a03565b604051602081830303815290604052905061137e565b601160ff811115610c1357610c126142f1565b5b8260ff811115610c2657610c256142f1565b5b148015610c3557506004835110155b15610cce57610c5e83600281518110610c5157610c50614320565b5b6020026020010151611c39565b610c8284600181518110610c7557610c74614320565b5b602002602001015161170c565b610ca685600381518110610c9957610c98614320565b5b6020026020010151611c39565b604051602001610cb893929190613a30565b604051602081830303815290604052905061137d565b602060ff811115610ce257610ce16142f1565b5b8260ff811115610cf557610cf46142f1565b5b148015610d0457506005835110155b15610dc257610d2d83600481518110610d2057610d1f614320565b5b6020026020010151611fad565b610d5184600381518110610d4457610d43614320565b5b6020026020010151611c39565b610d7585600281518110610d6857610d67614320565b5b6020026020010151611c39565b610d9986600181518110610d8c57610d8b614320565b5b602002602001015161170c565b604051602001610dac949392919061381d565b604051602081830303815290604052905061137c565b603060ff811115610dd657610dd56142f1565b5b8260ff811115610de957610de86142f1565b5b148015610df857506003835110155b15610ee657610e2183600181518110610e1457610e13614320565b5b6020026020010151611c39565b610e51606485600281518110610e3a57610e39614320565b5b6020026020010151610e4c9190614138565b611c39565b610e8d600a606487600281518110610e6c57610e6b614320565b5b6020026020010151610e7e9190614262565b610e889190614138565b611c39565b610ebd600a87600281518110610ea657610ea5614320565b5b6020026020010151610eb89190614262565b611c39565b604051602001610ed09493929190613a8d565b604051602081830303815290604052905061137b565b603160ff811115610efa57610ef96142f1565b5b8260ff811115610f0d57610f0c6142f1565b5b148015610f1c57506002835110155b15610f6b57610f4583600181518110610f3857610f37614320565b5b6020026020010151611c39565b604051602001610f559190613ae1565b604051602081830303815290604052905061137a565b604060ff811115610f7f57610f7e6142f1565b5b8260ff811115610f9257610f916142f1565b5b148015610fa157506005835110155b1561105f57610fca83600481518110610fbd57610fbc614320565b5b6020026020010151611fad565b610fee84600381518110610fe157610fe0614320565b5b6020026020010151611c39565b6110128560028151811061100557611004614320565b5b6020026020010151611c39565b6110368660018151811061102957611028614320565b5b602002602001015161170c565b60405160200161104994939291906137a8565b6040516020818303038152906040529050611379565b604160ff811115611073576110726142f1565b5b8260ff811115611086576110856142f1565b5b14801561109557506005835110155b15611153576110be836004815181106110b1576110b0614320565b5b6020026020010151611fad565b6110e2846003815181106110d5576110d4614320565b5b6020026020010151611c39565b611106856002815181106110f9576110f8614320565b5b6020026020010151611c39565b61112a8660018151811061111d5761111c614320565b5b602002602001015161170c565b60405160200161113d949392919061398e565b6040516020818303038152906040529050611378565b604260ff811115611167576111666142f1565b5b8260ff81111561117a576111796142f1565b5b14801561118957506005835110155b15611247576111b2836004815181106111a5576111a4614320565b5b6020026020010151611fad565b6111d6846003815181106111c9576111c8614320565b5b6020026020010151611c39565b6111fa856002815181106111ed576111ec614320565b5b6020026020010151611c39565b61121e8660018151811061121157611210614320565b5b602002602001015161170c565b6040516020016112319493929190613919565b6040516020818303038152906040529050611377565b60e060ff81111561125b5761125a6142f1565b5b8260ff81111561126e5761126d6142f1565b5b1415611294576040518060600160405280603f8152602001614e57603f91399050611376565b60e160ff8111156112a8576112a76142f1565b5b8260ff8111156112bb576112ba6142f1565b5b14156112e157604051806080016040528060478152602001614ed7604791399050611375565b60e260ff8111156112f5576112f46142f1565b5b8260ff811115611308576113076142f1565b5b141561132e57604051806080016040528060418152602001614e96604191399050611374565b6113528360008151811061134557611344614320565b5b6020026020010151611fad565b604051602001611362919061377b565b60405160208183030381529060405290505b5b5b5b5b5b5b5b5b5b5b5b5b5b8181945094505050505b915091565b606081600001516113d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113cd90613c91565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63bb6ef6cf90916040518263ffffffff1660e01b81526004016114139190613e11565b60006040518083038186803b15801561142b57600080fd5b505af415801561143f573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906114689190612b51565b9050919050565b60008160000151159050919050565b600081600001516114c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bb90613d71565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__6308c05c3390916040518263ffffffff1660e01b81526004016115019190613e11565b60206040518083038186803b15801561151957600080fd5b505af415801561152d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115519190612ad7565b9050919050565b6000816000015161159e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159590613dd1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__639eee60ca90916040518263ffffffff1660e01b81526004016115db9190613e11565b60206040518083038186803b1580156115f357600080fd5b505af4158015611607573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162b9190612aaa565b9050919050565b60008160000151611678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166f90613cf1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__6394863ea490916040518263ffffffff1660e01b81526004016116b59190613e11565b60206040518083038186803b1580156116cd57600080fd5b505af41580156116e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117059190612b9a565b9050919050565b606060008267ffffffffffffffff16141561175e576040518060400160405280600981526020017f72657472696576616c00000000000000000000000000000000000000000000008152509050611837565b60018267ffffffffffffffff1614156117ae576040518060400160405280600b81526020017f6167677265676174696f6e0000000000000000000000000000000000000000008152509050611837565b60028267ffffffffffffffff1614156117fe576040518060400160405280600581526020017f74616c6c790000000000000000000000000000000000000000000000000000008152509050611837565b6040518060400160405280600781526020017f756e6b6e6f776e0000000000000000000000000000000000000000000000000081525090505b919050565b600080611848836104c1565b905060008151141561185e576000915050611886565b6118828160008151811061187557611874614320565b5b6020026020010151611c13565b9150505b919050565b600081600001516118d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c890613df1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__638138799a90916040518263ffffffff1660e01b815260040161190e9190613e11565b60206040518083038186803b15801561192657600080fd5b505af415801561193a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195e9190612bc7565b9050919050565b61196d61210c565b600083838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505073__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63dfca5d3490916040518263ffffffff1660e01b81526004016119ec9190613bcc565b60006040518083038186803b158015611a0457600080fd5b505af4158015611a18573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611a419190612c86565b9050611a4c81610680565b91505092915050565b60608160000151611a9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9290613d91565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63e67c5bd190916040518263ffffffff1660e01b8152600401611ad89190613e11565b60006040518083038186803b158015611af057600080fd5b505af4158015611b04573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611b2d9190612bf4565b9050919050565b60608160000151611b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7190613cb1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__633380d81690916040518263ffffffff1660e01b8152600401611bb79190613e11565b60006040518083038186803b158015611bcf57600080fd5b505af4158015611be3573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611c0c9190612986565b9050919050565b60008167ffffffffffffffff1660ff811115611c3257611c316142f1565b5b9050919050565b6060600a8267ffffffffffffffff161015611cfc576000600167ffffffffffffffff811115611c6b57611c6a61434f565b5b6040519080825280601f01601f191660200182016040528015611c9d5781602001600182028036833780820191505090505b509050603083611cad9190614101565b60f81b81600081518110611cc457611cc3614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080915050611fa8565b60648267ffffffffffffffff161015611e28576000600267ffffffffffffffff811115611d2c57611d2b61434f565b5b6040519080825280601f01601f191660200182016040528015611d5e5781602001600182028036833780820191505090505b5090506030600a84611d709190614138565b611d7a9190614101565b60f81b81600081518110611d9157611d90614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506030600a84611dcf9190614262565b611dd99190614101565b60f81b81600181518110611df057611def614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080915050611fa8565b6000600367ffffffffffffffff811115611e4557611e4461434f565b5b6040519080825280601f01601f191660200182016040528015611e775781602001600182028036833780820191505090505b5090506030606484611e899190614138565b611e939190614101565b60f81b81600081518110611eaa57611ea9614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506030600a606485611eea9190614262565b611ef49190614138565b611efe9190614101565b60f81b81600181518110611f1557611f14614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506030600a84611f539190614262565b611f5d9190614101565b60f81b81600281518110611f7457611f73614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350809150505b919050565b60606000600267ffffffffffffffff811115611fcc57611fcb61434f565b5b6040519080825280601f01601f191660200182016040528015611ffe5781602001600182028036833780820191505090505b509050600060306010856120129190614138565b61201c9190614101565b90506000603060108661202f9190614262565b6120399190614101565b905060398260ff161115612057576007826120549190614101565b91505b60398160ff161115612073576007816120709190614101565b90505b8160f81b8360008151811061208b5761208a614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508060f81b836001815181106120d2576120d1614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350829350505050919050565b604051806040016040528060001515815260200161212861212e565b81525090565b6040518060c00160405280612141612187565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b604051806040016040528060608152602001600063ffffffff1681525090565b60006121ba6121b584613e95565b613e70565b905080838252602082019050828560208602820111156121dd576121dc614392565b5b60005b8581101561220d57816121f388826125f4565b8452602084019350602083019250506001810190506121e0565b5050509392505050565b600061222a61222584613ec1565b613e70565b9050808382526020820190508285602086028201111561224d5761224c614392565b5b60005b8581101561227d57816122638882612609565b845260208401935060208301925050600181019050612250565b5050509392505050565b600061229a61229584613eed565b613e70565b905080838252602082019050828560208602820111156122bd576122bc614392565b5b60005b8581101561230b57815167ffffffffffffffff8111156122e3576122e2614383565b5b8086016122f0898261261e565b855260208501945060208401935050506001810190506122c0565b5050509392505050565b600061232861232384613f19565b613e70565b9050808382526020820190508285602086028201111561234b5761234a614392565b5b60005b8581101561237b57816123618882612947565b84526020840193506020830192505060018101905061234e565b5050509392505050565b600061239861239384613f45565b613e70565b9050828152602081018484840111156123b4576123b3614397565b5b6123bf8482856141ef565b509392505050565b60006123da6123d584613f45565b613e70565b9050828152602081018484840111156123f6576123f5614397565b5b6124018482856141fe565b509392505050565b600061241c61241784613f76565b613e70565b90508281526020810184848401111561243857612437614397565b5b6124438482856141fe565b509392505050565b600082601f8301126124605761245f614383565b5b81516124708482602086016121a7565b91505092915050565b600082601f83011261248e5761248d614383565b5b815161249e848260208601612217565b91505092915050565b600082601f8301126124bc576124bb614383565b5b81516124cc848260208601612287565b91505092915050565b600082601f8301126124ea576124e9614383565b5b81516124fa848260208601612315565b91505092915050565b60008135905061251281614db5565b92915050565b60008151905061252781614db5565b92915050565b60008151905061253c81614dcc565b92915050565b60008083601f84011261255857612557614383565b5b8235905067ffffffffffffffff8111156125755761257461437e565b5b60208301915083600182028301111561259157612590614392565b5b9250929050565b600082601f8301126125ad576125ac614383565b5b81356125bd848260208601612385565b91505092915050565b600082601f8301126125db576125da614383565b5b81516125eb8482602086016123c7565b91505092915050565b60008151905061260381614de3565b92915050565b60008151905061261881614dfa565b92915050565b600082601f83011261263357612632614383565b5b8151612643848260208601612409565b91505092915050565b60006040828403121561266257612661614388565b5b61266c6040613e70565b9050600082013567ffffffffffffffff81111561268c5761268b61438d565b5b61269884828501612598565b60008301525060206126ac84828501612908565b60208301525092915050565b6000604082840312156126ce576126cd614388565b5b6126d86040613e70565b9050600082015167ffffffffffffffff8111156126f8576126f761438d565b5b612704848285016125c6565b60008301525060206127188482850161291d565b60208301525092915050565b600060c0828403121561273a57612739614388565b5b61274460c0613e70565b9050600082013567ffffffffffffffff8111156127645761276361438d565b5b6127708482850161264c565b60008301525060206127848482850161295c565b60208301525060406127988482850161295c565b60408301525060606127ac8482850161295c565b60608301525060806127c084828501612932565b60808301525060a06127d484828501612932565b60a08301525092915050565b600060c082840312156127f6576127f5614388565b5b61280060c0613e70565b9050600082015167ffffffffffffffff8111156128205761281f61438d565b5b61282c848285016126b8565b600083015250602061284084828501612971565b602083015250604061285484828501612971565b604083015250606061286884828501612971565b606083015250608061287c84828501612947565b60808301525060a061289084828501612947565b60a08301525092915050565b6000604082840312156128b2576128b1614388565b5b6128bc6040613e70565b905060006128cc84828501612503565b600083015250602082013567ffffffffffffffff8111156128f0576128ef61438d565b5b6128fc84828501612724565b60208301525092915050565b60008135905061291781614e11565b92915050565b60008151905061292c81614e11565b92915050565b60008135905061294181614e28565b92915050565b60008151905061295681614e28565b92915050565b60008135905061296b81614e3f565b92915050565b60008151905061298081614e3f565b92915050565b60006020828403121561299c5761299b6143a1565b5b600082015167ffffffffffffffff8111156129ba576129b961439c565b5b6129c68482850161244b565b91505092915050565b6000602082840312156129e5576129e46143a1565b5b600082015167ffffffffffffffff811115612a0357612a0261439c565b5b612a0f84828501612479565b91505092915050565b600060208284031215612a2e57612a2d6143a1565b5b600082015167ffffffffffffffff811115612a4c57612a4b61439c565b5b612a58848285016124a7565b91505092915050565b600060208284031215612a7757612a766143a1565b5b600082015167ffffffffffffffff811115612a9557612a9461439c565b5b612aa1848285016124d5565b91505092915050565b600060208284031215612ac057612abf6143a1565b5b6000612ace84828501612518565b91505092915050565b600060208284031215612aed57612aec6143a1565b5b6000612afb8482850161252d565b91505092915050565b60008060208385031215612b1b57612b1a6143a1565b5b600083013567ffffffffffffffff811115612b3957612b3861439c565b5b612b4585828601612542565b92509250509250929050565b600060208284031215612b6757612b666143a1565b5b600082015167ffffffffffffffff811115612b8557612b8461439c565b5b612b91848285016125c6565b91505092915050565b600060208284031215612bb057612baf6143a1565b5b6000612bbe848285016125f4565b91505092915050565b600060208284031215612bdd57612bdc6143a1565b5b6000612beb84828501612609565b91505092915050565b600060208284031215612c0a57612c096143a1565b5b600082015167ffffffffffffffff811115612c2857612c2761439c565b5b612c348482850161261e565b91505092915050565b600060208284031215612c5357612c526143a1565b5b600082013567ffffffffffffffff811115612c7157612c7061439c565b5b612c7d84828501612724565b91505092915050565b600060208284031215612c9c57612c9b6143a1565b5b600082015167ffffffffffffffff811115612cba57612cb961439c565b5b612cc6848285016127e0565b91505092915050565b600060208284031215612ce557612ce46143a1565b5b600082013567ffffffffffffffff811115612d0357612d0261439c565b5b612d0f8482850161289c565b91505092915050565b600060208284031215612d2e57612d2d6143a1565b5b6000612d3c84828501612932565b91505092915050565b600060208284031215612d5b57612d5a6143a1565b5b6000612d6984828501612947565b91505092915050565b6000612d7e838361301a565b60208301905092915050565b6000612d968383613038565b60208301905092915050565b6000612dae8383613080565b905092915050565b6000612dc2838361375d565b60208301905092915050565b6000612dd982613fe7565b612de3818561405d565b9350612dee83613fa7565b8060005b83811015612e1f578151612e068882612d72565b9750612e1183614029565b925050600181019050612df2565b5085935050505092915050565b6000612e3782613ff2565b612e41818561406e565b9350612e4c83613fb7565b8060005b83811015612e7d578151612e648882612d8a565b9750612e6f83614036565b925050600181019050612e50565b5085935050505092915050565b6000612e9582613ffd565b612e9f818561407f565b935083602082028501612eb185613fc7565b8060005b85811015612eed5784840389528151612ece8582612da2565b9450612ed983614043565b925060208a01995050600181019050612eb5565b50829750879550505050505092915050565b6000612f0a82614008565b612f148185614090565b9350612f1f83613fd7565b8060005b83811015612f50578151612f378882612db6565b9750612f4283614050565b925050600181019050612f23565b5085935050505092915050565b612f6681614169565b82525050565b612f7581614169565b82525050565b612f8481614175565b82525050565b6000612f9582614013565b612f9f81856140a1565b9350612faf8185602086016141fe565b612fb8816143a6565b840191505092915050565b6000612fce82614013565b612fd881856140b2565b9350612fe88185602086016141fe565b612ff1816143a6565b840191505092915050565b613005816141dd565b82525050565b61301481614192565b82525050565b61302381614192565b82525050565b6130328161419f565b82525050565b6130418161419f565b82525050565b60006130528261401e565b61305c81856140d4565b935061306c8185602086016141fe565b613075816143a6565b840191505092915050565b600061308b8261401e565b61309581856140e5565b93506130a58185602086016141fe565b6130ae816143a6565b840191505092915050565b60006130c48261401e565b6130ce81856140f6565b93506130de8185602086016141fe565b80840191505092915050565b60006130f76036836140f6565b9150613102826143b7565b603682019050919050565b600061311a6017836140f6565b915061312582614406565b601782019050919050565b600061313d6045836140c3565b91506131488261442f565b606082019050919050565b60006131606011836140f6565b915061316b826144a4565b601182019050919050565b6000613183604a836140c3565b915061318e826144cd565b606082019050919050565b60006131a6601d836140f6565b91506131b182614542565b601d82019050919050565b60006131c96006836140f6565b91506131d48261456b565b600682019050919050565b60006131ec604b836140c3565b91506131f782614594565b606082019050919050565b600061320f601b836140f6565b915061321a82614609565b601b82019050919050565b60006132326010836140f6565b915061323d82614632565b601082019050919050565b6000613255602c836140f6565b91506132608261465b565b602c82019050919050565b60006132786048836140c3565b9150613283826146aa565b606082019050919050565b600061329b600c836140f6565b91506132a68261471f565b600c82019050919050565b60006132be6001836140f6565b91506132c982614748565b600182019050919050565b60006132e16006836140f6565b91506132ec82614771565b600682019050919050565b6000613304600f836140f6565b915061330f8261479a565b600f82019050919050565b60006133276048836140c3565b9150613332826147c3565b606082019050919050565b600061334a6010836140f6565b915061335582614838565b601082019050919050565b600061336d604a836140c3565b915061337882614861565b606082019050919050565b6000613390604a836140c3565b915061339b826148d6565b606082019050919050565b60006133b36021836140f6565b91506133be8261494b565b602182019050919050565b60006133d66047836140c3565b91506133e18261499a565b606082019050919050565b60006133f96048836140c3565b915061340482614a0f565b606082019050919050565b600061341c601a836140f6565b915061342782614a84565b601a82019050919050565b600061343f6024836140f6565b915061344a82614aad565b602482019050919050565b60006134626047836140c3565b915061346d82614afc565b606082019050919050565b6000613485601c836140f6565b915061349082614b71565b601c82019050919050565b60006134a8601a836140f6565b91506134b382614b9a565b601a82019050919050565b60006134cb6046836140c3565b91506134d682614bc3565b606082019050919050565b60006134ee601d836140f6565b91506134f982614c38565b601d82019050919050565b6000613511600a836140f6565b915061351c82614c61565b600a82019050919050565b60006135346049836140c3565b915061353f82614c8a565b606082019050919050565b60006135576028836140f6565b915061356282614cff565b602882019050919050565b600061357a6008836140f6565b915061358582614d4e565b600882019050919050565b600061359d6008836140f6565b91506135a882614d77565b600882019050919050565b600060408301600083015184820360008601526135d08282612fc3565b91505060208301516135e5602086018261373f565b508091505092915050565b600060c083016000830151848203600086015261360d82826135b3565b9150506020830151613622602086018261376c565b506040830151613635604086018261376c565b506060830151613648606086018261376c565b50608083015161365b608086018261375d565b5060a083015161366e60a086018261375d565b508091505092915050565b600060c083016000830151848203600086015261369682826135b3565b91505060208301516136ab602086018261376c565b5060408301516136be604086018261376c565b5060608301516136d1606086018261376c565b5060808301516136e4608086018261375d565b5060a08301516136f760a086018261375d565b508091505092915050565b600060408301600083015161371a6000860182612f6c565b50602083015184820360208601526137328282613679565b9150508091505092915050565b613748816141ac565b82525050565b613757816141bc565b82525050565b613766816141bc565b82525050565b613775816141d0565b82525050565b600061378682613153565b915061379282846130b9565b915061379d826132b1565b915081905092915050565b60006137b382613199565b91506137bf82876130b9565b91506137ca8261333d565b91506137d682866130b9565b91506137e18261328e565b91506137ed82856130b9565b91506137f8826132d4565b915061380482846130b9565b915061380f826131bc565b915081905095945050505050565b600061382882613225565b915061383482876130b9565b915061383f8261333d565b915061384b82866130b9565b91506138568261328e565b915061386282856130b9565b915061386d826132d4565b915061387982846130b9565b91506138848261310d565b915081905095945050505050565b600061389d826132f7565b91506138a982846130b9565b91506138b482613202565b915081905092915050565b60006138ca8261340f565b91506138d682846130b9565b91506138e18261349b565b915081905092915050565b60006138f78261340f565b915061390382846130b9565b915061390e826134e1565b915081905092915050565b600061392482613432565b915061393082876130b9565b915061393b8261333d565b915061394782866130b9565b91506139528261328e565b915061395e82856130b9565b9150613969826132d4565b915061397582846130b9565b9150613980826131bc565b915081905095945050505050565b600061399982613478565b91506139a582876130b9565b91506139b08261333d565b91506139bc82866130b9565b91506139c78261328e565b91506139d382856130b9565b91506139de826132d4565b91506139ea82846130b9565b91506139f5826131bc565b915081905095945050505050565b6000613a0e8261354a565b9150613a1a82846130b9565b9150613a25826132b1565b915081905092915050565b6000613a3b8261356d565b9150613a4782866130b9565b9150613a5282613504565b9150613a5e82856130b9565b9150613a69826133a6565b9150613a7582846130b9565b9150613a80826132b1565b9150819050949350505050565b6000613a9882613590565b9150613aa482876130b9565b9150613aaf826130ea565b9150613abb82866130b9565b9150613ac782856130b9565b9150613ad382846130b9565b915081905095945050505050565b6000613aec82613590565b9150613af882846130b9565b9150613b0382613248565b915081905092915050565b60006020820190508181036000830152613b288184612dce565b905092915050565b60006020820190508181036000830152613b4a8184612e2c565b905092915050565b60006020820190508181036000830152613b6c8184612e8a565b905092915050565b60006020820190508181036000830152613b8e8184612eff565b905092915050565b6000602082019050613bab6000830184612f5d565b92915050565b6000602082019050613bc66000830184612f7b565b92915050565b60006020820190508181036000830152613be68184612f8a565b905092915050565b6000602082019050613c036000830184612ffc565b92915050565b6000604082019050613c1e6000830185612ffc565b8181036020830152613c308184613047565b90509392505050565b6000602082019050613c4e600083018461300b565b92915050565b6000602082019050613c696000830184613029565b92915050565b60006020820190508181036000830152613c898184613047565b905092915050565b60006020820190508181036000830152613caa81613130565b9050919050565b60006020820190508181036000830152613cca81613176565b9050919050565b60006020820190508181036000830152613cea816131df565b9050919050565b60006020820190508181036000830152613d0a8161326b565b9050919050565b60006020820190508181036000830152613d2a8161331a565b9050919050565b60006020820190508181036000830152613d4a81613360565b9050919050565b60006020820190508181036000830152613d6a81613383565b9050919050565b60006020820190508181036000830152613d8a816133c9565b9050919050565b60006020820190508181036000830152613daa816133ec565b9050919050565b60006020820190508181036000830152613dca81613455565b9050919050565b60006020820190508181036000830152613dea816134be565b9050919050565b60006020820190508181036000830152613e0a81613527565b9050919050565b60006020820190508181036000830152613e2b81846135f0565b905092915050565b60006020820190508181036000830152613e4d8184613702565b905092915050565b6000602082019050613e6a600083018461374e565b92915050565b6000613e7a613e8b565b9050613e868282614231565b919050565b6000604051905090565b600067ffffffffffffffff821115613eb057613eaf61434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613edc57613edb61434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613f0857613f0761434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613f3457613f3361434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613f6057613f5f61434f565b5b613f69826143a6565b9050602081019050919050565b600067ffffffffffffffff821115613f9157613f9061434f565b5b613f9a826143a6565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600061410c826141d0565b9150614117836141d0565b92508260ff0382111561412d5761412c614293565b5b828201905092915050565b6000614143826141bc565b915061414e836141bc565b92508261415e5761415d6142c2565b5b828204905092915050565b60008115159050919050565b6000819050919050565b600081905061418d82614da0565b919050565b600081600f0b9050919050565b60008160030b9050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b60006141e88261417f565b9050919050565b82818337600083830152505050565b60005b8381101561421c578082015181840152602081019050614201565b8381111561422b576000848401525b50505050565b61423a826143a6565b810181811067ffffffffffffffff821117156142595761425861434f565b5b80604052505050565b600061426d826141bc565b9150614278836141bc565b925082614288576142876142c2565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f20636f756c64206e6f74206265207265747269657665642e204661696c65642060008201527f776974682048545450206572726f7220636f64653a2000000000000000000000602082015250565b7f207374616765206973206e6f7420737570706f72746564000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206260008201527f797465732076616c75652066726f6d206572726f726564205769746e65742e5260208201527f6573756c74000000000000000000000000000000000000000000000000000000604082015250565b7f556e6b6e6f776e206572726f7220283078000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f696e743132385b5d602076616c75652066726f6d206572726f7265642057697460208201527f6e65742e526573756c7400000000000000000000000000000000000000000000604082015250565b7f556e646572666c6f77206174206f70657261746f7220636f6465203078000000600082015250565b7f2073746167650000000000000000000000000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f666978656431365b5d602076616c75652066726f6d206572726f72656420576960208201527f746e65742e526573756c74000000000000000000000000000000000000000000604082015250565b7f20776173206e6f7420612076616c69642043424f522076616c75650000000000600082015250565b7f4f70657261746f7220636f646520307800000000000000000000000000000000600082015250565b7f20636f756c64206e6f742062652072657472696576656420626563617573652060008201527f6f6620612074696d656f75740000000000000000000000000000000000000000602082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f696e74313238602076616c75652066726f6d206572726f726564205769746e6560208201527f742e526573756c74000000000000000000000000000000000000000000000000604082015250565b7f20696e2073637269707420230000000000000000000000000000000000000000600082015250565b7f2900000000000000000000000000000000000000000000000000000000000000600082015250565b7f2066726f6d200000000000000000000000000000000000000000000000000000600082015250565b7f536f757263652073637269707420230000000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f75696e743634602076616c75652066726f6d206572726f726564205769746e6560208201527f742e526573756c74000000000000000000000000000000000000000000000000604082015250565b7f20666f756e642061742063616c6c202300000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f75696e7436345b5d602076616c75652066726f6d206572726f7265642057697460208201527f6e65742e526573756c7400000000000000000000000000000000000000000000604082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f737472696e675b5d602076616c75652066726f6d206572726f7265642057697460208201527f6e65742e526573756c7400000000000000000000000000000000000000000000604082015250565b7f20737461676520636f6e7461696e656420746f6f206d616e792063616c6c732060008201527f2800000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e65745061727365724c69623a20747269656420746f2072656164206260008201527f7974657333322076616c75652066726f6d206572726f726564205769746e657460208201527f2e526573756c7400000000000000000000000000000000000000000000000000604082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f737472696e67602076616c75652066726f6d206572726f726564205769746e6560208201527f742e526573756c74000000000000000000000000000000000000000000000000604082015250565b7f5468652043424f522076616c756520696e207363726970742023000000000000600082015250565b7f4469766973696f6e206279207a65726f206174206f70657261746f7220636f6460008201527f6520307800000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206560008201527f72726f7220636f64652066726f6d207375636365737366756c205769746e657460208201527f2e526573756c7400000000000000000000000000000000000000000000000000604082015250565b7f4f766572666c6f77206174206f70657261746f7220636f646520307800000000600082015250565b7f20776173206e6f7420616e204172726179206f662063616c6c73000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f626f6f6c602076616c75652066726f6d206572726f726564205769746e65742e60208201527f526573756c740000000000000000000000000000000000000000000000000000604082015250565b7f20776173206e6f7420612076616c696420446174612052657175657374000000600082015250565b7f2066726f6d207468652000000000000000000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f66697865643136602076616c75652066726f6d206572726f726564205769746e60208201527f65742e526573756c740000000000000000000000000000000000000000000000604082015250565b7f546865207265717565737420636f6e7461696e656420746f6f206d616e79207360008201527f6f75726365732028000000000000000000000000000000000000000000000000602082015250565b7f5363726970742023000000000000000000000000000000000000000000000000600082015250565b7f536f757263652023000000000000000000000000000000000000000000000000600082015250565b6101008110614db257614db16142f1565b5b50565b614dbe81614169565b8114614dc957600080fd5b50565b614dd581614175565b8114614de057600080fd5b50565b614dec81614192565b8114614df757600080fd5b50565b614e038161419f565b8114614e0e57600080fd5b50565b614e1a816141ac565b8114614e2557600080fd5b50565b614e31816141bc565b8114614e3c57600080fd5b50565b614e48816141d0565b8114614e5357600080fd5b5056fe54686520737472756374757265206f6620746865207265717565737420697320696e76616c696420616e642069742063616e6e6f7420626520706172736564546865207265717565737420726573756c74206c656e677468206578636565647320612062726964676520636f6e747261637420646566696e6564206c696d6974546865207265717565737420686173206265656e2072656a65637465642062792074686520627269646765206e6f64652064756520746f20706f6f7220696e63656e7469766573a26469706673582212207c84347b582e34d3c229ca790843f11ad8ed7d0539a9ec821d76a66dc1e0331064736f6c63430008070033","opcodes":"PUSH2 0x4F53 PUSH2 0x53 PUSH1 0xB DUP3 DUP3 DUP3 CODECOPY DUP1 MLOAD PUSH1 0x0 BYTE PUSH1 0x73 EQ PUSH2 0x46 JUMPI PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x0 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST ADDRESS PUSH1 0x0 MSTORE PUSH1 0x73 DUP2 MSTORE8 DUP3 DUP2 RETURN INVALID PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x12B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA1D45D56 GT PUSH2 0xB7 JUMPI DUP1 PUSH4 0xD45D097D GT PUSH2 0x7B JUMPI DUP1 PUSH4 0xD45D097D EQ PUSH2 0x3D1 JUMPI DUP1 PUSH4 0xD8868DB6 EQ PUSH2 0x401 JUMPI DUP1 PUSH4 0xE99E47F3 EQ PUSH2 0x431 JUMPI DUP1 PUSH4 0xF417DAF5 EQ PUSH2 0x461 JUMPI DUP1 PUSH4 0xFC853C37 EQ PUSH2 0x491 JUMPI PUSH2 0x12B JUMP JUMPDEST DUP1 PUSH4 0xA1D45D56 EQ PUSH2 0x2E1 JUMPI DUP1 PUSH4 0xA2E87655 EQ PUSH2 0x311 JUMPI DUP1 PUSH4 0xABF82F4C EQ PUSH2 0x341 JUMPI DUP1 PUSH4 0xC71DB521 EQ PUSH2 0x371 JUMPI DUP1 PUSH4 0xCB5371C0 EQ PUSH2 0x3A1 JUMPI PUSH2 0x12B JUMP JUMPDEST DUP1 PUSH4 0x2D26B9E2 GT PUSH2 0xFE JUMPI DUP1 PUSH4 0x2D26B9E2 EQ PUSH2 0x1F0 JUMPI DUP1 PUSH4 0x6646C119 EQ PUSH2 0x220 JUMPI DUP1 PUSH4 0x8233F9B3 EQ PUSH2 0x250 JUMPI DUP1 PUSH4 0x8CC5EB54 EQ PUSH2 0x280 JUMPI DUP1 PUSH4 0xA1B90891 EQ PUSH2 0x2B1 JUMPI PUSH2 0x12B JUMP JUMPDEST DUP1 PUSH4 0x879730D EQ PUSH2 0x130 JUMPI DUP1 PUSH4 0x8EFC097 EQ PUSH2 0x160 JUMPI DUP1 PUSH4 0x130283EE EQ PUSH2 0x190 JUMPI DUP1 PUSH4 0x147E5C8F EQ PUSH2 0x1C0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x14A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x145 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x4C1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x157 SWAP2 SWAP1 PUSH2 0x3B74 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x175 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x187 SWAP2 SWAP1 PUSH2 0x3B30 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1A5 SWAP2 SWAP1 PUSH2 0x2C3D JUMP JUMPDEST PUSH2 0x680 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1B7 SWAP2 SWAP1 PUSH2 0x3E33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1DA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1D5 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x6BE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E7 SWAP2 SWAP1 PUSH2 0x3B74 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x205 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x79D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x217 SWAP2 SWAP1 PUSH2 0x3B52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x235 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x87C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x247 SWAP2 SWAP1 PUSH2 0x3B96 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x26A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x265 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x88A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x277 SWAP2 SWAP1 PUSH2 0x3E55 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x29A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x295 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x964 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2A8 SWAP3 SWAP2 SWAP1 PUSH2 0x3C09 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2CB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2C6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1390 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2D8 SWAP2 SWAP1 PUSH2 0x3BCC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2FB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x146F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x308 SWAP2 SWAP1 PUSH2 0x3B96 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x32B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x326 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x147E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x338 SWAP2 SWAP1 PUSH2 0x3BB1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x35B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x356 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1558 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x368 SWAP2 SWAP1 PUSH2 0x3B96 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 0x2CCF JUMP JUMPDEST PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x398 SWAP2 SWAP1 PUSH2 0x3C39 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B6 SWAP2 SWAP1 PUSH2 0x2D18 JUMP JUMPDEST PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3C8 SWAP2 SWAP1 PUSH2 0x3C6F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x183C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3F8 SWAP2 SWAP1 PUSH2 0x3BEE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x416 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x188B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x428 SWAP2 SWAP1 PUSH2 0x3C54 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x44B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x446 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST PUSH2 0x1965 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x458 SWAP2 SWAP1 PUSH2 0x3E33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x47B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x476 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1A55 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x488 SWAP2 SWAP1 PUSH2 0x3C6F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4AB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4A6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1B34 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4B8 SWAP2 SWAP1 PUSH2 0x3B0E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD ISZERO PUSH2 0x508 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4FF SWAP1 PUSH2 0x3DB1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xF8A597D3 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x545 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x55D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x571 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 0x59A SWAP2 SWAP1 PUSH2 0x2A61 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x5E7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5DE SWAP1 PUSH2 0x3CD1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x531F4BA7 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x624 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x63C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x650 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 0x679 SWAP2 SWAP1 PUSH2 0x29CF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x688 PUSH2 0x210C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x27 DUP4 PUSH1 0xA0 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP3 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP2 MSTORE POP SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x704 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6FB SWAP1 PUSH2 0x3D31 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xF8A597D3 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x741 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x759 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x76D 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 0x796 SWAP2 SWAP1 PUSH2 0x2A61 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x7E3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7DA SWAP1 PUSH2 0x3D51 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xC5E88FF2 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x820 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x838 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x84C 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 0x875 SWAP2 SWAP1 PUSH2 0x2A18 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x8D0 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8C7 SWAP1 PUSH2 0x3D11 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x7A8ACAB1 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x90D SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x925 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x939 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 0x95D SWAP2 SWAP1 PUSH2 0x2D45 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 PUSH2 0x973 DUP5 PUSH2 0x4C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD EQ ISZERO PUSH2 0x9C1 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1D DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x556E6B6E6F776E206572726F7220286E6F206572726F7220636F646529000000 DUP2 MSTORE POP SWAP3 POP SWAP3 POP POP PUSH2 0x138B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9E7 DUP3 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x9DA JUMPI PUSH2 0x9D9 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C13 JUMP JUMPDEST SWAP1 POP PUSH1 0x60 PUSH1 0x1 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x9FF JUMPI PUSH2 0x9FE PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xA12 JUMPI PUSH2 0xA11 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xA21 JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xA70 JUMPI PUSH2 0xA4A DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xA3D JUMPI PUSH2 0xA3C PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA5A SWAP2 SWAP1 PUSH2 0x3892 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1381 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xA84 JUMPI PUSH2 0xA83 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xA97 JUMPI PUSH2 0xA96 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xAA6 JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xAF5 JUMPI PUSH2 0xACF DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xAC2 JUMPI PUSH2 0xAC1 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xADF SWAP2 SWAP1 PUSH2 0x38BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1380 JUMP JUMPDEST PUSH1 0x3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xB09 JUMPI PUSH2 0xB08 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xB1C JUMPI PUSH2 0xB1B PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xB2B JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xB7A JUMPI PUSH2 0xB54 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xB47 JUMPI PUSH2 0xB46 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB64 SWAP2 SWAP1 PUSH2 0x38EC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137F JUMP JUMPDEST PUSH1 0x10 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xB8E JUMPI PUSH2 0xB8D PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xBA1 JUMPI PUSH2 0xBA0 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xBB0 JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xBFF JUMPI PUSH2 0xBD9 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xBCC JUMPI PUSH2 0xBCB PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBE9 SWAP2 SWAP1 PUSH2 0x3A03 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137E JUMP JUMPDEST PUSH1 0x11 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xC13 JUMPI PUSH2 0xC12 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xC26 JUMPI PUSH2 0xC25 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xC35 JUMPI POP PUSH1 0x4 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xCCE JUMPI PUSH2 0xC5E DUP4 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xC51 JUMPI PUSH2 0xC50 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xC82 DUP5 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xC75 JUMPI PUSH2 0xC74 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH2 0xCA6 DUP6 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0xC99 JUMPI PUSH2 0xC98 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xCB8 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3A30 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137D JUMP JUMPDEST PUSH1 0x20 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xCE2 JUMPI PUSH2 0xCE1 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xCF5 JUMPI PUSH2 0xCF4 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xD04 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xDC2 JUMPI PUSH2 0xD2D DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0xD20 JUMPI PUSH2 0xD1F PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0xD51 DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0xD44 JUMPI PUSH2 0xD43 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xD75 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xD68 JUMPI PUSH2 0xD67 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xD99 DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xD8C JUMPI PUSH2 0xD8B PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xDAC SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x381D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137C JUMP JUMPDEST PUSH1 0x30 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xDD6 JUMPI PUSH2 0xDD5 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xDE9 JUMPI PUSH2 0xDE8 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xDF8 JUMPI POP PUSH1 0x3 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xEE6 JUMPI PUSH2 0xE21 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xE14 JUMPI PUSH2 0xE13 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xE51 PUSH1 0x64 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xE3A JUMPI PUSH2 0xE39 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0xE4C SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xE8D PUSH1 0xA PUSH1 0x64 DUP8 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xE6C JUMPI PUSH2 0xE6B PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0xE7E SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0xE88 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xEBD PUSH1 0xA DUP8 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xEA6 JUMPI PUSH2 0xEA5 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0xEB8 SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xED0 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3A8D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137B JUMP JUMPDEST PUSH1 0x31 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xEFA JUMPI PUSH2 0xEF9 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xF0D JUMPI PUSH2 0xF0C PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xF1C JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xF6B JUMPI PUSH2 0xF45 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xF38 JUMPI PUSH2 0xF37 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xF55 SWAP2 SWAP1 PUSH2 0x3AE1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137A JUMP JUMPDEST PUSH1 0x40 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xF7F JUMPI PUSH2 0xF7E PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xF92 JUMPI PUSH2 0xF91 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xFA1 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0x105F JUMPI PUSH2 0xFCA DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0xFBD JUMPI PUSH2 0xFBC PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0xFEE DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0xFE1 JUMPI PUSH2 0xFE0 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x1012 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x1005 JUMPI PUSH2 0x1004 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x1036 DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1029 JUMPI PUSH2 0x1028 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1049 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x37A8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1379 JUMP JUMPDEST PUSH1 0x41 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1073 JUMPI PUSH2 0x1072 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1086 JUMPI PUSH2 0x1085 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0x1095 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0x1153 JUMPI PUSH2 0x10BE DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0x10B1 JUMPI PUSH2 0x10B0 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0x10E2 DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0x10D5 JUMPI PUSH2 0x10D4 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x1106 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x10F9 JUMPI PUSH2 0x10F8 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x112A DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x111D JUMPI PUSH2 0x111C PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x113D SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x398E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1378 JUMP JUMPDEST PUSH1 0x42 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1167 JUMPI PUSH2 0x1166 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x117A JUMPI PUSH2 0x1179 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0x1189 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0x1247 JUMPI PUSH2 0x11B2 DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0x11A5 JUMPI PUSH2 0x11A4 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0x11D6 DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0x11C9 JUMPI PUSH2 0x11C8 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x11FA DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x11ED JUMPI PUSH2 0x11EC PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x121E DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1211 JUMPI PUSH2 0x1210 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1231 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3919 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1377 JUMP JUMPDEST PUSH1 0xE0 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x125B JUMPI PUSH2 0x125A PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x126E JUMPI PUSH2 0x126D PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x1294 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x3F DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4E57 PUSH1 0x3F SWAP2 CODECOPY SWAP1 POP PUSH2 0x1376 JUMP JUMPDEST PUSH1 0xE1 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x12A8 JUMPI PUSH2 0x12A7 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x12BB JUMPI PUSH2 0x12BA PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x12E1 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x47 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4ED7 PUSH1 0x47 SWAP2 CODECOPY SWAP1 POP PUSH2 0x1375 JUMP JUMPDEST PUSH1 0xE2 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x12F5 JUMPI PUSH2 0x12F4 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1308 JUMPI PUSH2 0x1307 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x132E JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x41 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4E96 PUSH1 0x41 SWAP2 CODECOPY SWAP1 POP PUSH2 0x1374 JUMP JUMPDEST PUSH2 0x1352 DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1345 JUMPI PUSH2 0x1344 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1362 SWAP2 SWAP1 PUSH2 0x377B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST DUP2 DUP2 SWAP5 POP SWAP5 POP POP POP POP JUMPDEST SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x13D6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13CD SWAP1 PUSH2 0x3C91 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xBB6EF6CF SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1413 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x142B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x143F 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 0x1468 SWAP2 SWAP1 PUSH2 0x2B51 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x14C4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14BB SWAP1 PUSH2 0x3D71 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x8C05C33 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1501 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1519 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x152D 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 0x1551 SWAP2 SWAP1 PUSH2 0x2AD7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x159E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1595 SWAP1 PUSH2 0x3DD1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x9EEE60CA SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15DB SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x15F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1607 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 0x162B SWAP2 SWAP1 PUSH2 0x2AAA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x1678 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x166F SWAP1 PUSH2 0x3CF1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x94863EA4 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16B5 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x16CD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x16E1 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 0x1705 SWAP2 SWAP1 PUSH2 0x2B9A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x175E JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x72657472696576616C0000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP PUSH2 0x1837 JUMP JUMPDEST PUSH1 0x1 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x17AE JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x6167677265676174696F6E000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP PUSH2 0x1837 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x17FE JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x74616C6C79000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP PUSH2 0x1837 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x756E6B6E6F776E00000000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1848 DUP4 PUSH2 0x4C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD EQ ISZERO PUSH2 0x185E JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1886 JUMP JUMPDEST PUSH2 0x1882 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1875 JUMPI PUSH2 0x1874 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C13 JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x18D1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x18C8 SWAP1 PUSH2 0x3DF1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x8138799A SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x190E SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1926 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x193A 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 0x195E SWAP2 SWAP1 PUSH2 0x2BC7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x196D PUSH2 0x210C JUMP JUMPDEST PUSH1 0x0 DUP4 DUP4 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH20 0x0 PUSH4 0xDFCA5D34 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19EC SWAP2 SWAP1 PUSH2 0x3BCC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1A04 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1A18 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 0x1A41 SWAP2 SWAP1 PUSH2 0x2C86 JUMP JUMPDEST SWAP1 POP PUSH2 0x1A4C DUP2 PUSH2 0x680 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x1A9B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A92 SWAP1 PUSH2 0x3D91 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xE67C5BD1 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AD8 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1AF0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1B04 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 0x1B2D SWAP2 SWAP1 PUSH2 0x2BF4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x1B7A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B71 SWAP1 PUSH2 0x3CB1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x3380D816 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1BB7 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1BCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1BE3 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 0x1C0C SWAP2 SWAP1 PUSH2 0x2986 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1C32 JUMPI PUSH2 0x1C31 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xA DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1CFC JUMPI PUSH1 0x0 PUSH1 0x1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C6B JUMPI PUSH2 0x1C6A PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1C9D JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x30 DUP4 PUSH2 0x1CAD SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1CC4 JUMPI PUSH2 0x1CC3 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP2 POP POP PUSH2 0x1FA8 JUMP JUMPDEST PUSH1 0x64 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1E28 JUMPI PUSH1 0x0 PUSH1 0x2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D2C JUMPI PUSH2 0x1D2B PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1D5E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x30 PUSH1 0xA DUP5 PUSH2 0x1D70 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1D7A SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1D91 JUMPI PUSH2 0x1D90 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x30 PUSH1 0xA DUP5 PUSH2 0x1DCF SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1DD9 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1DF0 JUMPI PUSH2 0x1DEF PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP2 POP POP PUSH2 0x1FA8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E45 JUMPI PUSH2 0x1E44 PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1E77 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x30 PUSH1 0x64 DUP5 PUSH2 0x1E89 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1E93 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1EAA JUMPI PUSH2 0x1EA9 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x30 PUSH1 0xA PUSH1 0x64 DUP6 PUSH2 0x1EEA SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1EF4 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1EFE SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1F15 JUMPI PUSH2 0x1F14 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x30 PUSH1 0xA DUP5 PUSH2 0x1F53 SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1F5D SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x1F74 JUMPI PUSH2 0x1F73 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1FCC JUMPI PUSH2 0x1FCB PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1FFE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 PUSH1 0x30 PUSH1 0x10 DUP6 PUSH2 0x2012 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x201C SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x30 PUSH1 0x10 DUP7 PUSH2 0x202F SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x2039 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP1 POP PUSH1 0x39 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x2057 JUMPI PUSH1 0x7 DUP3 PUSH2 0x2054 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x39 DUP2 PUSH1 0xFF AND GT ISZERO PUSH2 0x2073 JUMPI PUSH1 0x7 DUP2 PUSH2 0x2070 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP1 POP JUMPDEST DUP2 PUSH1 0xF8 SHL DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x208B JUMPI PUSH2 0x208A PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 PUSH1 0xF8 SHL DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x20D2 JUMPI PUSH2 0x20D1 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP3 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x2128 PUSH2 0x212E JUMP JUMPDEST DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x2141 PUSH2 0x2187 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21BA PUSH2 0x21B5 DUP5 PUSH2 0x3E95 JUMP JUMPDEST PUSH2 0x3E70 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 0x21DD JUMPI PUSH2 0x21DC PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x220D JUMPI DUP2 PUSH2 0x21F3 DUP9 DUP3 PUSH2 0x25F4 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x21E0 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x222A PUSH2 0x2225 DUP5 PUSH2 0x3EC1 JUMP JUMPDEST PUSH2 0x3E70 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 0x224D JUMPI PUSH2 0x224C PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x227D JUMPI DUP2 PUSH2 0x2263 DUP9 DUP3 PUSH2 0x2609 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2250 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x229A PUSH2 0x2295 DUP5 PUSH2 0x3EED JUMP JUMPDEST PUSH2 0x3E70 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 0x22BD JUMPI PUSH2 0x22BC PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x230B JUMPI DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x22E3 JUMPI PUSH2 0x22E2 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x22F0 DUP10 DUP3 PUSH2 0x261E JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP5 ADD SWAP4 POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x22C0 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2328 PUSH2 0x2323 DUP5 PUSH2 0x3F19 JUMP JUMPDEST PUSH2 0x3E70 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 0x234B JUMPI PUSH2 0x234A PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x237B JUMPI DUP2 PUSH2 0x2361 DUP9 DUP3 PUSH2 0x2947 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x234E JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2398 PUSH2 0x2393 DUP5 PUSH2 0x3F45 JUMP JUMPDEST PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x23B4 JUMPI PUSH2 0x23B3 PUSH2 0x4397 JUMP JUMPDEST JUMPDEST PUSH2 0x23BF DUP5 DUP3 DUP6 PUSH2 0x41EF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23DA PUSH2 0x23D5 DUP5 PUSH2 0x3F45 JUMP JUMPDEST PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x23F6 JUMPI PUSH2 0x23F5 PUSH2 0x4397 JUMP JUMPDEST JUMPDEST PUSH2 0x2401 DUP5 DUP3 DUP6 PUSH2 0x41FE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x241C PUSH2 0x2417 DUP5 PUSH2 0x3F76 JUMP JUMPDEST PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2438 JUMPI PUSH2 0x2437 PUSH2 0x4397 JUMP JUMPDEST JUMPDEST PUSH2 0x2443 DUP5 DUP3 DUP6 PUSH2 0x41FE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2460 JUMPI PUSH2 0x245F PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2470 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x21A7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x248E JUMPI PUSH2 0x248D PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x249E DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2217 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x24BC JUMPI PUSH2 0x24BB PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x24CC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2287 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x24EA JUMPI PUSH2 0x24E9 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x24FA DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2315 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2512 DUP2 PUSH2 0x4DB5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2527 DUP2 PUSH2 0x4DB5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x253C DUP2 PUSH2 0x4DCC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2558 JUMPI PUSH2 0x2557 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2575 JUMPI PUSH2 0x2574 PUSH2 0x437E JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x2591 JUMPI PUSH2 0x2590 PUSH2 0x4392 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x25AD JUMPI PUSH2 0x25AC PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x25BD DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2385 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x25DB JUMPI PUSH2 0x25DA PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x25EB DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x23C7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2603 DUP2 PUSH2 0x4DE3 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2618 DUP2 PUSH2 0x4DFA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2633 JUMPI PUSH2 0x2632 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2643 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2409 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2662 JUMPI PUSH2 0x2661 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x266C PUSH1 0x40 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x268C JUMPI PUSH2 0x268B PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x2698 DUP5 DUP3 DUP6 ADD PUSH2 0x2598 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x26AC DUP5 DUP3 DUP6 ADD PUSH2 0x2908 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x26CE JUMPI PUSH2 0x26CD PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x26D8 PUSH1 0x40 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x26F8 JUMPI PUSH2 0x26F7 PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x2704 DUP5 DUP3 DUP6 ADD PUSH2 0x25C6 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x2718 DUP5 DUP3 DUP6 ADD PUSH2 0x291D JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x273A JUMPI PUSH2 0x2739 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x2744 PUSH1 0xC0 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2764 JUMPI PUSH2 0x2763 PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x2770 DUP5 DUP3 DUP6 ADD PUSH2 0x264C JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x2784 DUP5 DUP3 DUP6 ADD PUSH2 0x295C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x2798 DUP5 DUP3 DUP6 ADD PUSH2 0x295C JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x27AC DUP5 DUP3 DUP6 ADD PUSH2 0x295C JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x27C0 DUP5 DUP3 DUP6 ADD PUSH2 0x2932 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x27D4 DUP5 DUP3 DUP6 ADD PUSH2 0x2932 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x27F6 JUMPI PUSH2 0x27F5 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x2800 PUSH1 0xC0 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2820 JUMPI PUSH2 0x281F PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x282C DUP5 DUP3 DUP6 ADD PUSH2 0x26B8 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x2840 DUP5 DUP3 DUP6 ADD PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x2854 DUP5 DUP3 DUP6 ADD PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x2868 DUP5 DUP3 DUP6 ADD PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x287C DUP5 DUP3 DUP6 ADD PUSH2 0x2947 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x2890 DUP5 DUP3 DUP6 ADD PUSH2 0x2947 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x28B2 JUMPI PUSH2 0x28B1 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x28BC PUSH1 0x40 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x28CC DUP5 DUP3 DUP6 ADD PUSH2 0x2503 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x28F0 JUMPI PUSH2 0x28EF PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x28FC DUP5 DUP3 DUP6 ADD PUSH2 0x2724 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2917 DUP2 PUSH2 0x4E11 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x292C DUP2 PUSH2 0x4E11 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2941 DUP2 PUSH2 0x4E28 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2956 DUP2 PUSH2 0x4E28 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x296B DUP2 PUSH2 0x4E3F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2980 DUP2 PUSH2 0x4E3F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x299C JUMPI PUSH2 0x299B PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x29BA JUMPI PUSH2 0x29B9 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x29C6 DUP5 DUP3 DUP6 ADD PUSH2 0x244B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x29E5 JUMPI PUSH2 0x29E4 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2A03 JUMPI PUSH2 0x2A02 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2A0F DUP5 DUP3 DUP6 ADD PUSH2 0x2479 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2A2E JUMPI PUSH2 0x2A2D PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2A4C JUMPI PUSH2 0x2A4B PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2A58 DUP5 DUP3 DUP6 ADD PUSH2 0x24A7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2A77 JUMPI PUSH2 0x2A76 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2A95 JUMPI PUSH2 0x2A94 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2AA1 DUP5 DUP3 DUP6 ADD PUSH2 0x24D5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2AC0 JUMPI PUSH2 0x2ABF PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2ACE DUP5 DUP3 DUP6 ADD PUSH2 0x2518 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2AED JUMPI PUSH2 0x2AEC PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2AFB DUP5 DUP3 DUP6 ADD PUSH2 0x252D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2B1B JUMPI PUSH2 0x2B1A PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2B39 JUMPI PUSH2 0x2B38 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2B45 DUP6 DUP3 DUP7 ADD PUSH2 0x2542 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2B67 JUMPI PUSH2 0x2B66 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2B85 JUMPI PUSH2 0x2B84 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2B91 DUP5 DUP3 DUP6 ADD PUSH2 0x25C6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BB0 JUMPI PUSH2 0x2BAF PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2BBE DUP5 DUP3 DUP6 ADD PUSH2 0x25F4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BDD JUMPI PUSH2 0x2BDC PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2BEB DUP5 DUP3 DUP6 ADD PUSH2 0x2609 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2C0A JUMPI PUSH2 0x2C09 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2C28 JUMPI PUSH2 0x2C27 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2C34 DUP5 DUP3 DUP6 ADD PUSH2 0x261E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2C53 JUMPI PUSH2 0x2C52 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2C71 JUMPI PUSH2 0x2C70 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2C7D DUP5 DUP3 DUP6 ADD PUSH2 0x2724 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2C9C JUMPI PUSH2 0x2C9B PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2CBA JUMPI PUSH2 0x2CB9 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2CC6 DUP5 DUP3 DUP6 ADD PUSH2 0x27E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2CE5 JUMPI PUSH2 0x2CE4 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2D03 JUMPI PUSH2 0x2D02 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2D0F DUP5 DUP3 DUP6 ADD PUSH2 0x289C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D2E JUMPI PUSH2 0x2D2D PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2D3C DUP5 DUP3 DUP6 ADD PUSH2 0x2932 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D5B JUMPI PUSH2 0x2D5A PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2D69 DUP5 DUP3 DUP6 ADD PUSH2 0x2947 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D7E DUP4 DUP4 PUSH2 0x301A JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D96 DUP4 DUP4 PUSH2 0x3038 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DAE DUP4 DUP4 PUSH2 0x3080 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DC2 DUP4 DUP4 PUSH2 0x375D JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DD9 DUP3 PUSH2 0x3FE7 JUMP JUMPDEST PUSH2 0x2DE3 DUP2 DUP6 PUSH2 0x405D JUMP JUMPDEST SWAP4 POP PUSH2 0x2DEE DUP4 PUSH2 0x3FA7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2E1F JUMPI DUP2 MLOAD PUSH2 0x2E06 DUP9 DUP3 PUSH2 0x2D72 JUMP JUMPDEST SWAP8 POP PUSH2 0x2E11 DUP4 PUSH2 0x4029 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2DF2 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E37 DUP3 PUSH2 0x3FF2 JUMP JUMPDEST PUSH2 0x2E41 DUP2 DUP6 PUSH2 0x406E JUMP JUMPDEST SWAP4 POP PUSH2 0x2E4C DUP4 PUSH2 0x3FB7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2E7D JUMPI DUP2 MLOAD PUSH2 0x2E64 DUP9 DUP3 PUSH2 0x2D8A JUMP JUMPDEST SWAP8 POP PUSH2 0x2E6F DUP4 PUSH2 0x4036 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2E50 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E95 DUP3 PUSH2 0x3FFD JUMP JUMPDEST PUSH2 0x2E9F DUP2 DUP6 PUSH2 0x407F JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2EB1 DUP6 PUSH2 0x3FC7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x2EED JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x2ECE DUP6 DUP3 PUSH2 0x2DA2 JUMP JUMPDEST SWAP5 POP PUSH2 0x2ED9 DUP4 PUSH2 0x4043 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2EB5 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F0A DUP3 PUSH2 0x4008 JUMP JUMPDEST PUSH2 0x2F14 DUP2 DUP6 PUSH2 0x4090 JUMP JUMPDEST SWAP4 POP PUSH2 0x2F1F DUP4 PUSH2 0x3FD7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2F50 JUMPI DUP2 MLOAD PUSH2 0x2F37 DUP9 DUP3 PUSH2 0x2DB6 JUMP JUMPDEST SWAP8 POP PUSH2 0x2F42 DUP4 PUSH2 0x4050 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2F23 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2F66 DUP2 PUSH2 0x4169 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2F75 DUP2 PUSH2 0x4169 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2F84 DUP2 PUSH2 0x4175 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F95 DUP3 PUSH2 0x4013 JUMP JUMPDEST PUSH2 0x2F9F DUP2 DUP6 PUSH2 0x40A1 JUMP JUMPDEST SWAP4 POP PUSH2 0x2FAF DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x2FB8 DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2FCE DUP3 PUSH2 0x4013 JUMP JUMPDEST PUSH2 0x2FD8 DUP2 DUP6 PUSH2 0x40B2 JUMP JUMPDEST SWAP4 POP PUSH2 0x2FE8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x2FF1 DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3005 DUP2 PUSH2 0x41DD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3014 DUP2 PUSH2 0x4192 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3023 DUP2 PUSH2 0x4192 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3032 DUP2 PUSH2 0x419F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3041 DUP2 PUSH2 0x419F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3052 DUP3 PUSH2 0x401E JUMP JUMPDEST PUSH2 0x305C DUP2 DUP6 PUSH2 0x40D4 JUMP JUMPDEST SWAP4 POP PUSH2 0x306C DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x3075 DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x308B DUP3 PUSH2 0x401E JUMP JUMPDEST PUSH2 0x3095 DUP2 DUP6 PUSH2 0x40E5 JUMP JUMPDEST SWAP4 POP PUSH2 0x30A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x30AE DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C4 DUP3 PUSH2 0x401E JUMP JUMPDEST PUSH2 0x30CE DUP2 DUP6 PUSH2 0x40F6 JUMP JUMPDEST SWAP4 POP PUSH2 0x30DE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30F7 PUSH1 0x36 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3102 DUP3 PUSH2 0x43B7 JUMP JUMPDEST PUSH1 0x36 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x311A PUSH1 0x17 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3125 DUP3 PUSH2 0x4406 JUMP JUMPDEST PUSH1 0x17 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x313D PUSH1 0x45 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3148 DUP3 PUSH2 0x442F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3160 PUSH1 0x11 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x316B DUP3 PUSH2 0x44A4 JUMP JUMPDEST PUSH1 0x11 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3183 PUSH1 0x4A DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x318E DUP3 PUSH2 0x44CD JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31A6 PUSH1 0x1D DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x31B1 DUP3 PUSH2 0x4542 JUMP JUMPDEST PUSH1 0x1D DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31C9 PUSH1 0x6 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x31D4 DUP3 PUSH2 0x456B JUMP JUMPDEST PUSH1 0x6 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31EC PUSH1 0x4B DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x31F7 DUP3 PUSH2 0x4594 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x320F PUSH1 0x1B DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x321A DUP3 PUSH2 0x4609 JUMP JUMPDEST PUSH1 0x1B DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3232 PUSH1 0x10 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x323D DUP3 PUSH2 0x4632 JUMP JUMPDEST PUSH1 0x10 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3255 PUSH1 0x2C DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3260 DUP3 PUSH2 0x465B JUMP JUMPDEST PUSH1 0x2C DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3278 PUSH1 0x48 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3283 DUP3 PUSH2 0x46AA JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x329B PUSH1 0xC DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x32A6 DUP3 PUSH2 0x471F JUMP JUMPDEST PUSH1 0xC DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32BE PUSH1 0x1 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x32C9 DUP3 PUSH2 0x4748 JUMP JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32E1 PUSH1 0x6 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x32EC DUP3 PUSH2 0x4771 JUMP JUMPDEST PUSH1 0x6 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3304 PUSH1 0xF DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x330F DUP3 PUSH2 0x479A JUMP JUMPDEST PUSH1 0xF DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3327 PUSH1 0x48 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3332 DUP3 PUSH2 0x47C3 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x334A PUSH1 0x10 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3355 DUP3 PUSH2 0x4838 JUMP JUMPDEST PUSH1 0x10 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x336D PUSH1 0x4A DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3378 DUP3 PUSH2 0x4861 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3390 PUSH1 0x4A DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x339B DUP3 PUSH2 0x48D6 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33B3 PUSH1 0x21 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x33BE DUP3 PUSH2 0x494B JUMP JUMPDEST PUSH1 0x21 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33D6 PUSH1 0x47 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x33E1 DUP3 PUSH2 0x499A JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33F9 PUSH1 0x48 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3404 DUP3 PUSH2 0x4A0F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x341C PUSH1 0x1A DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3427 DUP3 PUSH2 0x4A84 JUMP JUMPDEST PUSH1 0x1A DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x343F PUSH1 0x24 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x344A DUP3 PUSH2 0x4AAD JUMP JUMPDEST PUSH1 0x24 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3462 PUSH1 0x47 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x346D DUP3 PUSH2 0x4AFC JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3485 PUSH1 0x1C DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3490 DUP3 PUSH2 0x4B71 JUMP JUMPDEST PUSH1 0x1C DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34A8 PUSH1 0x1A DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x34B3 DUP3 PUSH2 0x4B9A JUMP JUMPDEST PUSH1 0x1A DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34CB PUSH1 0x46 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x34D6 DUP3 PUSH2 0x4BC3 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34EE PUSH1 0x1D DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x34F9 DUP3 PUSH2 0x4C38 JUMP JUMPDEST PUSH1 0x1D DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3511 PUSH1 0xA DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x351C DUP3 PUSH2 0x4C61 JUMP JUMPDEST PUSH1 0xA DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3534 PUSH1 0x49 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x353F DUP3 PUSH2 0x4C8A JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3557 PUSH1 0x28 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3562 DUP3 PUSH2 0x4CFF JUMP JUMPDEST PUSH1 0x28 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x357A PUSH1 0x8 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3585 DUP3 PUSH2 0x4D4E JUMP JUMPDEST PUSH1 0x8 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x359D PUSH1 0x8 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x35A8 DUP3 PUSH2 0x4D77 JUMP JUMPDEST PUSH1 0x8 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x35D0 DUP3 DUP3 PUSH2 0x2FC3 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x35E5 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x373F JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x360D DUP3 DUP3 PUSH2 0x35B3 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x3622 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x3635 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x3648 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x365B PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x366E PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x3696 DUP3 DUP3 PUSH2 0x35B3 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x36AB PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x36BE PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x36D1 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x36E4 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x36F7 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x371A PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x2F6C JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x3732 DUP3 DUP3 PUSH2 0x3679 JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3748 DUP2 PUSH2 0x41AC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3757 DUP2 PUSH2 0x41BC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3766 DUP2 PUSH2 0x41BC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3775 DUP2 PUSH2 0x41D0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3786 DUP3 PUSH2 0x3153 JUMP JUMPDEST SWAP2 POP PUSH2 0x3792 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x379D DUP3 PUSH2 0x32B1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x37B3 DUP3 PUSH2 0x3199 JUMP JUMPDEST SWAP2 POP PUSH2 0x37BF DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x37CA DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x37D6 DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x37E1 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x37ED DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x37F8 DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x3804 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x380F DUP3 PUSH2 0x31BC JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3828 DUP3 PUSH2 0x3225 JUMP JUMPDEST SWAP2 POP PUSH2 0x3834 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x383F DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x384B DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3856 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x3862 DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x386D DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x3879 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3884 DUP3 PUSH2 0x310D JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x389D DUP3 PUSH2 0x32F7 JUMP JUMPDEST SWAP2 POP PUSH2 0x38A9 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x38B4 DUP3 PUSH2 0x3202 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x38CA DUP3 PUSH2 0x340F JUMP JUMPDEST SWAP2 POP PUSH2 0x38D6 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x38E1 DUP3 PUSH2 0x349B JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x38F7 DUP3 PUSH2 0x340F JUMP JUMPDEST SWAP2 POP PUSH2 0x3903 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x390E DUP3 PUSH2 0x34E1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3924 DUP3 PUSH2 0x3432 JUMP JUMPDEST SWAP2 POP PUSH2 0x3930 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x393B DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x3947 DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3952 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x395E DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3969 DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x3975 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3980 DUP3 PUSH2 0x31BC JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3999 DUP3 PUSH2 0x3478 JUMP JUMPDEST SWAP2 POP PUSH2 0x39A5 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39B0 DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x39BC DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39C7 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x39D3 DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39DE DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x39EA DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39F5 DUP3 PUSH2 0x31BC JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A0E DUP3 PUSH2 0x354A JUMP JUMPDEST SWAP2 POP PUSH2 0x3A1A DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A25 DUP3 PUSH2 0x32B1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A3B DUP3 PUSH2 0x356D JUMP JUMPDEST SWAP2 POP PUSH2 0x3A47 DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A52 DUP3 PUSH2 0x3504 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A5E DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A69 DUP3 PUSH2 0x33A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A75 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A80 DUP3 PUSH2 0x32B1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A98 DUP3 PUSH2 0x3590 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AA4 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AAF DUP3 PUSH2 0x30EA JUMP JUMPDEST SWAP2 POP PUSH2 0x3ABB DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AC7 DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AD3 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3AEC DUP3 PUSH2 0x3590 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AF8 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3B03 DUP3 PUSH2 0x3248 JUMP JUMPDEST SWAP2 POP DUP2 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 0x3B28 DUP2 DUP5 PUSH2 0x2DCE 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 0x3B4A DUP2 DUP5 PUSH2 0x2E2C 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 0x3B6C DUP2 DUP5 PUSH2 0x2E8A 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 0x3B8E DUP2 DUP5 PUSH2 0x2EFF JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3BAB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2F5D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3BC6 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2F7B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3BE6 DUP2 DUP5 PUSH2 0x2F8A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C03 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2FFC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x3C1E PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2FFC JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x3C30 DUP2 DUP5 PUSH2 0x3047 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C4E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x300B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C69 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3029 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3C89 DUP2 DUP5 PUSH2 0x3047 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 0x3CAA DUP2 PUSH2 0x3130 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 0x3CCA DUP2 PUSH2 0x3176 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 0x3CEA DUP2 PUSH2 0x31DF 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 0x3D0A DUP2 PUSH2 0x326B 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 0x3D2A DUP2 PUSH2 0x331A 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 0x3D4A DUP2 PUSH2 0x3360 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 0x3D6A DUP2 PUSH2 0x3383 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 0x3D8A DUP2 PUSH2 0x33C9 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 0x3DAA DUP2 PUSH2 0x33EC 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 0x3DCA DUP2 PUSH2 0x3455 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 0x3DEA DUP2 PUSH2 0x34BE 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 0x3E0A DUP2 PUSH2 0x3527 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 0x3E2B DUP2 DUP5 PUSH2 0x35F0 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 0x3E4D DUP2 DUP5 PUSH2 0x3702 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3E6A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x374E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3E7A PUSH2 0x3E8B JUMP JUMPDEST SWAP1 POP PUSH2 0x3E86 DUP3 DUP3 PUSH2 0x4231 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 0x3EB0 JUMPI PUSH2 0x3EAF PUSH2 0x434F 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 0x3EDC JUMPI PUSH2 0x3EDB PUSH2 0x434F 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 0x3F08 JUMPI PUSH2 0x3F07 PUSH2 0x434F 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 0x3F34 JUMPI PUSH2 0x3F33 PUSH2 0x434F 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 0x3F60 JUMPI PUSH2 0x3F5F PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH2 0x3F69 DUP3 PUSH2 0x43A6 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x3F91 JUMPI PUSH2 0x3F90 PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH2 0x3F9A DUP3 PUSH2 0x43A6 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 SWAP1 POP PUSH1 0x20 DUP3 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 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 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 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD 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 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 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 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x410C DUP3 PUSH2 0x41D0 JUMP JUMPDEST SWAP2 POP PUSH2 0x4117 DUP4 PUSH2 0x41D0 JUMP JUMPDEST SWAP3 POP DUP3 PUSH1 0xFF SUB DUP3 GT ISZERO PUSH2 0x412D JUMPI PUSH2 0x412C PUSH2 0x4293 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4143 DUP3 PUSH2 0x41BC JUMP JUMPDEST SWAP2 POP PUSH2 0x414E DUP4 PUSH2 0x41BC JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x415E JUMPI PUSH2 0x415D PUSH2 0x42C2 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP 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 PUSH2 0x418D DUP3 PUSH2 0x4DA0 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x3 SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x41E8 DUP3 PUSH2 0x417F JUMP JUMPDEST 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 0x421C JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4201 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x422B JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x423A DUP3 PUSH2 0x43A6 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x4259 JUMPI PUSH2 0x4258 PUSH2 0x434F JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x426D DUP3 PUSH2 0x41BC JUMP JUMPDEST SWAP2 POP PUSH2 0x4278 DUP4 PUSH2 0x41BC JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x4288 JUMPI PUSH2 0x4287 PUSH2 0x42C2 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MOD SWAP1 POP SWAP3 SWAP2 POP 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 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x20636F756C64206E6F74206265207265747269657665642E204661696C656420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x776974682048545450206572726F7220636F64653A2000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x207374616765206973206E6F7420737570706F72746564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x797465732076616C75652066726F6D206572726F726564205769746E65742E52 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6573756C74000000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x556E6B6E6F776E206572726F7220283078000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x696E743132385B5D602076616C75652066726F6D206572726F72656420576974 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6E65742E526573756C7400000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x556E646572666C6F77206174206F70657261746F7220636F6465203078000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2073746167650000000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x666978656431365B5D602076616C75652066726F6D206572726F726564205769 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x746E65742E526573756C74000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20776173206E6F7420612076616C69642043424F522076616C75650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F70657261746F7220636F646520307800000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20636F756C64206E6F7420626520726574726965766564206265636175736520 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F6620612074696D656F75740000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x696E74313238602076616C75652066726F6D206572726F726564205769746E65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x742E526573756C74000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20696E2073637269707420230000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2900000000000000000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2066726F6D200000000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x536F757263652073637269707420230000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x75696E743634602076616C75652066726F6D206572726F726564205769746E65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x742E526573756C74000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20666F756E642061742063616C6C202300000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x75696E7436345B5D602076616C75652066726F6D206572726F72656420576974 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6E65742E526573756C7400000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x737472696E675B5D602076616C75652066726F6D206572726F72656420576974 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6E65742E526573756C7400000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20737461676520636F6E7461696E656420746F6F206D616E792063616C6C7320 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2800000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20747269656420746F20726561642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7974657333322076616C75652066726F6D206572726F726564205769746E6574 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x2E526573756C7400000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x737472696E67602076616C75652066726F6D206572726F726564205769746E65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x742E526573756C74000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5468652043424F522076616C756520696E207363726970742023000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4469766973696F6E206279207A65726F206174206F70657261746F7220636F64 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6520307800000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72726F7220636F64652066726F6D207375636365737366756C205769746E6574 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x2E526573756C7400000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F766572666C6F77206174206F70657261746F7220636F646520307800000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20776173206E6F7420616E204172726179206F662063616C6C73000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x626F6F6C602076616C75652066726F6D206572726F726564205769746E65742E PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x526573756C740000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20776173206E6F7420612076616C696420446174612052657175657374000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2066726F6D207468652000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x66697865643136602076616C75652066726F6D206572726F726564205769746E PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x65742E526573756C740000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x546865207265717565737420636F6E7461696E656420746F6F206D616E792073 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F75726365732028000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5363726970742023000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x536F757263652023000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x100 DUP2 LT PUSH2 0x4DB2 JUMPI PUSH2 0x4DB1 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH2 0x4DBE DUP2 PUSH2 0x4169 JUMP JUMPDEST DUP2 EQ PUSH2 0x4DC9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4DD5 DUP2 PUSH2 0x4175 JUMP JUMPDEST DUP2 EQ PUSH2 0x4DE0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4DEC DUP2 PUSH2 0x4192 JUMP JUMPDEST DUP2 EQ PUSH2 0x4DF7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E03 DUP2 PUSH2 0x419F JUMP JUMPDEST DUP2 EQ PUSH2 0x4E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E1A DUP2 PUSH2 0x41AC JUMP JUMPDEST DUP2 EQ PUSH2 0x4E25 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E31 DUP2 PUSH2 0x41BC JUMP JUMPDEST DUP2 EQ PUSH2 0x4E3C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E48 DUP2 PUSH2 0x41D0 JUMP JUMPDEST DUP2 EQ PUSH2 0x4E53 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID SLOAD PUSH9 0x652073747275637475 PUSH19 0x65206F66207468652072657175657374206973 KECCAK256 PUSH10 0x6E76616C696420616E64 KECCAK256 PUSH10 0x742063616E6E6F742062 PUSH6 0x207061727365 PUSH5 0x5468652072 PUSH6 0x717565737420 PUSH19 0x6573756C74206C656E67746820657863656564 PUSH20 0x20612062726964676520636F6E74726163742064 PUSH6 0x66696E656420 PUSH13 0x696D6974546865207265717565 PUSH20 0x7420686173206265656E2072656A656374656420 PUSH3 0x792074 PUSH9 0x652062726964676520 PUSH15 0x6F64652064756520746F20706F6F72 KECCAK256 PUSH10 0x6E63656E7469766573A2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH29 0x84347B582E34D3C229CA790843F11AD8ED7D0539A9EC821D76A66DC1E0 CALLER LT PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"375:16523:32:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_supportedErrorOrElseUnknown_7298":{"entryPoint":7187,"id":7298,"parameterSlots":1,"returnSlots":1},"@_utoa_7450":{"entryPoint":7225,"id":7450,"parameterSlots":1,"returnSlots":1},"@_utohex_7527":{"entryPoint":8109,"id":7527,"parameterSlots":1,"returnSlots":1},"@asBool_7078":{"entryPoint":5464,"id":7078,"parameterSlots":1,"returnSlots":1},"@asBytes32_6514":{"entryPoint":5246,"id":6514,"parameterSlots":1,"returnSlots":1},"@asBytes_6493":{"entryPoint":5008,"id":6493,"parameterSlots":1,"returnSlots":1},"@asErrorCode_6550":{"entryPoint":6204,"id":6550,"parameterSlots":1,"returnSlots":1},"@asErrorMessage_7034":{"entryPoint":2404,"id":7034,"parameterSlots":1,"returnSlots":2},"@asFixed16Array_7121":{"entryPoint":1441,"id":7121,"parameterSlots":1,"returnSlots":1},"@asFixed16_7099":{"entryPoint":6283,"id":7099,"parameterSlots":1,"returnSlots":1},"@asInt128Array_7164":{"entryPoint":6964,"id":7164,"parameterSlots":1,"returnSlots":1},"@asInt128_7142":{"entryPoint":5682,"id":7142,"parameterSlots":1,"returnSlots":1},"@asRawError_7057":{"entryPoint":1217,"id":7057,"parameterSlots":1,"returnSlots":1},"@asStringArray_7207":{"entryPoint":1949,"id":7207,"parameterSlots":1,"returnSlots":1},"@asString_7185":{"entryPoint":6741,"id":7185,"parameterSlots":1,"returnSlots":1},"@asUint64Array_7250":{"entryPoint":1726,"id":7250,"parameterSlots":1,"returnSlots":1},"@asUint64_7228":{"entryPoint":2186,"id":7228,"parameterSlots":1,"returnSlots":1},"@isError_6472":{"entryPoint":5231,"id":6472,"parameterSlots":1,"returnSlots":1},"@isOk_6458":{"entryPoint":2172,"id":6458,"parameterSlots":1,"returnSlots":1},"@resultFromCborBytes_6421":{"entryPoint":6501,"id":6421,"parameterSlots":2,"returnSlots":1},"@resultFromCborValue_6445":{"entryPoint":1664,"id":6445,"parameterSlots":1,"returnSlots":1},"@stageName_7283":{"entryPoint":5900,"id":7283,"parameterSlots":1,"returnSlots":1},"abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory":{"entryPoint":8615,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory":{"entryPoint":8727,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory":{"entryPoint":8839,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory":{"entryPoint":8981,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":9093,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr_fromMemory":{"entryPoint":9159,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_available_length_t_string_memory_ptr_fromMemory":{"entryPoint":9225,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory":{"entryPoint":9291,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory":{"entryPoint":9337,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory":{"entryPoint":9383,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory":{"entryPoint":9429,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bool":{"entryPoint":9475,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bool_fromMemory":{"entryPoint":9496,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":9517,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_calldata_ptr":{"entryPoint":9538,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_t_bytes_memory_ptr":{"entryPoint":9624,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr_fromMemory":{"entryPoint":9670,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_int128_fromMemory":{"entryPoint":9716,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_int32_fromMemory":{"entryPoint":9737,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_string_memory_ptr_fromMemory":{"entryPoint":9758,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Buffer_$4361_memory_ptr":{"entryPoint":9804,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory":{"entryPoint":9912,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":10020,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory":{"entryPoint":10208,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_struct$_Result_$4342_memory_ptr":{"entryPoint":10396,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32":{"entryPoint":10504,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32_fromMemory":{"entryPoint":10525,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64":{"entryPoint":10546,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64_fromMemory":{"entryPoint":10567,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8":{"entryPoint":10588,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8_fromMemory":{"entryPoint":10609,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_int128_$dyn_memory_ptr_fromMemory":{"entryPoint":10630,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_int32_$dyn_memory_ptr_fromMemory":{"entryPoint":10703,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory":{"entryPoint":10776,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_array$_t_uint64_$dyn_memory_ptr_fromMemory":{"entryPoint":10849,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bool_fromMemory":{"entryPoint":10922,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":10967,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_calldata_ptr":{"entryPoint":11012,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_tuple_t_bytes_memory_ptr_fromMemory":{"entryPoint":11089,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_int128_fromMemory":{"entryPoint":11162,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_int32_fromMemory":{"entryPoint":11207,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_string_memory_ptr_fromMemory":{"entryPoint":11252,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr":{"entryPoint":11325,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr_fromMemory":{"entryPoint":11398,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr":{"entryPoint":11471,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint64":{"entryPoint":11544,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint64_fromMemory":{"entryPoint":11589,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_int128_to_t_int128_library":{"entryPoint":11634,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_int32_to_t_int32_library":{"entryPoint":11658,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library":{"entryPoint":11682,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encodeUpdatedPos_t_uint64_to_t_uint64_library":{"entryPoint":11702,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library":{"entryPoint":11726,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library":{"entryPoint":11820,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library":{"entryPoint":11914,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library":{"entryPoint":12031,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bool_to_t_bool_fromStack_library":{"entryPoint":12125,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_library":{"entryPoint":12140,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32_fromStack_library":{"entryPoint":12155,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library":{"entryPoint":12170,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library":{"entryPoint":12227,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library":{"entryPoint":12284,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int128_to_t_int128_fromStack_library":{"entryPoint":12299,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int128_to_t_int128_library":{"entryPoint":12314,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int32_to_t_int32_fromStack_library":{"entryPoint":12329,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_int32_to_t_int32_library":{"entryPoint":12344,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library":{"entryPoint":12359,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library":{"entryPoint":12416,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12473,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12522,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12557,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e_to_t_string_memory_ptr_fromStack":{"entryPoint":12592,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12627,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de_to_t_string_memory_ptr_fromStack":{"entryPoint":12662,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12697,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12732,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340_to_t_string_memory_ptr_fromStack":{"entryPoint":12767,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12802,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12837,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12872,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5_to_t_string_memory_ptr_fromStack":{"entryPoint":12907,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12942,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":12977,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13012,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13047,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1_to_t_string_memory_ptr_fromStack":{"entryPoint":13082,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13117,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0_to_t_string_memory_ptr_fromStack":{"entryPoint":13152,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395_to_t_string_memory_ptr_fromStack":{"entryPoint":13187,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13222,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6_to_t_string_memory_ptr_fromStack":{"entryPoint":13257,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8_to_t_string_memory_ptr_fromStack":{"entryPoint":13292,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13327,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13362,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d_to_t_string_memory_ptr_fromStack":{"entryPoint":13397,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13432,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13467,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207_to_t_string_memory_ptr_fromStack":{"entryPoint":13502,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13537,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13572,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a_to_t_string_memory_ptr_fromStack":{"entryPoint":13607,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13642,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13677,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":13712,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library":{"entryPoint":13747,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library":{"entryPoint":13808,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library":{"entryPoint":13945,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library":{"entryPoint":14082,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_uint32_to_t_uint32_library":{"entryPoint":14143,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_fromStack_library":{"entryPoint":14158,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_library":{"entryPoint":14173,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8_library":{"entryPoint":14188,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_packed_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14203,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14248,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14365,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_t_string_memory_ptr_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14482,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_t_string_memory_ptr_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14527,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_t_string_memory_ptr_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14572,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14617,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14734,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14851,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_t_string_memory_ptr_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_t_string_memory_ptr_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14896,"id":null,"parameterSlots":4,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_t_string_memory_ptr_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":14989,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_packed_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_t_string_memory_ptr_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":15073,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":15118,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":15152,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":15186,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_library_reversed":{"entryPoint":15220,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed":{"entryPoint":15254,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed":{"entryPoint":15281,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed":{"entryPoint":15308,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_enum$_ErrorCodes_$4618__to_t_uint8__fromStack_library_reversed":{"entryPoint":15342,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_enum$_ErrorCodes_$4618_t_string_memory_ptr__to_t_uint8_t_string_memory_ptr__fromStack_library_reversed":{"entryPoint":15369,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_int128__to_t_int128__fromStack_library_reversed":{"entryPoint":15417,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_int32__to_t_int32__fromStack_library_reversed":{"entryPoint":15444,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed":{"entryPoint":15471,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15505,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15537,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15569,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15601,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15633,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15665,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15697,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15729,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15761,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15793,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15825,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":15857,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed":{"entryPoint":15889,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_library_reversed":{"entryPoint":15923,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint64__to_t_uint64__fromStack_library_reversed":{"entryPoint":15957,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_memory":{"entryPoint":15984,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":16011,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":16021,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":16065,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":16109,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":16153,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":16197,"id":null,"parameterSlots":1,"returnSlots":1},"array_allocation_size_t_string_memory_ptr":{"entryPoint":16246,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":16295,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":16311,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":16327,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":16343,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":16359,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":16370,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":16381,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":16392,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":16403,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_string_memory_ptr":{"entryPoint":16414,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_int128_$dyn_memory_ptr":{"entryPoint":16425,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_int32_$dyn_memory_ptr":{"entryPoint":16438,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr":{"entryPoint":16451,"id":null,"parameterSlots":1,"returnSlots":1},"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr":{"entryPoint":16464,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library":{"entryPoint":16477,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library":{"entryPoint":16494,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library":{"entryPoint":16511,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library":{"entryPoint":16528,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library":{"entryPoint":16545,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_library":{"entryPoint":16562,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":16579,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library":{"entryPoint":16596,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_library":{"entryPoint":16613,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":16630,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint8":{"entryPoint":16641,"id":null,"parameterSlots":2,"returnSlots":1},"checked_div_t_uint64":{"entryPoint":16696,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_bool":{"entryPoint":16745,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":16757,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_enum$_ErrorCodes_$4618":{"entryPoint":16767,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int128":{"entryPoint":16786,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_int32":{"entryPoint":16799,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint32":{"entryPoint":16812,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint64":{"entryPoint":16828,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":16848,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_enum$_ErrorCodes_$4618_to_t_uint8":{"entryPoint":16861,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":16879,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":16894,"id":null,"parameterSlots":3,"returnSlots":0},"finalize_allocation":{"entryPoint":16945,"id":null,"parameterSlots":2,"returnSlots":0},"mod_t_uint64":{"entryPoint":16994,"id":null,"parameterSlots":2,"returnSlots":1},"panic_error_0x11":{"entryPoint":17043,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x12":{"entryPoint":17090,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x21":{"entryPoint":17137,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":17184,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":17231,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490":{"entryPoint":17278,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":17283,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f":{"entryPoint":17288,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421":{"entryPoint":17293,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef":{"entryPoint":17298,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":17303,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":17308,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":17313,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":17318,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1":{"entryPoint":17335,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d":{"entryPoint":17414,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e":{"entryPoint":17455,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5":{"entryPoint":17572,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de":{"entryPoint":17613,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0":{"entryPoint":17730,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240":{"entryPoint":17771,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340":{"entryPoint":17812,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1":{"entryPoint":17929,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7":{"entryPoint":17970,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66":{"entryPoint":18011,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5":{"entryPoint":18090,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b":{"entryPoint":18207,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed":{"entryPoint":18248,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b":{"entryPoint":18289,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916":{"entryPoint":18330,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1":{"entryPoint":18371,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5":{"entryPoint":18488,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0":{"entryPoint":18529,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395":{"entryPoint":18646,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a":{"entryPoint":18763,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6":{"entryPoint":18842,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8":{"entryPoint":18959,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d":{"entryPoint":19076,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5":{"entryPoint":19117,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d":{"entryPoint":19196,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58":{"entryPoint":19313,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2":{"entryPoint":19354,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207":{"entryPoint":19395,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594":{"entryPoint":19512,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277":{"entryPoint":19553,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a":{"entryPoint":19594,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2":{"entryPoint":19711,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100":{"entryPoint":19790,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e":{"entryPoint":19831,"id":null,"parameterSlots":1,"returnSlots":0},"validator_assert_t_enum$_ErrorCodes_$4618":{"entryPoint":19872,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bool":{"entryPoint":19893,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":19916,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_int128":{"entryPoint":19939,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_int32":{"entryPoint":19962,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint32":{"entryPoint":19985,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint64":{"entryPoint":20008,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint8":{"entryPoint":20031,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:93907:46","statements":[{"body":{"nodeType":"YulBlock","src":"135:629:46","statements":[{"nodeType":"YulAssignment","src":"145:89:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"226:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"170:55:46"},"nodeType":"YulFunctionCall","src":"170:63:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"154:15:46"},"nodeType":"YulFunctionCall","src":"154:80:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"145:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"243:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"254:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"247:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"276:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"283:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"269:6:46"},"nodeType":"YulFunctionCall","src":"269:21:46"},"nodeType":"YulExpressionStatement","src":"269:21:46"},{"nodeType":"YulAssignment","src":"299:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"310:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"317:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"306:3:46"},"nodeType":"YulFunctionCall","src":"306:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"299:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"332:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"343:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"336:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"398:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"412:77:46"},"nodeType":"YulFunctionCall","src":"412:79:46"},"nodeType":"YulExpressionStatement","src":"412:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"368:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"377:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"385:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"373:3:46"},"nodeType":"YulFunctionCall","src":"373:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"364:3:46"},"nodeType":"YulFunctionCall","src":"364:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"393:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"361:2:46"},"nodeType":"YulFunctionCall","src":"361:36:46"},"nodeType":"YulIf","src":"358:143:46"},{"body":{"nodeType":"YulBlock","src":"570:188:46","statements":[{"nodeType":"YulVariableDeclaration","src":"585:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"603:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"589:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"627:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"663:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"675:3:46"}],"functionName":{"name":"abi_decode_t_int128_fromMemory","nodeType":"YulIdentifier","src":"632:30:46"},"nodeType":"YulFunctionCall","src":"632:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"620:6:46"},"nodeType":"YulFunctionCall","src":"620:60:46"},"nodeType":"YulExpressionStatement","src":"620:60:46"},{"nodeType":"YulAssignment","src":"693:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"704:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"709:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"700:3:46"},"nodeType":"YulFunctionCall","src":"700:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"693:3:46"}]},{"nodeType":"YulAssignment","src":"727:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"738:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"743:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"734:3:46"},"nodeType":"YulFunctionCall","src":"734:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"727:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"532:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"535:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"529:2:46"},"nodeType":"YulFunctionCall","src":"529:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"543:18:46","statements":[{"nodeType":"YulAssignment","src":"545:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"554:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"557:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"550:3:46"},"nodeType":"YulFunctionCall","src":"550:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"545:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"514:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"516:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"525:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"520:1:46","type":""}]}]},"src":"510:248:46"}]},"name":"abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"105:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"113:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"121:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"129:5:46","type":""}],"src":"23:741:46"},{"body":{"nodeType":"YulBlock","src":"896:627:46","statements":[{"nodeType":"YulAssignment","src":"906:88:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"986:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"931:54:46"},"nodeType":"YulFunctionCall","src":"931:62:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"915:15:46"},"nodeType":"YulFunctionCall","src":"915:79:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"906:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"1003:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"1014:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"1007:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1036:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"1043:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1029:6:46"},"nodeType":"YulFunctionCall","src":"1029:21:46"},"nodeType":"YulExpressionStatement","src":"1029:21:46"},{"nodeType":"YulAssignment","src":"1059:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1070:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1077:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1066:3:46"},"nodeType":"YulFunctionCall","src":"1066:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"1059:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"1092:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"1103:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"1096:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1158:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"1172:77:46"},"nodeType":"YulFunctionCall","src":"1172:79:46"},"nodeType":"YulExpressionStatement","src":"1172:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"1128:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"1137:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1145:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"1133:3:46"},"nodeType":"YulFunctionCall","src":"1133:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1124:3:46"},"nodeType":"YulFunctionCall","src":"1124:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"1153:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1121:2:46"},"nodeType":"YulFunctionCall","src":"1121:36:46"},"nodeType":"YulIf","src":"1118:143:46"},{"body":{"nodeType":"YulBlock","src":"1330:187:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1345:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"1363:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"1349:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"1387:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"1422:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"1434:3:46"}],"functionName":{"name":"abi_decode_t_int32_fromMemory","nodeType":"YulIdentifier","src":"1392:29:46"},"nodeType":"YulFunctionCall","src":"1392:46:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1380:6:46"},"nodeType":"YulFunctionCall","src":"1380:59:46"},"nodeType":"YulExpressionStatement","src":"1380:59:46"},{"nodeType":"YulAssignment","src":"1452:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"1463:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1468:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1459:3:46"},"nodeType":"YulFunctionCall","src":"1459:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"1452:3:46"}]},{"nodeType":"YulAssignment","src":"1486:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"1497:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1502:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1493:3:46"},"nodeType":"YulFunctionCall","src":"1493:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"1486:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"1292:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"1295:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"1289:2:46"},"nodeType":"YulFunctionCall","src":"1289:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"1303:18:46","statements":[{"nodeType":"YulAssignment","src":"1305:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"1314:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"1317:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1310:3:46"},"nodeType":"YulFunctionCall","src":"1310:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"1305:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"1274:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1276:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1285:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"1280:1:46","type":""}]}]},"src":"1270:247:46"}]},"name":"abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"866:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"874:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"882:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"890:5:46","type":""}],"src":"785:738:46"},{"body":{"nodeType":"YulBlock","src":"1668:849:46","statements":[{"nodeType":"YulAssignment","src":"1678:100:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"1770:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"1703:66:46"},"nodeType":"YulFunctionCall","src":"1703:74:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"1687:15:46"},"nodeType":"YulFunctionCall","src":"1687:91:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"1678:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"1787:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"1798:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"1791:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1820:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"1827:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1813:6:46"},"nodeType":"YulFunctionCall","src":"1813:21:46"},"nodeType":"YulExpressionStatement","src":"1813:21:46"},{"nodeType":"YulAssignment","src":"1843:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"1854:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"1861:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1850:3:46"},"nodeType":"YulFunctionCall","src":"1850:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"1843:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"1876:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"1887:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"1880:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1942:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"1956:77:46"},"nodeType":"YulFunctionCall","src":"1956:79:46"},"nodeType":"YulExpressionStatement","src":"1956:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"1912:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"1921:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1929:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"1917:3:46"},"nodeType":"YulFunctionCall","src":"1917:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1908:3:46"},"nodeType":"YulFunctionCall","src":"1908:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"1937:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"1905:2:46"},"nodeType":"YulFunctionCall","src":"1905:36:46"},"nodeType":"YulIf","src":"1902:143:46"},{"body":{"nodeType":"YulBlock","src":"2114:397:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2129:29:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"2154:3:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2148:5:46"},"nodeType":"YulFunctionCall","src":"2148:10:46"},"variables":[{"name":"innerOffset","nodeType":"YulTypedName","src":"2133:11:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"2210:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"2212:77:46"},"nodeType":"YulFunctionCall","src":"2212:79:46"},"nodeType":"YulExpressionStatement","src":"2212:79:46"}]},"condition":{"arguments":[{"name":"innerOffset","nodeType":"YulIdentifier","src":"2177:11:46"},{"kind":"number","nodeType":"YulLiteral","src":"2190:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"2174:2:46"},"nodeType":"YulFunctionCall","src":"2174:35:46"},"nodeType":"YulIf","src":"2171:122:46"},{"nodeType":"YulVariableDeclaration","src":"2306:42:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2328:6:46"},{"name":"innerOffset","nodeType":"YulIdentifier","src":"2336:11:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2324:3:46"},"nodeType":"YulFunctionCall","src":"2324:24:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"2310:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"2369:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"2416:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"2428:3:46"}],"functionName":{"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"2374:41:46"},"nodeType":"YulFunctionCall","src":"2374:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2362:6:46"},"nodeType":"YulFunctionCall","src":"2362:71:46"},"nodeType":"YulExpressionStatement","src":"2362:71:46"},{"nodeType":"YulAssignment","src":"2446:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"2457:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2462:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2453:3:46"},"nodeType":"YulFunctionCall","src":"2453:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"2446:3:46"}]},{"nodeType":"YulAssignment","src":"2480:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"2491:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2496:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2487:3:46"},"nodeType":"YulFunctionCall","src":"2487:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"2480:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"2076:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"2079:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"2073:2:46"},"nodeType":"YulFunctionCall","src":"2073:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"2087:18:46","statements":[{"nodeType":"YulAssignment","src":"2089:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"2098:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"2101:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2094:3:46"},"nodeType":"YulFunctionCall","src":"2094:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"2089:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"2058:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2060:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2069:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"2064:1:46","type":""}]}]},"src":"2054:457:46"}]},"name":"abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1638:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"1646:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1654:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"1662:5:46","type":""}],"src":"1545:972:46"},{"body":{"nodeType":"YulBlock","src":"2651:629:46","statements":[{"nodeType":"YulAssignment","src":"2661:89:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2742:6:46"}],"functionName":{"name":"array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"2686:55:46"},"nodeType":"YulFunctionCall","src":"2686:63:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"2670:15:46"},"nodeType":"YulFunctionCall","src":"2670:80:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"2661:5:46"}]},{"nodeType":"YulVariableDeclaration","src":"2759:16:46","value":{"name":"array","nodeType":"YulIdentifier","src":"2770:5:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"2763:3:46","type":""}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"2792:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"2799:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2785:6:46"},"nodeType":"YulFunctionCall","src":"2785:21:46"},"nodeType":"YulExpressionStatement","src":"2785:21:46"},{"nodeType":"YulAssignment","src":"2815:23:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"2826:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2833:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2822:3:46"},"nodeType":"YulFunctionCall","src":"2822:16:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"2815:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"2848:17:46","value":{"name":"offset","nodeType":"YulIdentifier","src":"2859:6:46"},"variables":[{"name":"src","nodeType":"YulTypedName","src":"2852:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"2914:103:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"2928:77:46"},"nodeType":"YulFunctionCall","src":"2928:79:46"},"nodeType":"YulExpressionStatement","src":"2928:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"2884:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"2893:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"2901:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"2889:3:46"},"nodeType":"YulFunctionCall","src":"2889:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2880:3:46"},"nodeType":"YulFunctionCall","src":"2880:27:46"},{"name":"end","nodeType":"YulIdentifier","src":"2909:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"2877:2:46"},"nodeType":"YulFunctionCall","src":"2877:36:46"},"nodeType":"YulIf","src":"2874:143:46"},{"body":{"nodeType":"YulBlock","src":"3086:188:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3101:21:46","value":{"name":"src","nodeType":"YulIdentifier","src":"3119:3:46"},"variables":[{"name":"elementPos","nodeType":"YulTypedName","src":"3105:10:46","type":""}]},{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"3143:3:46"},{"arguments":[{"name":"elementPos","nodeType":"YulIdentifier","src":"3179:10:46"},{"name":"end","nodeType":"YulIdentifier","src":"3191:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"3148:30:46"},"nodeType":"YulFunctionCall","src":"3148:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3136:6:46"},"nodeType":"YulFunctionCall","src":"3136:60:46"},"nodeType":"YulExpressionStatement","src":"3136:60:46"},{"nodeType":"YulAssignment","src":"3209:21:46","value":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"3220:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3225:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3216:3:46"},"nodeType":"YulFunctionCall","src":"3216:14:46"},"variableNames":[{"name":"dst","nodeType":"YulIdentifier","src":"3209:3:46"}]},{"nodeType":"YulAssignment","src":"3243:21:46","value":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3254:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3259:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3250:3:46"},"nodeType":"YulFunctionCall","src":"3250:14:46"},"variableNames":[{"name":"src","nodeType":"YulIdentifier","src":"3243:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"3048:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"3051:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"3045:2:46"},"nodeType":"YulFunctionCall","src":"3045:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"3059:18:46","statements":[{"nodeType":"YulAssignment","src":"3061:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"3070:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"3073:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3066:3:46"},"nodeType":"YulFunctionCall","src":"3066:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"3061:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"3030:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3032:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3041:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"3036:1:46","type":""}]}]},"src":"3026:248:46"}]},"name":"abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"2621:6:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"2629:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"2637:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"2645:5:46","type":""}],"src":"2539:741:46"},{"body":{"nodeType":"YulBlock","src":"3369:327:46","statements":[{"nodeType":"YulAssignment","src":"3379:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3445:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"3404:40:46"},"nodeType":"YulFunctionCall","src":"3404:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"3388:15:46"},"nodeType":"YulFunctionCall","src":"3388:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"3379:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"3469:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"3476:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3462:6:46"},"nodeType":"YulFunctionCall","src":"3462:21:46"},"nodeType":"YulExpressionStatement","src":"3462:21:46"},{"nodeType":"YulVariableDeclaration","src":"3492:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"3507:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3514:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3503:3:46"},"nodeType":"YulFunctionCall","src":"3503:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"3496:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3557:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"3559:77:46"},"nodeType":"YulFunctionCall","src":"3559:79:46"},"nodeType":"YulExpressionStatement","src":"3559:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3538:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3543:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3534:3:46"},"nodeType":"YulFunctionCall","src":"3534:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"3552:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3531:2:46"},"nodeType":"YulFunctionCall","src":"3531:25:46"},"nodeType":"YulIf","src":"3528:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3673:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"3678:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3683:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"3649:23:46"},"nodeType":"YulFunctionCall","src":"3649:41:46"},"nodeType":"YulExpressionStatement","src":"3649:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"3342:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"3347:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3355:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"3363:5:46","type":""}],"src":"3286:410:46"},{"body":{"nodeType":"YulBlock","src":"3796:325:46","statements":[{"nodeType":"YulAssignment","src":"3806:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"3872:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"3831:40:46"},"nodeType":"YulFunctionCall","src":"3831:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"3815:15:46"},"nodeType":"YulFunctionCall","src":"3815:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"3806:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"3896:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"3903:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3889:6:46"},"nodeType":"YulFunctionCall","src":"3889:21:46"},"nodeType":"YulExpressionStatement","src":"3889:21:46"},{"nodeType":"YulVariableDeclaration","src":"3919:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"3934:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"3941:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3930:3:46"},"nodeType":"YulFunctionCall","src":"3930:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"3923:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3984:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"3986:77:46"},"nodeType":"YulFunctionCall","src":"3986:79:46"},"nodeType":"YulExpressionStatement","src":"3986:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"3965:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"3970:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3961:3:46"},"nodeType":"YulFunctionCall","src":"3961:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"3979:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3958:2:46"},"nodeType":"YulFunctionCall","src":"3958:25:46"},"nodeType":"YulIf","src":"3955:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4098:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"4103:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4108:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"4076:21:46"},"nodeType":"YulFunctionCall","src":"4076:39:46"},"nodeType":"YulExpressionStatement","src":"4076:39:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"3769:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"3774:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"3782:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"3790:5:46","type":""}],"src":"3702:419:46"},{"body":{"nodeType":"YulBlock","src":"4222:326:46","statements":[{"nodeType":"YulAssignment","src":"4232:75:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"4299:6:46"}],"functionName":{"name":"array_allocation_size_t_string_memory_ptr","nodeType":"YulIdentifier","src":"4257:41:46"},"nodeType":"YulFunctionCall","src":"4257:49:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"4241:15:46"},"nodeType":"YulFunctionCall","src":"4241:66:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"4232:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"4323:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"4330:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4316:6:46"},"nodeType":"YulFunctionCall","src":"4316:21:46"},"nodeType":"YulExpressionStatement","src":"4316:21:46"},{"nodeType":"YulVariableDeclaration","src":"4346:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"4361:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4368:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4357:3:46"},"nodeType":"YulFunctionCall","src":"4357:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"4350:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"4411:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"4413:77:46"},"nodeType":"YulFunctionCall","src":"4413:79:46"},"nodeType":"YulExpressionStatement","src":"4413:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4392:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4397:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4388:3:46"},"nodeType":"YulFunctionCall","src":"4388:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"4406:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"4385:2:46"},"nodeType":"YulFunctionCall","src":"4385:25:46"},"nodeType":"YulIf","src":"4382:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"4525:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"4530:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4535:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"4503:21:46"},"nodeType":"YulFunctionCall","src":"4503:39:46"},"nodeType":"YulExpressionStatement","src":"4503:39:46"}]},"name":"abi_decode_available_length_t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"4195:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"4200:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"4208:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"4216:5:46","type":""}],"src":"4127:421:46"},{"body":{"nodeType":"YulBlock","src":"4657:296:46","statements":[{"body":{"nodeType":"YulBlock","src":"4706:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"4708:77:46"},"nodeType":"YulFunctionCall","src":"4708:79:46"},"nodeType":"YulExpressionStatement","src":"4708:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"4685:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4693:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4681:3:46"},"nodeType":"YulFunctionCall","src":"4681:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"4700:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"4677:3:46"},"nodeType":"YulFunctionCall","src":"4677:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"4670:6:46"},"nodeType":"YulFunctionCall","src":"4670:35:46"},"nodeType":"YulIf","src":"4667:122:46"},{"nodeType":"YulVariableDeclaration","src":"4798:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"4818:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"4812:5:46"},"nodeType":"YulFunctionCall","src":"4812:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"4802:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4834:113:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"4920:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"4928:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4916:3:46"},"nodeType":"YulFunctionCall","src":"4916:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"4935:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"4943:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"4843:72:46"},"nodeType":"YulFunctionCall","src":"4843:104:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"4834:5:46"}]}]},"name":"abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"4635:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"4643:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"4651:5:46","type":""}],"src":"4570:383:46"},{"body":{"nodeType":"YulBlock","src":"5060:295:46","statements":[{"body":{"nodeType":"YulBlock","src":"5109:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"5111:77:46"},"nodeType":"YulFunctionCall","src":"5111:79:46"},"nodeType":"YulExpressionStatement","src":"5111:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5088:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5096:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5084:3:46"},"nodeType":"YulFunctionCall","src":"5084:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"5103:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"5080:3:46"},"nodeType":"YulFunctionCall","src":"5080:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"5073:6:46"},"nodeType":"YulFunctionCall","src":"5073:35:46"},"nodeType":"YulIf","src":"5070:122:46"},{"nodeType":"YulVariableDeclaration","src":"5201:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5221:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5215:5:46"},"nodeType":"YulFunctionCall","src":"5215:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"5205:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5237:112:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5322:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5330:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5318:3:46"},"nodeType":"YulFunctionCall","src":"5318:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"5337:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"5345:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"5246:71:46"},"nodeType":"YulFunctionCall","src":"5246:103:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"5237:5:46"}]}]},"name":"abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"5038:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5046:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"5054:5:46","type":""}],"src":"4974:381:46"},{"body":{"nodeType":"YulBlock","src":"5475:307:46","statements":[{"body":{"nodeType":"YulBlock","src":"5524:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"5526:77:46"},"nodeType":"YulFunctionCall","src":"5526:79:46"},"nodeType":"YulExpressionStatement","src":"5526:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5503:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5511:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5499:3:46"},"nodeType":"YulFunctionCall","src":"5499:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"5518:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"5495:3:46"},"nodeType":"YulFunctionCall","src":"5495:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"5488:6:46"},"nodeType":"YulFunctionCall","src":"5488:35:46"},"nodeType":"YulIf","src":"5485:122:46"},{"nodeType":"YulVariableDeclaration","src":"5616:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5636:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"5630:5:46"},"nodeType":"YulFunctionCall","src":"5630:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"5620:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5652:124:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5749:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5757:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5745:3:46"},"nodeType":"YulFunctionCall","src":"5745:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"5764:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"5772:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"5661:83:46"},"nodeType":"YulFunctionCall","src":"5661:115:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"5652:5:46"}]}]},"name":"abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"5453:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5461:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"5469:5:46","type":""}],"src":"5377:405:46"},{"body":{"nodeType":"YulBlock","src":"5891:296:46","statements":[{"body":{"nodeType":"YulBlock","src":"5940:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"5942:77:46"},"nodeType":"YulFunctionCall","src":"5942:79:46"},"nodeType":"YulExpressionStatement","src":"5942:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"5919:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"5927:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5915:3:46"},"nodeType":"YulFunctionCall","src":"5915:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"5934:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"5911:3:46"},"nodeType":"YulFunctionCall","src":"5911:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"5904:6:46"},"nodeType":"YulFunctionCall","src":"5904:35:46"},"nodeType":"YulIf","src":"5901:122:46"},{"nodeType":"YulVariableDeclaration","src":"6032:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6052:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6046:5:46"},"nodeType":"YulFunctionCall","src":"6046:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"6036:6:46","type":""}]},{"nodeType":"YulAssignment","src":"6068:113:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6154:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6162:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6150:3:46"},"nodeType":"YulFunctionCall","src":"6150:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"6169:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"6177:3:46"}],"functionName":{"name":"abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"6077:72:46"},"nodeType":"YulFunctionCall","src":"6077:104:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"6068:5:46"}]}]},"name":"abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"5869:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"5877:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"5885:5:46","type":""}],"src":"5804:383:46"},{"body":{"nodeType":"YulBlock","src":"6242:84:46","statements":[{"nodeType":"YulAssignment","src":"6252:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6274:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"6261:12:46"},"nodeType":"YulFunctionCall","src":"6261:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6252:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6314:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"6290:23:46"},"nodeType":"YulFunctionCall","src":"6290:30:46"},"nodeType":"YulExpressionStatement","src":"6290:30:46"}]},"name":"abi_decode_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6220:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6228:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6236:5:46","type":""}],"src":"6193:133:46"},{"body":{"nodeType":"YulBlock","src":"6392:77:46","statements":[{"nodeType":"YulAssignment","src":"6402:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6417:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6411:5:46"},"nodeType":"YulFunctionCall","src":"6411:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6402:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6457:5:46"}],"functionName":{"name":"validator_revert_t_bool","nodeType":"YulIdentifier","src":"6433:23:46"},"nodeType":"YulFunctionCall","src":"6433:30:46"},"nodeType":"YulExpressionStatement","src":"6433:30:46"}]},"name":"abi_decode_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6370:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6378:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6386:5:46","type":""}],"src":"6332:137:46"},{"body":{"nodeType":"YulBlock","src":"6538:80:46","statements":[{"nodeType":"YulAssignment","src":"6548:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6563:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"6557:5:46"},"nodeType":"YulFunctionCall","src":"6557:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"6548:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6606:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"6579:26:46"},"nodeType":"YulFunctionCall","src":"6579:33:46"},"nodeType":"YulExpressionStatement","src":"6579:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6516:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6524:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"6532:5:46","type":""}],"src":"6475:143:46"},{"body":{"nodeType":"YulBlock","src":"6711:478:46","statements":[{"body":{"nodeType":"YulBlock","src":"6760:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"6762:77:46"},"nodeType":"YulFunctionCall","src":"6762:79:46"},"nodeType":"YulExpressionStatement","src":"6762:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6739:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6747:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6735:3:46"},"nodeType":"YulFunctionCall","src":"6735:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"6754:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"6731:3:46"},"nodeType":"YulFunctionCall","src":"6731:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"6724:6:46"},"nodeType":"YulFunctionCall","src":"6724:35:46"},"nodeType":"YulIf","src":"6721:122:46"},{"nodeType":"YulAssignment","src":"6852:30:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"6875:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"6862:12:46"},"nodeType":"YulFunctionCall","src":"6862:20:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"6852:6:46"}]},{"body":{"nodeType":"YulBlock","src":"6925:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490","nodeType":"YulIdentifier","src":"6927:77:46"},"nodeType":"YulFunctionCall","src":"6927:79:46"},"nodeType":"YulExpressionStatement","src":"6927:79:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"6897:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"6905:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"6894:2:46"},"nodeType":"YulFunctionCall","src":"6894:30:46"},"nodeType":"YulIf","src":"6891:117:46"},{"nodeType":"YulAssignment","src":"7017:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7033:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7041:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7029:3:46"},"nodeType":"YulFunctionCall","src":"7029:17:46"},"variableNames":[{"name":"arrayPos","nodeType":"YulIdentifier","src":"7017:8:46"}]},{"body":{"nodeType":"YulBlock","src":"7100:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulIdentifier","src":"7102:77:46"},"nodeType":"YulFunctionCall","src":"7102:79:46"},"nodeType":"YulExpressionStatement","src":"7102:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"arrayPos","nodeType":"YulIdentifier","src":"7065:8:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"7079:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7087:4:46","type":"","value":"0x01"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"7075:3:46"},"nodeType":"YulFunctionCall","src":"7075:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7061:3:46"},"nodeType":"YulFunctionCall","src":"7061:32:46"},{"name":"end","nodeType":"YulIdentifier","src":"7095:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"7058:2:46"},"nodeType":"YulFunctionCall","src":"7058:41:46"},"nodeType":"YulIf","src":"7055:128:46"}]},"name":"abi_decode_t_bytes_calldata_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"6678:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"6686:3:46","type":""}],"returnVariables":[{"name":"arrayPos","nodeType":"YulTypedName","src":"6694:8:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"6704:6:46","type":""}],"src":"6637:552:46"},{"body":{"nodeType":"YulBlock","src":"7269:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"7318:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"7320:77:46"},"nodeType":"YulFunctionCall","src":"7320:79:46"},"nodeType":"YulExpressionStatement","src":"7320:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7297:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7305:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7293:3:46"},"nodeType":"YulFunctionCall","src":"7293:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"7312:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7289:3:46"},"nodeType":"YulFunctionCall","src":"7289:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"7282:6:46"},"nodeType":"YulFunctionCall","src":"7282:35:46"},"nodeType":"YulIf","src":"7279:122:46"},{"nodeType":"YulVariableDeclaration","src":"7410:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7437:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"7424:12:46"},"nodeType":"YulFunctionCall","src":"7424:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"7414:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7453:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7513:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7521:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7509:3:46"},"nodeType":"YulFunctionCall","src":"7509:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"7528:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"7536:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"7462:46:46"},"nodeType":"YulFunctionCall","src":"7462:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"7453:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7247:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7255:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"7263:5:46","type":""}],"src":"7208:338:46"},{"body":{"nodeType":"YulBlock","src":"7637:281:46","statements":[{"body":{"nodeType":"YulBlock","src":"7686:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"7688:77:46"},"nodeType":"YulFunctionCall","src":"7688:79:46"},"nodeType":"YulExpressionStatement","src":"7688:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7665:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7673:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7661:3:46"},"nodeType":"YulFunctionCall","src":"7661:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"7680:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"7657:3:46"},"nodeType":"YulFunctionCall","src":"7657:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"7650:6:46"},"nodeType":"YulFunctionCall","src":"7650:35:46"},"nodeType":"YulIf","src":"7647:122:46"},{"nodeType":"YulVariableDeclaration","src":"7778:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7798:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"7792:5:46"},"nodeType":"YulFunctionCall","src":"7792:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"7782:6:46","type":""}]},{"nodeType":"YulAssignment","src":"7814:98:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"7885:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"7893:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7881:3:46"},"nodeType":"YulFunctionCall","src":"7881:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"7900:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"7908:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"7823:57:46"},"nodeType":"YulFunctionCall","src":"7823:89:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"7814:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7615:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7623:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"7631:5:46","type":""}],"src":"7565:353:46"},{"body":{"nodeType":"YulBlock","src":"7986:79:46","statements":[{"nodeType":"YulAssignment","src":"7996:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8011:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8005:5:46"},"nodeType":"YulFunctionCall","src":"8005:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"7996:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"8053:5:46"}],"functionName":{"name":"validator_revert_t_int128","nodeType":"YulIdentifier","src":"8027:25:46"},"nodeType":"YulFunctionCall","src":"8027:32:46"},"nodeType":"YulExpressionStatement","src":"8027:32:46"}]},"name":"abi_decode_t_int128_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"7964:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"7972:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"7980:5:46","type":""}],"src":"7924:141:46"},{"body":{"nodeType":"YulBlock","src":"8132:78:46","statements":[{"nodeType":"YulAssignment","src":"8142:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8157:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8151:5:46"},"nodeType":"YulFunctionCall","src":"8151:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"8142:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"8198:5:46"}],"functionName":{"name":"validator_revert_t_int32","nodeType":"YulIdentifier","src":"8173:24:46"},"nodeType":"YulFunctionCall","src":"8173:31:46"},"nodeType":"YulExpressionStatement","src":"8173:31:46"}]},"name":"abi_decode_t_int32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"8110:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"8118:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"8126:5:46","type":""}],"src":"8071:139:46"},{"body":{"nodeType":"YulBlock","src":"8303:282:46","statements":[{"body":{"nodeType":"YulBlock","src":"8352:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"8354:77:46"},"nodeType":"YulFunctionCall","src":"8354:79:46"},"nodeType":"YulExpressionStatement","src":"8354:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8331:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8339:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8327:3:46"},"nodeType":"YulFunctionCall","src":"8327:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"8346:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8323:3:46"},"nodeType":"YulFunctionCall","src":"8323:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"8316:6:46"},"nodeType":"YulFunctionCall","src":"8316:35:46"},"nodeType":"YulIf","src":"8313:122:46"},{"nodeType":"YulVariableDeclaration","src":"8444:27:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8464:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8458:5:46"},"nodeType":"YulFunctionCall","src":"8458:13:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"8448:6:46","type":""}]},{"nodeType":"YulAssignment","src":"8480:99:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8552:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8560:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8548:3:46"},"nodeType":"YulFunctionCall","src":"8548:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"8567:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"8575:3:46"}],"functionName":{"name":"abi_decode_available_length_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"8489:58:46"},"nodeType":"YulFunctionCall","src":"8489:90:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"8480:5:46"}]}]},"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"8281:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"8289:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"8297:5:46","type":""}],"src":"8230:355:46"},{"body":{"nodeType":"YulBlock","src":"8698:664:46","statements":[{"body":{"nodeType":"YulBlock","src":"8742:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"8744:77:46"},"nodeType":"YulFunctionCall","src":"8744:79:46"},"nodeType":"YulExpressionStatement","src":"8744:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"8719:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"8724:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8715:3:46"},"nodeType":"YulFunctionCall","src":"8715:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"8736:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"8711:3:46"},"nodeType":"YulFunctionCall","src":"8711:30:46"},"nodeType":"YulIf","src":"8708:117:46"},{"nodeType":"YulAssignment","src":"8834:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"8859:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"8843:15:46"},"nodeType":"YulFunctionCall","src":"8843:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"8834:5:46"}]},{"nodeType":"YulBlock","src":"8874:319:46","statements":[{"nodeType":"YulVariableDeclaration","src":"8909:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"8940:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"8951:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8936:3:46"},"nodeType":"YulFunctionCall","src":"8936:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"8923:12:46"},"nodeType":"YulFunctionCall","src":"8923:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"8913:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"9001:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"9003:77:46"},"nodeType":"YulFunctionCall","src":"9003:79:46"},"nodeType":"YulExpressionStatement","src":"9003:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"8973:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"8981:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"8970:2:46"},"nodeType":"YulFunctionCall","src":"8970:30:46"},"nodeType":"YulIf","src":"8967:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9109:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"9116:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9105:3:46"},"nodeType":"YulFunctionCall","src":"9105:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9157:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"9168:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9153:3:46"},"nodeType":"YulFunctionCall","src":"9153:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"9177:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"9123:29:46"},"nodeType":"YulFunctionCall","src":"9123:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9098:6:46"},"nodeType":"YulFunctionCall","src":"9098:84:46"},"nodeType":"YulExpressionStatement","src":"9098:84:46"}]},{"nodeType":"YulBlock","src":"9203:152:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9240:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"9254:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"9244:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9281:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"9288:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9277:3:46"},"nodeType":"YulFunctionCall","src":"9277:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9319:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"9330:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9315:3:46"},"nodeType":"YulFunctionCall","src":"9315:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"9339:3:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"9295:19:46"},"nodeType":"YulFunctionCall","src":"9295:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9270:6:46"},"nodeType":"YulFunctionCall","src":"9270:74:46"},"nodeType":"YulExpressionStatement","src":"9270:74:46"}]}]},"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"8673:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"8684:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"8692:5:46","type":""}],"src":"8619:743:46"},{"body":{"nodeType":"YulBlock","src":"9486:679:46","statements":[{"body":{"nodeType":"YulBlock","src":"9530:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"9532:77:46"},"nodeType":"YulFunctionCall","src":"9532:79:46"},"nodeType":"YulExpressionStatement","src":"9532:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"9507:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"9512:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9503:3:46"},"nodeType":"YulFunctionCall","src":"9503:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"9524:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"9499:3:46"},"nodeType":"YulFunctionCall","src":"9499:30:46"},"nodeType":"YulIf","src":"9496:117:46"},{"nodeType":"YulAssignment","src":"9622:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"9647:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"9631:15:46"},"nodeType":"YulFunctionCall","src":"9631:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"9622:5:46"}]},{"nodeType":"YulBlock","src":"9662:323:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9697:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9721:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9732:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9717:3:46"},"nodeType":"YulFunctionCall","src":"9717:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"9711:5:46"},"nodeType":"YulFunctionCall","src":"9711:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"9701:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"9782:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"9784:77:46"},"nodeType":"YulFunctionCall","src":"9784:79:46"},"nodeType":"YulExpressionStatement","src":"9784:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"9754:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9762:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"9751:2:46"},"nodeType":"YulFunctionCall","src":"9751:30:46"},"nodeType":"YulIf","src":"9748:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9890:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"9897:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9886:3:46"},"nodeType":"YulFunctionCall","src":"9886:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9949:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"9960:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9945:3:46"},"nodeType":"YulFunctionCall","src":"9945:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"9969:3:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"9904:40:46"},"nodeType":"YulFunctionCall","src":"9904:69:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9879:6:46"},"nodeType":"YulFunctionCall","src":"9879:95:46"},"nodeType":"YulExpressionStatement","src":"9879:95:46"}]},{"nodeType":"YulBlock","src":"9995:163:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10032:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"10046:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10036:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10073:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10080:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10069:3:46"},"nodeType":"YulFunctionCall","src":"10069:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10122:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10133:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10118:3:46"},"nodeType":"YulFunctionCall","src":"10118:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"10142:3:46"}],"functionName":{"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulIdentifier","src":"10087:30:46"},"nodeType":"YulFunctionCall","src":"10087:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10062:6:46"},"nodeType":"YulFunctionCall","src":"10062:85:46"},"nodeType":"YulExpressionStatement","src":"10062:85:46"}]}]},"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9461:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"9472:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"9480:5:46","type":""}],"src":"9396:769:46"},{"body":{"nodeType":"YulBlock","src":"10274:1345:46","statements":[{"body":{"nodeType":"YulBlock","src":"10318:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"10320:77:46"},"nodeType":"YulFunctionCall","src":"10320:79:46"},"nodeType":"YulExpressionStatement","src":"10320:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"10295:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"10300:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"10291:3:46"},"nodeType":"YulFunctionCall","src":"10291:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"10312:4:46","type":"","value":"0xc0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"10287:3:46"},"nodeType":"YulFunctionCall","src":"10287:30:46"},"nodeType":"YulIf","src":"10284:117:46"},{"nodeType":"YulAssignment","src":"10410:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10435:4:46","type":"","value":"0xc0"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"10419:15:46"},"nodeType":"YulFunctionCall","src":"10419:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"10410:5:46"}]},{"nodeType":"YulBlock","src":"10450:336:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10487:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10518:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10529:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10514:3:46"},"nodeType":"YulFunctionCall","src":"10514:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"10501:12:46"},"nodeType":"YulFunctionCall","src":"10501:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10491:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"10579:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"10581:77:46"},"nodeType":"YulFunctionCall","src":"10581:79:46"},"nodeType":"YulExpressionStatement","src":"10581:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"10551:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"10559:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"10548:2:46"},"nodeType":"YulFunctionCall","src":"10548:30:46"},"nodeType":"YulIf","src":"10545:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10687:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10694:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10683:3:46"},"nodeType":"YulFunctionCall","src":"10683:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10750:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10761:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10746:3:46"},"nodeType":"YulFunctionCall","src":"10746:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"10770:3:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr","nodeType":"YulIdentifier","src":"10701:44:46"},"nodeType":"YulFunctionCall","src":"10701:73:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10676:6:46"},"nodeType":"YulFunctionCall","src":"10676:99:46"},"nodeType":"YulExpressionStatement","src":"10676:99:46"}]},{"nodeType":"YulBlock","src":"10796:156:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10838:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"10852:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"10842:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10879:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10886:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10875:3:46"},"nodeType":"YulFunctionCall","src":"10875:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10916:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"10927:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10912:3:46"},"nodeType":"YulFunctionCall","src":"10912:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"10936:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"10893:18:46"},"nodeType":"YulFunctionCall","src":"10893:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10868:6:46"},"nodeType":"YulFunctionCall","src":"10868:73:46"},"nodeType":"YulExpressionStatement","src":"10868:73:46"}]},{"nodeType":"YulBlock","src":"10962:154:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11002:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11016:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11006:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11043:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11050:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11039:3:46"},"nodeType":"YulFunctionCall","src":"11039:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11080:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11091:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11076:3:46"},"nodeType":"YulFunctionCall","src":"11076:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"11100:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"11057:18:46"},"nodeType":"YulFunctionCall","src":"11057:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11032:6:46"},"nodeType":"YulFunctionCall","src":"11032:73:46"},"nodeType":"YulExpressionStatement","src":"11032:73:46"}]},{"nodeType":"YulBlock","src":"11126:166:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11178:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11192:2:46","type":"","value":"96"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11182:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11219:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11226:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11215:3:46"},"nodeType":"YulFunctionCall","src":"11215:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11256:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11267:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11252:3:46"},"nodeType":"YulFunctionCall","src":"11252:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"11276:3:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"11233:18:46"},"nodeType":"YulFunctionCall","src":"11233:47:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11208:6:46"},"nodeType":"YulFunctionCall","src":"11208:73:46"},"nodeType":"YulExpressionStatement","src":"11208:73:46"}]},{"nodeType":"YulBlock","src":"11302:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11336:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11350:3:46","type":"","value":"128"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11340:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11378:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11385:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11374:3:46"},"nodeType":"YulFunctionCall","src":"11374:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11416:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11427:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11412:3:46"},"nodeType":"YulFunctionCall","src":"11412:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"11436:3:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"11392:19:46"},"nodeType":"YulFunctionCall","src":"11392:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11367:6:46"},"nodeType":"YulFunctionCall","src":"11367:74:46"},"nodeType":"YulExpressionStatement","src":"11367:74:46"}]},{"nodeType":"YulBlock","src":"11462:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11496:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"11510:3:46","type":"","value":"160"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11500:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11538:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11545:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11534:3:46"},"nodeType":"YulFunctionCall","src":"11534:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11576:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"11587:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11572:3:46"},"nodeType":"YulFunctionCall","src":"11572:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"11596:3:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"11552:19:46"},"nodeType":"YulFunctionCall","src":"11552:48:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11527:6:46"},"nodeType":"YulFunctionCall","src":"11527:74:46"},"nodeType":"YulExpressionStatement","src":"11527:74:46"}]}]},"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10249:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"10260:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"10268:5:46","type":""}],"src":"10197:1422:46"},{"body":{"nodeType":"YulBlock","src":"11739:1404:46","statements":[{"body":{"nodeType":"YulBlock","src":"11783:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"11785:77:46"},"nodeType":"YulFunctionCall","src":"11785:79:46"},"nodeType":"YulExpressionStatement","src":"11785:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"11760:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"11765:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"11756:3:46"},"nodeType":"YulFunctionCall","src":"11756:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"11777:4:46","type":"","value":"0xc0"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"11752:3:46"},"nodeType":"YulFunctionCall","src":"11752:30:46"},"nodeType":"YulIf","src":"11749:117:46"},{"nodeType":"YulAssignment","src":"11875:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"11900:4:46","type":"","value":"0xc0"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"11884:15:46"},"nodeType":"YulFunctionCall","src":"11884:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"11875:5:46"}]},{"nodeType":"YulBlock","src":"11915:340:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11952:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11976:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11987:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11972:3:46"},"nodeType":"YulFunctionCall","src":"11972:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11966:5:46"},"nodeType":"YulFunctionCall","src":"11966:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"11956:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"12037:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"12039:77:46"},"nodeType":"YulFunctionCall","src":"12039:79:46"},"nodeType":"YulExpressionStatement","src":"12039:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"12009:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12017:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"12006:2:46"},"nodeType":"YulFunctionCall","src":"12006:30:46"},"nodeType":"YulIf","src":"12003:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12145:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12152:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12141:3:46"},"nodeType":"YulFunctionCall","src":"12141:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12219:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"12230:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12215:3:46"},"nodeType":"YulFunctionCall","src":"12215:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"12239:3:46"}],"functionName":{"name":"abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"12159:55:46"},"nodeType":"YulFunctionCall","src":"12159:84:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12134:6:46"},"nodeType":"YulFunctionCall","src":"12134:110:46"},"nodeType":"YulExpressionStatement","src":"12134:110:46"}]},{"nodeType":"YulBlock","src":"12265:167:46","statements":[{"nodeType":"YulVariableDeclaration","src":"12307:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"12321:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"12311:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12348:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12355:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12344:3:46"},"nodeType":"YulFunctionCall","src":"12344:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12396:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"12407:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12392:3:46"},"nodeType":"YulFunctionCall","src":"12392:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"12416:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"12362:29:46"},"nodeType":"YulFunctionCall","src":"12362:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12337:6:46"},"nodeType":"YulFunctionCall","src":"12337:84:46"},"nodeType":"YulExpressionStatement","src":"12337:84:46"}]},{"nodeType":"YulBlock","src":"12442:165:46","statements":[{"nodeType":"YulVariableDeclaration","src":"12482:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"12496:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"12486:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12523:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12530:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12519:3:46"},"nodeType":"YulFunctionCall","src":"12519:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12571:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"12582:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12567:3:46"},"nodeType":"YulFunctionCall","src":"12567:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"12591:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"12537:29:46"},"nodeType":"YulFunctionCall","src":"12537:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12512:6:46"},"nodeType":"YulFunctionCall","src":"12512:84:46"},"nodeType":"YulExpressionStatement","src":"12512:84:46"}]},{"nodeType":"YulBlock","src":"12617:177:46","statements":[{"nodeType":"YulVariableDeclaration","src":"12669:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"12683:2:46","type":"","value":"96"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"12673:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12710:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12717:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12706:3:46"},"nodeType":"YulFunctionCall","src":"12706:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12758:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"12769:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12754:3:46"},"nodeType":"YulFunctionCall","src":"12754:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"12778:3:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"12724:29:46"},"nodeType":"YulFunctionCall","src":"12724:58:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12699:6:46"},"nodeType":"YulFunctionCall","src":"12699:84:46"},"nodeType":"YulExpressionStatement","src":"12699:84:46"}]},{"nodeType":"YulBlock","src":"12804:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"12838:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"12852:3:46","type":"","value":"128"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"12842:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12880:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"12887:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12876:3:46"},"nodeType":"YulFunctionCall","src":"12876:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12929:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"12940:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12925:3:46"},"nodeType":"YulFunctionCall","src":"12925:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"12949:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"12894:30:46"},"nodeType":"YulFunctionCall","src":"12894:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12869:6:46"},"nodeType":"YulFunctionCall","src":"12869:85:46"},"nodeType":"YulExpressionStatement","src":"12869:85:46"}]},{"nodeType":"YulBlock","src":"12975:161:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13009:17:46","value":{"kind":"number","nodeType":"YulLiteral","src":"13023:3:46","type":"","value":"160"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"13013:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13051:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"13058:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13047:3:46"},"nodeType":"YulFunctionCall","src":"13047:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13100:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"13111:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13096:3:46"},"nodeType":"YulFunctionCall","src":"13096:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"13120:3:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"13065:30:46"},"nodeType":"YulFunctionCall","src":"13065:59:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13040:6:46"},"nodeType":"YulFunctionCall","src":"13040:85:46"},"nodeType":"YulExpressionStatement","src":"13040:85:46"}]}]},"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11714:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"11725:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"11733:5:46","type":""}],"src":"11651:1492:46"},{"body":{"nodeType":"YulBlock","src":"13256:677:46","statements":[{"body":{"nodeType":"YulBlock","src":"13300:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulIdentifier","src":"13302:77:46"},"nodeType":"YulFunctionCall","src":"13302:79:46"},"nodeType":"YulExpressionStatement","src":"13302:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"end","nodeType":"YulIdentifier","src":"13277:3:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"13282:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"13273:3:46"},"nodeType":"YulFunctionCall","src":"13273:19:46"},{"kind":"number","nodeType":"YulLiteral","src":"13294:4:46","type":"","value":"0x40"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"13269:3:46"},"nodeType":"YulFunctionCall","src":"13269:30:46"},"nodeType":"YulIf","src":"13266:117:46"},{"nodeType":"YulAssignment","src":"13392:30:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"13417:4:46","type":"","value":"0x40"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"13401:15:46"},"nodeType":"YulFunctionCall","src":"13401:21:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"13392:5:46"}]},{"nodeType":"YulBlock","src":"13432:150:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13470:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"13484:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"13474:6:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13510:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"13517:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13506:3:46"},"nodeType":"YulFunctionCall","src":"13506:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13546:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"13557:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13542:3:46"},"nodeType":"YulFunctionCall","src":"13542:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"13566:3:46"}],"functionName":{"name":"abi_decode_t_bool","nodeType":"YulIdentifier","src":"13524:17:46"},"nodeType":"YulFunctionCall","src":"13524:46:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13499:6:46"},"nodeType":"YulFunctionCall","src":"13499:72:46"},"nodeType":"YulExpressionStatement","src":"13499:72:46"}]},{"nodeType":"YulBlock","src":"13592:334:46","statements":[{"nodeType":"YulVariableDeclaration","src":"13628:46:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13659:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"13670:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13655:3:46"},"nodeType":"YulFunctionCall","src":"13655:18:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"13642:12:46"},"nodeType":"YulFunctionCall","src":"13642:32:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"13632:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"13721:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulIdentifier","src":"13723:77:46"},"nodeType":"YulFunctionCall","src":"13723:79:46"},"nodeType":"YulExpressionStatement","src":"13723:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"13693:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"13701:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"13690:2:46"},"nodeType":"YulFunctionCall","src":"13690:30:46"},"nodeType":"YulIf","src":"13687:117:46"},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"13829:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"13836:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13825:3:46"},"nodeType":"YulFunctionCall","src":"13825:16:46"},{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13890:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"13901:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13886:3:46"},"nodeType":"YulFunctionCall","src":"13886:22:46"},{"name":"end","nodeType":"YulIdentifier","src":"13910:3:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"13843:42:46"},"nodeType":"YulFunctionCall","src":"13843:71:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13818:6:46"},"nodeType":"YulFunctionCall","src":"13818:97:46"},"nodeType":"YulExpressionStatement","src":"13818:97:46"}]}]},"name":"abi_decode_t_struct$_Result_$4342_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"13231:9:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"13242:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"13250:5:46","type":""}],"src":"13177:756:46"},{"body":{"nodeType":"YulBlock","src":"13990:86:46","statements":[{"nodeType":"YulAssignment","src":"14000:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14022:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"14009:12:46"},"nodeType":"YulFunctionCall","src":"14009:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14000:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14064:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"14038:25:46"},"nodeType":"YulFunctionCall","src":"14038:32:46"},"nodeType":"YulExpressionStatement","src":"14038:32:46"}]},"name":"abi_decode_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"13968:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"13976:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"13984:5:46","type":""}],"src":"13939:137:46"},{"body":{"nodeType":"YulBlock","src":"14144:79:46","statements":[{"nodeType":"YulAssignment","src":"14154:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14169:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"14163:5:46"},"nodeType":"YulFunctionCall","src":"14163:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14154:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14211:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"14185:25:46"},"nodeType":"YulFunctionCall","src":"14185:32:46"},"nodeType":"YulExpressionStatement","src":"14185:32:46"}]},"name":"abi_decode_t_uint32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"14122:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"14130:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"14138:5:46","type":""}],"src":"14082:141:46"},{"body":{"nodeType":"YulBlock","src":"14280:86:46","statements":[{"nodeType":"YulAssignment","src":"14290:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14312:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"14299:12:46"},"nodeType":"YulFunctionCall","src":"14299:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14290:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14354:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"14328:25:46"},"nodeType":"YulFunctionCall","src":"14328:32:46"},"nodeType":"YulExpressionStatement","src":"14328:32:46"}]},"name":"abi_decode_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"14258:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"14266:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"14274:5:46","type":""}],"src":"14229:137:46"},{"body":{"nodeType":"YulBlock","src":"14434:79:46","statements":[{"nodeType":"YulAssignment","src":"14444:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14459:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"14453:5:46"},"nodeType":"YulFunctionCall","src":"14453:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14444:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14501:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"14475:25:46"},"nodeType":"YulFunctionCall","src":"14475:32:46"},"nodeType":"YulExpressionStatement","src":"14475:32:46"}]},"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"14412:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"14420:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"14428:5:46","type":""}],"src":"14372:141:46"},{"body":{"nodeType":"YulBlock","src":"14569:85:46","statements":[{"nodeType":"YulAssignment","src":"14579:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14601:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"14588:12:46"},"nodeType":"YulFunctionCall","src":"14588:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14579:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14642:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"14617:24:46"},"nodeType":"YulFunctionCall","src":"14617:31:46"},"nodeType":"YulExpressionStatement","src":"14617:31:46"}]},"name":"abi_decode_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"14547:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"14555:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"14563:5:46","type":""}],"src":"14519:135:46"},{"body":{"nodeType":"YulBlock","src":"14721:78:46","statements":[{"nodeType":"YulAssignment","src":"14731:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"14746:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"14740:5:46"},"nodeType":"YulFunctionCall","src":"14740:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"14731:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"14787:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"14762:24:46"},"nodeType":"YulFunctionCall","src":"14762:31:46"},"nodeType":"YulExpressionStatement","src":"14762:31:46"}]},"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"14699:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"14707:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"14715:5:46","type":""}],"src":"14660:139:46"},{"body":{"nodeType":"YulBlock","src":"14906:451:46","statements":[{"body":{"nodeType":"YulBlock","src":"14952:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"14954:77:46"},"nodeType":"YulFunctionCall","src":"14954:79:46"},"nodeType":"YulExpressionStatement","src":"14954:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"14927:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"14936:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"14923:3:46"},"nodeType":"YulFunctionCall","src":"14923:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"14948:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"14919:3:46"},"nodeType":"YulFunctionCall","src":"14919:32:46"},"nodeType":"YulIf","src":"14916:119:46"},{"nodeType":"YulBlock","src":"15045:305:46","statements":[{"nodeType":"YulVariableDeclaration","src":"15060:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15084:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15095:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15080:3:46"},"nodeType":"YulFunctionCall","src":"15080:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"15074:5:46"},"nodeType":"YulFunctionCall","src":"15074:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"15064:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"15145:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"15147:77:46"},"nodeType":"YulFunctionCall","src":"15147:79:46"},"nodeType":"YulExpressionStatement","src":"15147:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"15117:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15125:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"15114:2:46"},"nodeType":"YulFunctionCall","src":"15114:30:46"},"nodeType":"YulIf","src":"15111:117:46"},{"nodeType":"YulAssignment","src":"15242:98:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15312:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"15323:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15308:3:46"},"nodeType":"YulFunctionCall","src":"15308:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"15332:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"15252:55:46"},"nodeType":"YulFunctionCall","src":"15252:88:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"15242:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_int128_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14876:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"14887:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"14899:6:46","type":""}],"src":"14805:552:46"},{"body":{"nodeType":"YulBlock","src":"15463:450:46","statements":[{"body":{"nodeType":"YulBlock","src":"15509:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"15511:77:46"},"nodeType":"YulFunctionCall","src":"15511:79:46"},"nodeType":"YulExpressionStatement","src":"15511:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"15484:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"15493:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"15480:3:46"},"nodeType":"YulFunctionCall","src":"15480:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"15505:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"15476:3:46"},"nodeType":"YulFunctionCall","src":"15476:32:46"},"nodeType":"YulIf","src":"15473:119:46"},{"nodeType":"YulBlock","src":"15602:304:46","statements":[{"nodeType":"YulVariableDeclaration","src":"15617:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15641:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15652:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15637:3:46"},"nodeType":"YulFunctionCall","src":"15637:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"15631:5:46"},"nodeType":"YulFunctionCall","src":"15631:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"15621:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"15702:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"15704:77:46"},"nodeType":"YulFunctionCall","src":"15704:79:46"},"nodeType":"YulExpressionStatement","src":"15704:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"15674:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15682:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"15671:2:46"},"nodeType":"YulFunctionCall","src":"15671:30:46"},"nodeType":"YulIf","src":"15668:117:46"},{"nodeType":"YulAssignment","src":"15799:97:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15868:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"15879:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15864:3:46"},"nodeType":"YulFunctionCall","src":"15864:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"15888:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"15809:54:46"},"nodeType":"YulFunctionCall","src":"15809:87:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"15799:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_int32_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"15433:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"15444:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"15456:6:46","type":""}],"src":"15363:550:46"},{"body":{"nodeType":"YulBlock","src":"16031:462:46","statements":[{"body":{"nodeType":"YulBlock","src":"16077:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"16079:77:46"},"nodeType":"YulFunctionCall","src":"16079:79:46"},"nodeType":"YulExpressionStatement","src":"16079:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"16052:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"16061:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16048:3:46"},"nodeType":"YulFunctionCall","src":"16048:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"16073:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"16044:3:46"},"nodeType":"YulFunctionCall","src":"16044:32:46"},"nodeType":"YulIf","src":"16041:119:46"},{"nodeType":"YulBlock","src":"16170:316:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16185:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16209:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16220:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16205:3:46"},"nodeType":"YulFunctionCall","src":"16205:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"16199:5:46"},"nodeType":"YulFunctionCall","src":"16199:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"16189:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"16270:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"16272:77:46"},"nodeType":"YulFunctionCall","src":"16272:79:46"},"nodeType":"YulExpressionStatement","src":"16272:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"16242:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16250:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"16239:2:46"},"nodeType":"YulFunctionCall","src":"16239:30:46"},"nodeType":"YulIf","src":"16236:117:46"},{"nodeType":"YulAssignment","src":"16367:109:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16448:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"16459:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16444:3:46"},"nodeType":"YulFunctionCall","src":"16444:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"16468:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"16377:66:46"},"nodeType":"YulFunctionCall","src":"16377:99:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"16367:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"16001:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"16012:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"16024:6:46","type":""}],"src":"15919:574:46"},{"body":{"nodeType":"YulBlock","src":"16600:451:46","statements":[{"body":{"nodeType":"YulBlock","src":"16646:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"16648:77:46"},"nodeType":"YulFunctionCall","src":"16648:79:46"},"nodeType":"YulExpressionStatement","src":"16648:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"16621:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"16630:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16617:3:46"},"nodeType":"YulFunctionCall","src":"16617:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"16642:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"16613:3:46"},"nodeType":"YulFunctionCall","src":"16613:32:46"},"nodeType":"YulIf","src":"16610:119:46"},{"nodeType":"YulBlock","src":"16739:305:46","statements":[{"nodeType":"YulVariableDeclaration","src":"16754:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16778:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16789:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16774:3:46"},"nodeType":"YulFunctionCall","src":"16774:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"16768:5:46"},"nodeType":"YulFunctionCall","src":"16768:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"16758:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"16839:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"16841:77:46"},"nodeType":"YulFunctionCall","src":"16841:79:46"},"nodeType":"YulExpressionStatement","src":"16841:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"16811:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"16819:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"16808:2:46"},"nodeType":"YulFunctionCall","src":"16808:30:46"},"nodeType":"YulIf","src":"16805:117:46"},{"nodeType":"YulAssignment","src":"16936:98:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17006:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"17017:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17002:3:46"},"nodeType":"YulFunctionCall","src":"17002:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"17026:7:46"}],"functionName":{"name":"abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"16946:55:46"},"nodeType":"YulFunctionCall","src":"16946:88:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"16936:6:46"}]}]}]},"name":"abi_decode_tuple_t_array$_t_uint64_$dyn_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"16570:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"16581:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"16593:6:46","type":""}],"src":"16499:552:46"},{"body":{"nodeType":"YulBlock","src":"17131:271:46","statements":[{"body":{"nodeType":"YulBlock","src":"17177:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"17179:77:46"},"nodeType":"YulFunctionCall","src":"17179:79:46"},"nodeType":"YulExpressionStatement","src":"17179:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"17152:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"17161:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17148:3:46"},"nodeType":"YulFunctionCall","src":"17148:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"17173:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"17144:3:46"},"nodeType":"YulFunctionCall","src":"17144:32:46"},"nodeType":"YulIf","src":"17141:119:46"},{"nodeType":"YulBlock","src":"17270:125:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17285:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"17299:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"17289:6:46","type":""}]},{"nodeType":"YulAssignment","src":"17314:71:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17357:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"17368:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17353:3:46"},"nodeType":"YulFunctionCall","src":"17353:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"17377:7:46"}],"functionName":{"name":"abi_decode_t_bool_fromMemory","nodeType":"YulIdentifier","src":"17324:28:46"},"nodeType":"YulFunctionCall","src":"17324:61:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"17314:6:46"}]}]}]},"name":"abi_decode_tuple_t_bool_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"17101:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"17112:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"17124:6:46","type":""}],"src":"17057:345:46"},{"body":{"nodeType":"YulBlock","src":"17485:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"17531:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"17533:77:46"},"nodeType":"YulFunctionCall","src":"17533:79:46"},"nodeType":"YulExpressionStatement","src":"17533:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"17506:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"17515:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17502:3:46"},"nodeType":"YulFunctionCall","src":"17502:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"17527:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"17498:3:46"},"nodeType":"YulFunctionCall","src":"17498:32:46"},"nodeType":"YulIf","src":"17495:119:46"},{"nodeType":"YulBlock","src":"17624:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"17639:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"17653:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"17643:6:46","type":""}]},{"nodeType":"YulAssignment","src":"17668:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17714:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"17725:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17710:3:46"},"nodeType":"YulFunctionCall","src":"17710:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"17734:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"17678:31:46"},"nodeType":"YulFunctionCall","src":"17678:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"17668:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"17455:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"17466:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"17478:6:46","type":""}],"src":"17408:351:46"},{"body":{"nodeType":"YulBlock","src":"17850:442:46","statements":[{"body":{"nodeType":"YulBlock","src":"17896:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"17898:77:46"},"nodeType":"YulFunctionCall","src":"17898:79:46"},"nodeType":"YulExpressionStatement","src":"17898:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"17871:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"17880:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17867:3:46"},"nodeType":"YulFunctionCall","src":"17867:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"17892:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"17863:3:46"},"nodeType":"YulFunctionCall","src":"17863:32:46"},"nodeType":"YulIf","src":"17860:119:46"},{"nodeType":"YulBlock","src":"17989:296:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18004:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18035:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18046:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18031:3:46"},"nodeType":"YulFunctionCall","src":"18031:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"18018:12:46"},"nodeType":"YulFunctionCall","src":"18018:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18008:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"18096:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"18098:77:46"},"nodeType":"YulFunctionCall","src":"18098:79:46"},"nodeType":"YulExpressionStatement","src":"18098:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"18068:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"18076:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"18065:2:46"},"nodeType":"YulFunctionCall","src":"18065:30:46"},"nodeType":"YulIf","src":"18062:117:46"},{"nodeType":"YulAssignment","src":"18193:82:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18247:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18258:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18243:3:46"},"nodeType":"YulFunctionCall","src":"18243:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"18267:7:46"}],"functionName":{"name":"abi_decode_t_bytes_calldata_ptr","nodeType":"YulIdentifier","src":"18211:31:46"},"nodeType":"YulFunctionCall","src":"18211:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"18193:6:46"},{"name":"value1","nodeType":"YulIdentifier","src":"18201:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_calldata_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"17812:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"17823:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"17835:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"17843:6:46","type":""}],"src":"17765:527:46"},{"body":{"nodeType":"YulBlock","src":"18384:436:46","statements":[{"body":{"nodeType":"YulBlock","src":"18430:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"18432:77:46"},"nodeType":"YulFunctionCall","src":"18432:79:46"},"nodeType":"YulExpressionStatement","src":"18432:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"18405:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"18414:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"18401:3:46"},"nodeType":"YulFunctionCall","src":"18401:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"18426:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"18397:3:46"},"nodeType":"YulFunctionCall","src":"18397:32:46"},"nodeType":"YulIf","src":"18394:119:46"},{"nodeType":"YulBlock","src":"18523:290:46","statements":[{"nodeType":"YulVariableDeclaration","src":"18538:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18562:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18573:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18558:3:46"},"nodeType":"YulFunctionCall","src":"18558:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"18552:5:46"},"nodeType":"YulFunctionCall","src":"18552:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"18542:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"18623:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"18625:77:46"},"nodeType":"YulFunctionCall","src":"18625:79:46"},"nodeType":"YulExpressionStatement","src":"18625:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"18595:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"18603:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"18592:2:46"},"nodeType":"YulFunctionCall","src":"18592:30:46"},"nodeType":"YulIf","src":"18589:117:46"},{"nodeType":"YulAssignment","src":"18720:83:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18775:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"18786:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18771:3:46"},"nodeType":"YulFunctionCall","src":"18771:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"18795:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"18730:40:46"},"nodeType":"YulFunctionCall","src":"18730:73:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"18720:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"18354:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"18365:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"18377:6:46","type":""}],"src":"18298:522:46"},{"body":{"nodeType":"YulBlock","src":"18902:273:46","statements":[{"body":{"nodeType":"YulBlock","src":"18948:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"18950:77:46"},"nodeType":"YulFunctionCall","src":"18950:79:46"},"nodeType":"YulExpressionStatement","src":"18950:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"18923:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"18932:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"18919:3:46"},"nodeType":"YulFunctionCall","src":"18919:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"18944:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"18915:3:46"},"nodeType":"YulFunctionCall","src":"18915:32:46"},"nodeType":"YulIf","src":"18912:119:46"},{"nodeType":"YulBlock","src":"19041:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19056:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"19070:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"19060:6:46","type":""}]},{"nodeType":"YulAssignment","src":"19085:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19130:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"19141:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19126:3:46"},"nodeType":"YulFunctionCall","src":"19126:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"19150:7:46"}],"functionName":{"name":"abi_decode_t_int128_fromMemory","nodeType":"YulIdentifier","src":"19095:30:46"},"nodeType":"YulFunctionCall","src":"19095:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"19085:6:46"}]}]}]},"name":"abi_decode_tuple_t_int128_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"18872:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"18883:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"18895:6:46","type":""}],"src":"18826:349:46"},{"body":{"nodeType":"YulBlock","src":"19256:272:46","statements":[{"body":{"nodeType":"YulBlock","src":"19302:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"19304:77:46"},"nodeType":"YulFunctionCall","src":"19304:79:46"},"nodeType":"YulExpressionStatement","src":"19304:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"19277:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"19286:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19273:3:46"},"nodeType":"YulFunctionCall","src":"19273:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"19298:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"19269:3:46"},"nodeType":"YulFunctionCall","src":"19269:32:46"},"nodeType":"YulIf","src":"19266:119:46"},{"nodeType":"YulBlock","src":"19395:126:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19410:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"19424:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"19414:6:46","type":""}]},{"nodeType":"YulAssignment","src":"19439:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19483:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"19494:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19479:3:46"},"nodeType":"YulFunctionCall","src":"19479:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"19503:7:46"}],"functionName":{"name":"abi_decode_t_int32_fromMemory","nodeType":"YulIdentifier","src":"19449:29:46"},"nodeType":"YulFunctionCall","src":"19449:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"19439:6:46"}]}]}]},"name":"abi_decode_tuple_t_int32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19226:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"19237:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"19249:6:46","type":""}],"src":"19181:347:46"},{"body":{"nodeType":"YulBlock","src":"19621:437:46","statements":[{"body":{"nodeType":"YulBlock","src":"19667:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"19669:77:46"},"nodeType":"YulFunctionCall","src":"19669:79:46"},"nodeType":"YulExpressionStatement","src":"19669:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"19642:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"19651:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19638:3:46"},"nodeType":"YulFunctionCall","src":"19638:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"19663:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"19634:3:46"},"nodeType":"YulFunctionCall","src":"19634:32:46"},"nodeType":"YulIf","src":"19631:119:46"},{"nodeType":"YulBlock","src":"19760:291:46","statements":[{"nodeType":"YulVariableDeclaration","src":"19775:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19799:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19810:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19795:3:46"},"nodeType":"YulFunctionCall","src":"19795:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"19789:5:46"},"nodeType":"YulFunctionCall","src":"19789:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"19779:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"19860:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"19862:77:46"},"nodeType":"YulFunctionCall","src":"19862:79:46"},"nodeType":"YulExpressionStatement","src":"19862:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"19832:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"19840:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"19829:2:46"},"nodeType":"YulFunctionCall","src":"19829:30:46"},"nodeType":"YulIf","src":"19826:117:46"},{"nodeType":"YulAssignment","src":"19957:84:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20013:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"20024:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20009:3:46"},"nodeType":"YulFunctionCall","src":"20009:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"20033:7:46"}],"functionName":{"name":"abi_decode_t_string_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"19967:41:46"},"nodeType":"YulFunctionCall","src":"19967:74:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"19957:6:46"}]}]}]},"name":"abi_decode_tuple_t_string_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19591:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"19602:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"19614:6:46","type":""}],"src":"19534:524:46"},{"body":{"nodeType":"YulBlock","src":"20152:445:46","statements":[{"body":{"nodeType":"YulBlock","src":"20198:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"20200:77:46"},"nodeType":"YulFunctionCall","src":"20200:79:46"},"nodeType":"YulExpressionStatement","src":"20200:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"20173:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"20182:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"20169:3:46"},"nodeType":"YulFunctionCall","src":"20169:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"20194:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"20165:3:46"},"nodeType":"YulFunctionCall","src":"20165:32:46"},"nodeType":"YulIf","src":"20162:119:46"},{"nodeType":"YulBlock","src":"20291:299:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20306:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20337:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20348:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20333:3:46"},"nodeType":"YulFunctionCall","src":"20333:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"20320:12:46"},"nodeType":"YulFunctionCall","src":"20320:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"20310:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"20398:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"20400:77:46"},"nodeType":"YulFunctionCall","src":"20400:79:46"},"nodeType":"YulExpressionStatement","src":"20400:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"20370:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"20378:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"20367:2:46"},"nodeType":"YulFunctionCall","src":"20367:30:46"},"nodeType":"YulIf","src":"20364:117:46"},{"nodeType":"YulAssignment","src":"20495:85:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20552:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"20563:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20548:3:46"},"nodeType":"YulFunctionCall","src":"20548:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"20572:7:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulIdentifier","src":"20505:42:46"},"nodeType":"YulFunctionCall","src":"20505:75:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"20495:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"20122:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"20133:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"20145:6:46","type":""}],"src":"20064:533:46"},{"body":{"nodeType":"YulBlock","src":"20702:449:46","statements":[{"body":{"nodeType":"YulBlock","src":"20748:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"20750:77:46"},"nodeType":"YulFunctionCall","src":"20750:79:46"},"nodeType":"YulExpressionStatement","src":"20750:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"20723:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"20732:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"20719:3:46"},"nodeType":"YulFunctionCall","src":"20719:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"20744:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"20715:3:46"},"nodeType":"YulFunctionCall","src":"20715:32:46"},"nodeType":"YulIf","src":"20712:119:46"},{"nodeType":"YulBlock","src":"20841:303:46","statements":[{"nodeType":"YulVariableDeclaration","src":"20856:38:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20880:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20891:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20876:3:46"},"nodeType":"YulFunctionCall","src":"20876:17:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20870:5:46"},"nodeType":"YulFunctionCall","src":"20870:24:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"20860:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"20941:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"20943:77:46"},"nodeType":"YulFunctionCall","src":"20943:79:46"},"nodeType":"YulExpressionStatement","src":"20943:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"20913:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"20921:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"20910:2:46"},"nodeType":"YulFunctionCall","src":"20910:30:46"},"nodeType":"YulIf","src":"20907:117:46"},{"nodeType":"YulAssignment","src":"21038:96:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21106:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"21117:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21102:3:46"},"nodeType":"YulFunctionCall","src":"21102:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"21126:7:46"}],"functionName":{"name":"abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulIdentifier","src":"21048:53:46"},"nodeType":"YulFunctionCall","src":"21048:86:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"21038:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"20672:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"20683:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"20695:6:46","type":""}],"src":"20603:548:46"},{"body":{"nodeType":"YulBlock","src":"21247:447:46","statements":[{"body":{"nodeType":"YulBlock","src":"21293:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"21295:77:46"},"nodeType":"YulFunctionCall","src":"21295:79:46"},"nodeType":"YulExpressionStatement","src":"21295:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"21268:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"21277:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"21264:3:46"},"nodeType":"YulFunctionCall","src":"21264:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"21289:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"21260:3:46"},"nodeType":"YulFunctionCall","src":"21260:32:46"},"nodeType":"YulIf","src":"21257:119:46"},{"nodeType":"YulBlock","src":"21386:301:46","statements":[{"nodeType":"YulVariableDeclaration","src":"21401:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21432:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"21443:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21428:3:46"},"nodeType":"YulFunctionCall","src":"21428:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"21415:12:46"},"nodeType":"YulFunctionCall","src":"21415:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"21405:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"21493:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"21495:77:46"},"nodeType":"YulFunctionCall","src":"21495:79:46"},"nodeType":"YulExpressionStatement","src":"21495:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"21465:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"21473:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"21462:2:46"},"nodeType":"YulFunctionCall","src":"21462:30:46"},"nodeType":"YulIf","src":"21459:117:46"},{"nodeType":"YulAssignment","src":"21590:87:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21649:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"21660:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21645:3:46"},"nodeType":"YulFunctionCall","src":"21645:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"21669:7:46"}],"functionName":{"name":"abi_decode_t_struct$_Result_$4342_memory_ptr","nodeType":"YulIdentifier","src":"21600:44:46"},"nodeType":"YulFunctionCall","src":"21600:77:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"21590:6:46"}]}]}]},"name":"abi_decode_tuple_t_struct$_Result_$4342_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21217:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"21228:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"21240:6:46","type":""}],"src":"21157:537:46"},{"body":{"nodeType":"YulBlock","src":"21765:262:46","statements":[{"body":{"nodeType":"YulBlock","src":"21811:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"21813:77:46"},"nodeType":"YulFunctionCall","src":"21813:79:46"},"nodeType":"YulExpressionStatement","src":"21813:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"21786:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"21795:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"21782:3:46"},"nodeType":"YulFunctionCall","src":"21782:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"21807:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"21778:3:46"},"nodeType":"YulFunctionCall","src":"21778:32:46"},"nodeType":"YulIf","src":"21775:119:46"},{"nodeType":"YulBlock","src":"21904:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"21919:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"21933:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"21923:6:46","type":""}]},{"nodeType":"YulAssignment","src":"21948:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"21982:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"21993:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21978:3:46"},"nodeType":"YulFunctionCall","src":"21978:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"22002:7:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"21958:19:46"},"nodeType":"YulFunctionCall","src":"21958:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"21948:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"21735:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"21746:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"21758:6:46","type":""}],"src":"21700:327:46"},{"body":{"nodeType":"YulBlock","src":"22109:273:46","statements":[{"body":{"nodeType":"YulBlock","src":"22155:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"22157:77:46"},"nodeType":"YulFunctionCall","src":"22157:79:46"},"nodeType":"YulExpressionStatement","src":"22157:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"22130:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"22139:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"22126:3:46"},"nodeType":"YulFunctionCall","src":"22126:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"22151:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"22122:3:46"},"nodeType":"YulFunctionCall","src":"22122:32:46"},"nodeType":"YulIf","src":"22119:119:46"},{"nodeType":"YulBlock","src":"22248:127:46","statements":[{"nodeType":"YulVariableDeclaration","src":"22263:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"22277:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"22267:6:46","type":""}]},{"nodeType":"YulAssignment","src":"22292:73:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"22337:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"22348:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22333:3:46"},"nodeType":"YulFunctionCall","src":"22333:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"22357:7:46"}],"functionName":{"name":"abi_decode_t_uint64_fromMemory","nodeType":"YulIdentifier","src":"22302:30:46"},"nodeType":"YulFunctionCall","src":"22302:63:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"22292:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint64_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"22079:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"22090:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"22102:6:46","type":""}],"src":"22033:349:46"},{"body":{"nodeType":"YulBlock","src":"22474:105:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22524:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"22532:3:46"}],"functionName":{"name":"abi_encode_t_int128_to_t_int128_library","nodeType":"YulIdentifier","src":"22484:39:46"},"nodeType":"YulFunctionCall","src":"22484:52:46"},"nodeType":"YulExpressionStatement","src":"22484:52:46"},{"nodeType":"YulAssignment","src":"22545:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"22563:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"22568:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22559:3:46"},"nodeType":"YulFunctionCall","src":"22559:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"22545:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_int128_to_t_int128_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"22447:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"22455:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"22463:10:46","type":""}],"src":"22388:191:46"},{"body":{"nodeType":"YulBlock","src":"22669:103:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22717:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"22725:3:46"}],"functionName":{"name":"abi_encode_t_int32_to_t_int32_library","nodeType":"YulIdentifier","src":"22679:37:46"},"nodeType":"YulFunctionCall","src":"22679:50:46"},"nodeType":"YulExpressionStatement","src":"22679:50:46"},{"nodeType":"YulAssignment","src":"22738:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"22756:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"22761:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22752:3:46"},"nodeType":"YulFunctionCall","src":"22752:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"22738:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_int32_to_t_int32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"22642:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"22650:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"22658:10:46","type":""}],"src":"22585:187:46"},{"body":{"nodeType":"YulBlock","src":"22886:104:46","statements":[{"nodeType":"YulAssignment","src":"22896:88:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"22972:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"22980:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulIdentifier","src":"22910:61:46"},"nodeType":"YulFunctionCall","src":"22910:74:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"22896:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"22859:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"22867:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"22875:10:46","type":""}],"src":"22778:212:46"},{"body":{"nodeType":"YulBlock","src":"23082:105:46","statements":[{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"23132:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"23140:3:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"23092:39:46"},"nodeType":"YulFunctionCall","src":"23092:52:46"},"nodeType":"YulExpressionStatement","src":"23092:52:46"},{"nodeType":"YulAssignment","src":"23153:28:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"23171:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"23176:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23167:3:46"},"nodeType":"YulFunctionCall","src":"23167:14:46"},"variableNames":[{"name":"updatedPos","nodeType":"YulIdentifier","src":"23153:10:46"}]}]},"name":"abi_encodeUpdatedPos_t_uint64_to_t_uint64_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value0","nodeType":"YulTypedName","src":"23055:6:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"23063:3:46","type":""}],"returnVariables":[{"name":"updatedPos","nodeType":"YulTypedName","src":"23071:10:46","type":""}],"src":"22996:191:46"},{"body":{"nodeType":"YulBlock","src":"23351:618:46","statements":[{"nodeType":"YulVariableDeclaration","src":"23361:67:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23422:5:46"}],"functionName":{"name":"array_length_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"23375:46:46"},"nodeType":"YulFunctionCall","src":"23375:53:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"23365:6:46","type":""}]},{"nodeType":"YulAssignment","src":"23437:100:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"23525:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"23530:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"23444:80:46"},"nodeType":"YulFunctionCall","src":"23444:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"23437:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"23546:70:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23610:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"23561:48:46"},"nodeType":"YulFunctionCall","src":"23561:55:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"23550:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"23625:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"23639:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"23629:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"23715:229:46","statements":[{"nodeType":"YulVariableDeclaration","src":"23729:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"23756:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"23750:5:46"},"nodeType":"YulFunctionCall","src":"23750:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"23733:13:46","type":""}]},{"nodeType":"YulAssignment","src":"23776:76:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"23833:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"23848:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_int128_to_t_int128_library","nodeType":"YulIdentifier","src":"23783:49:46"},"nodeType":"YulFunctionCall","src":"23783:69:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"23776:3:46"}]},{"nodeType":"YulAssignment","src":"23865:69:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"23927:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"23875:51:46"},"nodeType":"YulFunctionCall","src":"23875:59:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"23865:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"23677:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"23680:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"23674:2:46"},"nodeType":"YulFunctionCall","src":"23674:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"23688:18:46","statements":[{"nodeType":"YulAssignment","src":"23690:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"23699:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"23702:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23695:3:46"},"nodeType":"YulFunctionCall","src":"23695:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"23690:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"23659:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"23661:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"23670:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"23665:1:46","type":""}]}]},"src":"23655:289:46"},{"nodeType":"YulAssignment","src":"23953:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"23960:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"23953:3:46"}]}]},"name":"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23330:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"23337:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"23346:3:46","type":""}],"src":"23221:748:46"},{"body":{"nodeType":"YulBlock","src":"24129:612:46","statements":[{"nodeType":"YulVariableDeclaration","src":"24139:66:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"24199:5:46"}],"functionName":{"name":"array_length_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"24153:45:46"},"nodeType":"YulFunctionCall","src":"24153:52:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"24143:6:46","type":""}]},{"nodeType":"YulAssignment","src":"24214:99:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"24301:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"24306:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"24221:79:46"},"nodeType":"YulFunctionCall","src":"24221:92:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"24214:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"24322:69:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"24385:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"24337:47:46"},"nodeType":"YulFunctionCall","src":"24337:54:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"24326:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"24400:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"24414:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"24404:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"24490:226:46","statements":[{"nodeType":"YulVariableDeclaration","src":"24504:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"24531:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"24525:5:46"},"nodeType":"YulFunctionCall","src":"24525:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"24508:13:46","type":""}]},{"nodeType":"YulAssignment","src":"24551:74:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"24606:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"24621:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_int32_to_t_int32_library","nodeType":"YulIdentifier","src":"24558:47:46"},"nodeType":"YulFunctionCall","src":"24558:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"24551:3:46"}]},{"nodeType":"YulAssignment","src":"24638:68:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"24699:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"24648:50:46"},"nodeType":"YulFunctionCall","src":"24648:58:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"24638:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"24452:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"24455:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"24449:2:46"},"nodeType":"YulFunctionCall","src":"24449:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"24463:18:46","statements":[{"nodeType":"YulAssignment","src":"24465:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"24474:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"24477:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24470:3:46"},"nodeType":"YulFunctionCall","src":"24470:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"24465:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"24434:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"24436:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"24445:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"24440:1:46","type":""}]}]},"src":"24430:286:46"},{"nodeType":"YulAssignment","src":"24725:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"24732:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"24725:3:46"}]}]},"name":"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"24108:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"24115:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"24124:3:46","type":""}],"src":"24001:740:46"},{"body":{"nodeType":"YulBlock","src":"24927:863:46","statements":[{"nodeType":"YulVariableDeclaration","src":"24937:78:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25009:5:46"}],"functionName":{"name":"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"24951:57:46"},"nodeType":"YulFunctionCall","src":"24951:64:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"24941:6:46","type":""}]},{"nodeType":"YulAssignment","src":"25024:111:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"25123:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"25128:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"25031:91:46"},"nodeType":"YulFunctionCall","src":"25031:104:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"25024:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"25144:20:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"25161:3:46"},"variables":[{"name":"headStart","nodeType":"YulTypedName","src":"25148:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"25173:39:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"25189:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"25198:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"25206:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"25194:3:46"},"nodeType":"YulFunctionCall","src":"25194:17:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25185:3:46"},"nodeType":"YulFunctionCall","src":"25185:27:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"25177:4:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"25221:81:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25296:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"25236:59:46"},"nodeType":"YulFunctionCall","src":"25236:66:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"25225:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"25311:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"25325:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"25315:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"25401:344:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"25422:3:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"25431:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"25437:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"25427:3:46"},"nodeType":"YulFunctionCall","src":"25427:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25415:6:46"},"nodeType":"YulFunctionCall","src":"25415:33:46"},"nodeType":"YulExpressionStatement","src":"25415:33:46"},{"nodeType":"YulVariableDeclaration","src":"25461:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"25488:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"25482:5:46"},"nodeType":"YulFunctionCall","src":"25482:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"25465:13:46","type":""}]},{"nodeType":"YulAssignment","src":"25508:100:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"25588:13:46"},{"name":"tail","nodeType":"YulIdentifier","src":"25603:4:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulIdentifier","src":"25516:71:46"},"nodeType":"YulFunctionCall","src":"25516:92:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"25508:4:46"}]},{"nodeType":"YulAssignment","src":"25621:80:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"25694:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"25631:62:46"},"nodeType":"YulFunctionCall","src":"25631:70:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"25621:6:46"}]},{"nodeType":"YulAssignment","src":"25714:21:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"25725:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"25730:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25721:3:46"},"nodeType":"YulFunctionCall","src":"25721:14:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"25714:3:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"25363:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"25366:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"25360:2:46"},"nodeType":"YulFunctionCall","src":"25360:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"25374:18:46","statements":[{"nodeType":"YulAssignment","src":"25376:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"25385:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"25388:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25381:3:46"},"nodeType":"YulFunctionCall","src":"25381:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"25376:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"25345:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"25347:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"25356:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"25351:1:46","type":""}]}]},"src":"25341:404:46"},{"nodeType":"YulAssignment","src":"25754:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"25761:4:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"25754:3:46"}]},{"nodeType":"YulAssignment","src":"25774:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"25781:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"25774:3:46"}]}]},"name":"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"24906:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"24913:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"24922:3:46","type":""}],"src":"24775:1015:46"},{"body":{"nodeType":"YulBlock","src":"25954:618:46","statements":[{"nodeType":"YulVariableDeclaration","src":"25964:67:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"26025:5:46"}],"functionName":{"name":"array_length_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"25978:46:46"},"nodeType":"YulFunctionCall","src":"25978:53:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"25968:6:46","type":""}]},{"nodeType":"YulAssignment","src":"26040:100:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"26128:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"26133:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"26047:80:46"},"nodeType":"YulFunctionCall","src":"26047:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"26040:3:46"}]},{"nodeType":"YulVariableDeclaration","src":"26149:70:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"26213:5:46"}],"functionName":{"name":"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"26164:48:46"},"nodeType":"YulFunctionCall","src":"26164:55:46"},"variables":[{"name":"baseRef","nodeType":"YulTypedName","src":"26153:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"26228:21:46","value":{"name":"baseRef","nodeType":"YulIdentifier","src":"26242:7:46"},"variables":[{"name":"srcPtr","nodeType":"YulTypedName","src":"26232:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"26318:229:46","statements":[{"nodeType":"YulVariableDeclaration","src":"26332:34:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"26359:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"26353:5:46"},"nodeType":"YulFunctionCall","src":"26353:13:46"},"variables":[{"name":"elementValue0","nodeType":"YulTypedName","src":"26336:13:46","type":""}]},{"nodeType":"YulAssignment","src":"26379:76:46","value":{"arguments":[{"name":"elementValue0","nodeType":"YulIdentifier","src":"26436:13:46"},{"name":"pos","nodeType":"YulIdentifier","src":"26451:3:46"}],"functionName":{"name":"abi_encodeUpdatedPos_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"26386:49:46"},"nodeType":"YulFunctionCall","src":"26386:69:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"26379:3:46"}]},{"nodeType":"YulAssignment","src":"26468:69:46","value":{"arguments":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"26530:6:46"}],"functionName":{"name":"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulIdentifier","src":"26478:51:46"},"nodeType":"YulFunctionCall","src":"26478:59:46"},"variableNames":[{"name":"srcPtr","nodeType":"YulIdentifier","src":"26468:6:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"26280:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"26283:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"26277:2:46"},"nodeType":"YulFunctionCall","src":"26277:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"26291:18:46","statements":[{"nodeType":"YulAssignment","src":"26293:14:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"26302:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"26305:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26298:3:46"},"nodeType":"YulFunctionCall","src":"26298:9:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"26293:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"26262:14:46","statements":[{"nodeType":"YulVariableDeclaration","src":"26264:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"26273:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"26268:1:46","type":""}]}]},"src":"26258:289:46"},{"nodeType":"YulAssignment","src":"26556:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"26563:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"26556:3:46"}]}]},"name":"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"25933:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"25940:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"25949:3:46","type":""}],"src":"25824:748:46"},{"body":{"nodeType":"YulBlock","src":"26645:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"26662:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"26682:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"26667:14:46"},"nodeType":"YulFunctionCall","src":"26667:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26655:6:46"},"nodeType":"YulFunctionCall","src":"26655:34:46"},"nodeType":"YulExpressionStatement","src":"26655:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"26633:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"26640:3:46","type":""}],"src":"26578:117:46"},{"body":{"nodeType":"YulBlock","src":"26758:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"26775:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"26795:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"26780:14:46"},"nodeType":"YulFunctionCall","src":"26780:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26768:6:46"},"nodeType":"YulFunctionCall","src":"26768:34:46"},"nodeType":"YulExpressionStatement","src":"26768:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"26746:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"26753:3:46","type":""}],"src":"26701:107:46"},{"body":{"nodeType":"YulBlock","src":"26887:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"26904:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"26927:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"26909:17:46"},"nodeType":"YulFunctionCall","src":"26909:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26897:6:46"},"nodeType":"YulFunctionCall","src":"26897:37:46"},"nodeType":"YulExpressionStatement","src":"26897:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"26875:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"26882:3:46","type":""}],"src":"26814:126:46"},{"body":{"nodeType":"YulBlock","src":"27044:278:46","statements":[{"nodeType":"YulVariableDeclaration","src":"27054:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27100:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"27068:31:46"},"nodeType":"YulFunctionCall","src":"27068:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"27058:6:46","type":""}]},{"nodeType":"YulAssignment","src":"27115:85:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27188:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"27193:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"27122:65:46"},"nodeType":"YulFunctionCall","src":"27122:78:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"27115:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27235:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"27242:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27231:3:46"},"nodeType":"YulFunctionCall","src":"27231:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"27249:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"27254:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"27209:21:46"},"nodeType":"YulFunctionCall","src":"27209:52:46"},"nodeType":"YulExpressionStatement","src":"27209:52:46"},{"nodeType":"YulAssignment","src":"27270:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27281:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"27308:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"27286:21:46"},"nodeType":"YulFunctionCall","src":"27286:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27277:3:46"},"nodeType":"YulFunctionCall","src":"27277:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"27270:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"27025:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"27032:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"27040:3:46","type":""}],"src":"26946:376:46"},{"body":{"nodeType":"YulBlock","src":"27416:268:46","statements":[{"nodeType":"YulVariableDeclaration","src":"27426:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27472:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"27440:31:46"},"nodeType":"YulFunctionCall","src":"27440:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"27430:6:46","type":""}]},{"nodeType":"YulAssignment","src":"27487:75:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27550:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"27555:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_library","nodeType":"YulIdentifier","src":"27494:55:46"},"nodeType":"YulFunctionCall","src":"27494:68:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"27487:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27597:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"27604:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27593:3:46"},"nodeType":"YulFunctionCall","src":"27593:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"27611:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"27616:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"27571:21:46"},"nodeType":"YulFunctionCall","src":"27571:52:46"},"nodeType":"YulExpressionStatement","src":"27571:52:46"},{"nodeType":"YulAssignment","src":"27632:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27643:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"27670:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"27648:21:46"},"nodeType":"YulFunctionCall","src":"27648:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27639:3:46"},"nodeType":"YulFunctionCall","src":"27639:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"27632:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"27397:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"27404:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"27412:3:46","type":""}],"src":"27328:356:46"},{"body":{"nodeType":"YulBlock","src":"27776:79:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27793:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27842:5:46"}],"functionName":{"name":"convert_t_enum$_ErrorCodes_$4618_to_t_uint8","nodeType":"YulIdentifier","src":"27798:43:46"},"nodeType":"YulFunctionCall","src":"27798:50:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27786:6:46"},"nodeType":"YulFunctionCall","src":"27786:63:46"},"nodeType":"YulExpressionStatement","src":"27786:63:46"}]},"name":"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"27764:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"27771:3:46","type":""}],"src":"27690:165:46"},{"body":{"nodeType":"YulBlock","src":"27932:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"27949:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"27971:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"27954:16:46"},"nodeType":"YulFunctionCall","src":"27954:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27942:6:46"},"nodeType":"YulFunctionCall","src":"27942:36:46"},"nodeType":"YulExpressionStatement","src":"27942:36:46"}]},"name":"abi_encode_t_int128_to_t_int128_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"27920:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"27927:3:46","type":""}],"src":"27861:123:46"},{"body":{"nodeType":"YulBlock","src":"28051:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28068:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28090:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"28073:16:46"},"nodeType":"YulFunctionCall","src":"28073:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28061:6:46"},"nodeType":"YulFunctionCall","src":"28061:36:46"},"nodeType":"YulExpressionStatement","src":"28061:36:46"}]},"name":"abi_encode_t_int128_to_t_int128_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28039:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"28046:3:46","type":""}],"src":"27990:113:46"},{"body":{"nodeType":"YulBlock","src":"28178:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28195:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28216:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"28200:15:46"},"nodeType":"YulFunctionCall","src":"28200:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28188:6:46"},"nodeType":"YulFunctionCall","src":"28188:35:46"},"nodeType":"YulExpressionStatement","src":"28188:35:46"}]},"name":"abi_encode_t_int32_to_t_int32_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28166:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"28173:3:46","type":""}],"src":"28109:120:46"},{"body":{"nodeType":"YulBlock","src":"28294:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28311:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28332:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"28316:15:46"},"nodeType":"YulFunctionCall","src":"28316:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28304:6:46"},"nodeType":"YulFunctionCall","src":"28304:35:46"},"nodeType":"YulExpressionStatement","src":"28304:35:46"}]},"name":"abi_encode_t_int32_to_t_int32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28282:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"28289:3:46","type":""}],"src":"28235:110:46"},{"body":{"nodeType":"YulBlock","src":"28451:280:46","statements":[{"nodeType":"YulVariableDeclaration","src":"28461:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28508:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"28475:32:46"},"nodeType":"YulFunctionCall","src":"28475:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"28465:6:46","type":""}]},{"nodeType":"YulAssignment","src":"28523:86:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28597:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"28602:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"28530:66:46"},"nodeType":"YulFunctionCall","src":"28530:79:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"28523:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28644:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"28651:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28640:3:46"},"nodeType":"YulFunctionCall","src":"28640:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"28658:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"28663:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"28618:21:46"},"nodeType":"YulFunctionCall","src":"28618:52:46"},"nodeType":"YulExpressionStatement","src":"28618:52:46"},{"nodeType":"YulAssignment","src":"28679:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28690:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"28717:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"28695:21:46"},"nodeType":"YulFunctionCall","src":"28695:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28686:3:46"},"nodeType":"YulFunctionCall","src":"28686:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"28679:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28432:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"28439:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"28447:3:46","type":""}],"src":"28351:380:46"},{"body":{"nodeType":"YulBlock","src":"28827:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"28837:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28884:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"28851:32:46"},"nodeType":"YulFunctionCall","src":"28851:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"28841:6:46","type":""}]},{"nodeType":"YulAssignment","src":"28899:76:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"28963:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"28968:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_library","nodeType":"YulIdentifier","src":"28906:56:46"},"nodeType":"YulFunctionCall","src":"28906:69:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"28899:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"29010:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"29017:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29006:3:46"},"nodeType":"YulFunctionCall","src":"29006:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"29024:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"29029:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"28984:21:46"},"nodeType":"YulFunctionCall","src":"28984:52:46"},"nodeType":"YulExpressionStatement","src":"28984:52:46"},{"nodeType":"YulAssignment","src":"29045:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"29056:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"29083:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"29061:21:46"},"nodeType":"YulFunctionCall","src":"29061:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29052:3:46"},"nodeType":"YulFunctionCall","src":"29052:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"29045:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28808:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"28815:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"28823:3:46","type":""}],"src":"28737:360:46"},{"body":{"nodeType":"YulBlock","src":"29213:267:46","statements":[{"nodeType":"YulVariableDeclaration","src":"29223:53:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"29270:5:46"}],"functionName":{"name":"array_length_t_string_memory_ptr","nodeType":"YulIdentifier","src":"29237:32:46"},"nodeType":"YulFunctionCall","src":"29237:39:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"29227:6:46","type":""}]},{"nodeType":"YulAssignment","src":"29285:96:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"29369:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"29374:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"29292:76:46"},"nodeType":"YulFunctionCall","src":"29292:89:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"29285:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"29416:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"29423:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29412:3:46"},"nodeType":"YulFunctionCall","src":"29412:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"29430:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"29435:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"29390:21:46"},"nodeType":"YulFunctionCall","src":"29390:52:46"},"nodeType":"YulExpressionStatement","src":"29390:52:46"},{"nodeType":"YulAssignment","src":"29451:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"29462:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"29467:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29458:3:46"},"nodeType":"YulFunctionCall","src":"29458:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"29451:3:46"}]}]},"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"29194:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"29201:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"29209:3:46","type":""}],"src":"29103:377:46"},{"body":{"nodeType":"YulBlock","src":"29650:238:46","statements":[{"nodeType":"YulAssignment","src":"29660:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"29744:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"29749:2:46","type":"","value":"54"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"29667:76:46"},"nodeType":"YulFunctionCall","src":"29667:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"29660:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"29850:3:46"}],"functionName":{"name":"store_literal_in_memory_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1","nodeType":"YulIdentifier","src":"29761:88:46"},"nodeType":"YulFunctionCall","src":"29761:93:46"},"nodeType":"YulExpressionStatement","src":"29761:93:46"},{"nodeType":"YulAssignment","src":"29863:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"29874:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"29879:2:46","type":"","value":"54"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"29870:3:46"},"nodeType":"YulFunctionCall","src":"29870:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"29863:3:46"}]}]},"name":"abi_encode_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"29638:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"29646:3:46","type":""}],"src":"29486:402:46"},{"body":{"nodeType":"YulBlock","src":"30058:238:46","statements":[{"nodeType":"YulAssignment","src":"30068:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30152:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"30157:2:46","type":"","value":"23"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"30075:76:46"},"nodeType":"YulFunctionCall","src":"30075:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"30068:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30258:3:46"}],"functionName":{"name":"store_literal_in_memory_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d","nodeType":"YulIdentifier","src":"30169:88:46"},"nodeType":"YulFunctionCall","src":"30169:93:46"},"nodeType":"YulExpressionStatement","src":"30169:93:46"},{"nodeType":"YulAssignment","src":"30271:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30282:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"30287:2:46","type":"","value":"23"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30278:3:46"},"nodeType":"YulFunctionCall","src":"30278:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"30271:3:46"}]}]},"name":"abi_encode_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"30046:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"30054:3:46","type":""}],"src":"29894:402:46"},{"body":{"nodeType":"YulBlock","src":"30448:220:46","statements":[{"nodeType":"YulAssignment","src":"30458:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30524:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"30529:2:46","type":"","value":"69"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"30465:58:46"},"nodeType":"YulFunctionCall","src":"30465:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"30458:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30630:3:46"}],"functionName":{"name":"store_literal_in_memory_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e","nodeType":"YulIdentifier","src":"30541:88:46"},"nodeType":"YulFunctionCall","src":"30541:93:46"},"nodeType":"YulExpressionStatement","src":"30541:93:46"},{"nodeType":"YulAssignment","src":"30643:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30654:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"30659:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"30650:3:46"},"nodeType":"YulFunctionCall","src":"30650:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"30643:3:46"}]}]},"name":"abi_encode_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"30436:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"30444:3:46","type":""}],"src":"30302:366:46"},{"body":{"nodeType":"YulBlock","src":"30838:238:46","statements":[{"nodeType":"YulAssignment","src":"30848:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"30932:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"30937:2:46","type":"","value":"17"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"30855:76:46"},"nodeType":"YulFunctionCall","src":"30855:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"30848:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31038:3:46"}],"functionName":{"name":"store_literal_in_memory_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5","nodeType":"YulIdentifier","src":"30949:88:46"},"nodeType":"YulFunctionCall","src":"30949:93:46"},"nodeType":"YulExpressionStatement","src":"30949:93:46"},{"nodeType":"YulAssignment","src":"31051:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31062:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"31067:2:46","type":"","value":"17"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31058:3:46"},"nodeType":"YulFunctionCall","src":"31058:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"31051:3:46"}]}]},"name":"abi_encode_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"30826:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"30834:3:46","type":""}],"src":"30674:402:46"},{"body":{"nodeType":"YulBlock","src":"31228:220:46","statements":[{"nodeType":"YulAssignment","src":"31238:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31304:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"31309:2:46","type":"","value":"74"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"31245:58:46"},"nodeType":"YulFunctionCall","src":"31245:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"31238:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31410:3:46"}],"functionName":{"name":"store_literal_in_memory_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de","nodeType":"YulIdentifier","src":"31321:88:46"},"nodeType":"YulFunctionCall","src":"31321:93:46"},"nodeType":"YulExpressionStatement","src":"31321:93:46"},{"nodeType":"YulAssignment","src":"31423:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31434:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"31439:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31430:3:46"},"nodeType":"YulFunctionCall","src":"31430:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"31423:3:46"}]}]},"name":"abi_encode_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"31216:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"31224:3:46","type":""}],"src":"31082:366:46"},{"body":{"nodeType":"YulBlock","src":"31618:238:46","statements":[{"nodeType":"YulAssignment","src":"31628:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31712:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"31717:2:46","type":"","value":"29"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"31635:76:46"},"nodeType":"YulFunctionCall","src":"31635:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"31628:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31818:3:46"}],"functionName":{"name":"store_literal_in_memory_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0","nodeType":"YulIdentifier","src":"31729:88:46"},"nodeType":"YulFunctionCall","src":"31729:93:46"},"nodeType":"YulExpressionStatement","src":"31729:93:46"},{"nodeType":"YulAssignment","src":"31831:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"31842:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"31847:2:46","type":"","value":"29"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"31838:3:46"},"nodeType":"YulFunctionCall","src":"31838:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"31831:3:46"}]}]},"name":"abi_encode_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"31606:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"31614:3:46","type":""}],"src":"31454:402:46"},{"body":{"nodeType":"YulBlock","src":"32026:236:46","statements":[{"nodeType":"YulAssignment","src":"32036:91:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32120:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"32125:1:46","type":"","value":"6"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"32043:76:46"},"nodeType":"YulFunctionCall","src":"32043:84:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"32036:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32225:3:46"}],"functionName":{"name":"store_literal_in_memory_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","nodeType":"YulIdentifier","src":"32136:88:46"},"nodeType":"YulFunctionCall","src":"32136:93:46"},"nodeType":"YulExpressionStatement","src":"32136:93:46"},{"nodeType":"YulAssignment","src":"32238:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32249:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"32254:1:46","type":"","value":"6"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32245:3:46"},"nodeType":"YulFunctionCall","src":"32245:11:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"32238:3:46"}]}]},"name":"abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"32014:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"32022:3:46","type":""}],"src":"31862:400:46"},{"body":{"nodeType":"YulBlock","src":"32414:220:46","statements":[{"nodeType":"YulAssignment","src":"32424:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32490:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"32495:2:46","type":"","value":"75"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"32431:58:46"},"nodeType":"YulFunctionCall","src":"32431:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"32424:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32596:3:46"}],"functionName":{"name":"store_literal_in_memory_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340","nodeType":"YulIdentifier","src":"32507:88:46"},"nodeType":"YulFunctionCall","src":"32507:93:46"},"nodeType":"YulExpressionStatement","src":"32507:93:46"},{"nodeType":"YulAssignment","src":"32609:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32620:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"32625:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"32616:3:46"},"nodeType":"YulFunctionCall","src":"32616:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"32609:3:46"}]}]},"name":"abi_encode_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"32402:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"32410:3:46","type":""}],"src":"32268:366:46"},{"body":{"nodeType":"YulBlock","src":"32804:238:46","statements":[{"nodeType":"YulAssignment","src":"32814:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"32898:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"32903:2:46","type":"","value":"27"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"32821:76:46"},"nodeType":"YulFunctionCall","src":"32821:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"32814:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33004:3:46"}],"functionName":{"name":"store_literal_in_memory_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1","nodeType":"YulIdentifier","src":"32915:88:46"},"nodeType":"YulFunctionCall","src":"32915:93:46"},"nodeType":"YulExpressionStatement","src":"32915:93:46"},{"nodeType":"YulAssignment","src":"33017:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33028:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"33033:2:46","type":"","value":"27"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33024:3:46"},"nodeType":"YulFunctionCall","src":"33024:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"33017:3:46"}]}]},"name":"abi_encode_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"32792:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"32800:3:46","type":""}],"src":"32640:402:46"},{"body":{"nodeType":"YulBlock","src":"33212:238:46","statements":[{"nodeType":"YulAssignment","src":"33222:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33306:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"33311:2:46","type":"","value":"16"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"33229:76:46"},"nodeType":"YulFunctionCall","src":"33229:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"33222:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33412:3:46"}],"functionName":{"name":"store_literal_in_memory_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7","nodeType":"YulIdentifier","src":"33323:88:46"},"nodeType":"YulFunctionCall","src":"33323:93:46"},"nodeType":"YulExpressionStatement","src":"33323:93:46"},{"nodeType":"YulAssignment","src":"33425:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33436:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"33441:2:46","type":"","value":"16"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33432:3:46"},"nodeType":"YulFunctionCall","src":"33432:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"33425:3:46"}]}]},"name":"abi_encode_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"33200:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"33208:3:46","type":""}],"src":"33048:402:46"},{"body":{"nodeType":"YulBlock","src":"33620:238:46","statements":[{"nodeType":"YulAssignment","src":"33630:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33714:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"33719:2:46","type":"","value":"44"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"33637:76:46"},"nodeType":"YulFunctionCall","src":"33637:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"33630:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33820:3:46"}],"functionName":{"name":"store_literal_in_memory_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66","nodeType":"YulIdentifier","src":"33731:88:46"},"nodeType":"YulFunctionCall","src":"33731:93:46"},"nodeType":"YulExpressionStatement","src":"33731:93:46"},{"nodeType":"YulAssignment","src":"33833:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"33844:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"33849:2:46","type":"","value":"44"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"33840:3:46"},"nodeType":"YulFunctionCall","src":"33840:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"33833:3:46"}]}]},"name":"abi_encode_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"33608:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"33616:3:46","type":""}],"src":"33456:402:46"},{"body":{"nodeType":"YulBlock","src":"34010:220:46","statements":[{"nodeType":"YulAssignment","src":"34020:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34086:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34091:2:46","type":"","value":"72"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"34027:58:46"},"nodeType":"YulFunctionCall","src":"34027:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"34020:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34192:3:46"}],"functionName":{"name":"store_literal_in_memory_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5","nodeType":"YulIdentifier","src":"34103:88:46"},"nodeType":"YulFunctionCall","src":"34103:93:46"},"nodeType":"YulExpressionStatement","src":"34103:93:46"},{"nodeType":"YulAssignment","src":"34205:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34216:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34221:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34212:3:46"},"nodeType":"YulFunctionCall","src":"34212:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"34205:3:46"}]}]},"name":"abi_encode_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"33998:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"34006:3:46","type":""}],"src":"33864:366:46"},{"body":{"nodeType":"YulBlock","src":"34400:238:46","statements":[{"nodeType":"YulAssignment","src":"34410:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34494:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34499:2:46","type":"","value":"12"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"34417:76:46"},"nodeType":"YulFunctionCall","src":"34417:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"34410:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34600:3:46"}],"functionName":{"name":"store_literal_in_memory_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","nodeType":"YulIdentifier","src":"34511:88:46"},"nodeType":"YulFunctionCall","src":"34511:93:46"},"nodeType":"YulExpressionStatement","src":"34511:93:46"},{"nodeType":"YulAssignment","src":"34613:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34624:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34629:2:46","type":"","value":"12"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"34620:3:46"},"nodeType":"YulFunctionCall","src":"34620:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"34613:3:46"}]}]},"name":"abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"34388:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"34396:3:46","type":""}],"src":"34236:402:46"},{"body":{"nodeType":"YulBlock","src":"34808:236:46","statements":[{"nodeType":"YulAssignment","src":"34818:91:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"34902:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"34907:1:46","type":"","value":"1"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"34825:76:46"},"nodeType":"YulFunctionCall","src":"34825:84:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"34818:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35007:3:46"}],"functionName":{"name":"store_literal_in_memory_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","nodeType":"YulIdentifier","src":"34918:88:46"},"nodeType":"YulFunctionCall","src":"34918:93:46"},"nodeType":"YulExpressionStatement","src":"34918:93:46"},{"nodeType":"YulAssignment","src":"35020:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35031:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35036:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35027:3:46"},"nodeType":"YulFunctionCall","src":"35027:11:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"35020:3:46"}]}]},"name":"abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"34796:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"34804:3:46","type":""}],"src":"34644:400:46"},{"body":{"nodeType":"YulBlock","src":"35214:236:46","statements":[{"nodeType":"YulAssignment","src":"35224:91:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35308:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35313:1:46","type":"","value":"6"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"35231:76:46"},"nodeType":"YulFunctionCall","src":"35231:84:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"35224:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35413:3:46"}],"functionName":{"name":"store_literal_in_memory_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","nodeType":"YulIdentifier","src":"35324:88:46"},"nodeType":"YulFunctionCall","src":"35324:93:46"},"nodeType":"YulExpressionStatement","src":"35324:93:46"},{"nodeType":"YulAssignment","src":"35426:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35437:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35442:1:46","type":"","value":"6"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35433:3:46"},"nodeType":"YulFunctionCall","src":"35433:11:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"35426:3:46"}]}]},"name":"abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"35202:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"35210:3:46","type":""}],"src":"35050:400:46"},{"body":{"nodeType":"YulBlock","src":"35620:238:46","statements":[{"nodeType":"YulAssignment","src":"35630:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35714:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35719:2:46","type":"","value":"15"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"35637:76:46"},"nodeType":"YulFunctionCall","src":"35637:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"35630:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35820:3:46"}],"functionName":{"name":"store_literal_in_memory_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916","nodeType":"YulIdentifier","src":"35731:88:46"},"nodeType":"YulFunctionCall","src":"35731:93:46"},"nodeType":"YulExpressionStatement","src":"35731:93:46"},{"nodeType":"YulAssignment","src":"35833:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"35844:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"35849:2:46","type":"","value":"15"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"35840:3:46"},"nodeType":"YulFunctionCall","src":"35840:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"35833:3:46"}]}]},"name":"abi_encode_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"35608:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"35616:3:46","type":""}],"src":"35456:402:46"},{"body":{"nodeType":"YulBlock","src":"36010:220:46","statements":[{"nodeType":"YulAssignment","src":"36020:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36086:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36091:2:46","type":"","value":"72"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"36027:58:46"},"nodeType":"YulFunctionCall","src":"36027:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"36020:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36192:3:46"}],"functionName":{"name":"store_literal_in_memory_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1","nodeType":"YulIdentifier","src":"36103:88:46"},"nodeType":"YulFunctionCall","src":"36103:93:46"},"nodeType":"YulExpressionStatement","src":"36103:93:46"},{"nodeType":"YulAssignment","src":"36205:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36216:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36221:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36212:3:46"},"nodeType":"YulFunctionCall","src":"36212:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"36205:3:46"}]}]},"name":"abi_encode_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"35998:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"36006:3:46","type":""}],"src":"35864:366:46"},{"body":{"nodeType":"YulBlock","src":"36400:238:46","statements":[{"nodeType":"YulAssignment","src":"36410:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36494:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36499:2:46","type":"","value":"16"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"36417:76:46"},"nodeType":"YulFunctionCall","src":"36417:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"36410:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36600:3:46"}],"functionName":{"name":"store_literal_in_memory_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","nodeType":"YulIdentifier","src":"36511:88:46"},"nodeType":"YulFunctionCall","src":"36511:93:46"},"nodeType":"YulExpressionStatement","src":"36511:93:46"},{"nodeType":"YulAssignment","src":"36613:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36624:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36629:2:46","type":"","value":"16"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36620:3:46"},"nodeType":"YulFunctionCall","src":"36620:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"36613:3:46"}]}]},"name":"abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"36388:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"36396:3:46","type":""}],"src":"36236:402:46"},{"body":{"nodeType":"YulBlock","src":"36790:220:46","statements":[{"nodeType":"YulAssignment","src":"36800:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36866:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"36871:2:46","type":"","value":"74"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"36807:58:46"},"nodeType":"YulFunctionCall","src":"36807:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"36800:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36972:3:46"}],"functionName":{"name":"store_literal_in_memory_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0","nodeType":"YulIdentifier","src":"36883:88:46"},"nodeType":"YulFunctionCall","src":"36883:93:46"},"nodeType":"YulExpressionStatement","src":"36883:93:46"},{"nodeType":"YulAssignment","src":"36985:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"36996:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37001:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"36992:3:46"},"nodeType":"YulFunctionCall","src":"36992:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"36985:3:46"}]}]},"name":"abi_encode_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"36778:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"36786:3:46","type":""}],"src":"36644:366:46"},{"body":{"nodeType":"YulBlock","src":"37162:220:46","statements":[{"nodeType":"YulAssignment","src":"37172:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37238:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37243:2:46","type":"","value":"74"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"37179:58:46"},"nodeType":"YulFunctionCall","src":"37179:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"37172:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37344:3:46"}],"functionName":{"name":"store_literal_in_memory_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395","nodeType":"YulIdentifier","src":"37255:88:46"},"nodeType":"YulFunctionCall","src":"37255:93:46"},"nodeType":"YulExpressionStatement","src":"37255:93:46"},{"nodeType":"YulAssignment","src":"37357:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37368:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37373:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37364:3:46"},"nodeType":"YulFunctionCall","src":"37364:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"37357:3:46"}]}]},"name":"abi_encode_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37150:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"37158:3:46","type":""}],"src":"37016:366:46"},{"body":{"nodeType":"YulBlock","src":"37552:238:46","statements":[{"nodeType":"YulAssignment","src":"37562:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37646:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37651:2:46","type":"","value":"33"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"37569:76:46"},"nodeType":"YulFunctionCall","src":"37569:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"37562:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37752:3:46"}],"functionName":{"name":"store_literal_in_memory_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a","nodeType":"YulIdentifier","src":"37663:88:46"},"nodeType":"YulFunctionCall","src":"37663:93:46"},"nodeType":"YulExpressionStatement","src":"37663:93:46"},{"nodeType":"YulAssignment","src":"37765:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"37776:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"37781:2:46","type":"","value":"33"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"37772:3:46"},"nodeType":"YulFunctionCall","src":"37772:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"37765:3:46"}]}]},"name":"abi_encode_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37540:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"37548:3:46","type":""}],"src":"37388:402:46"},{"body":{"nodeType":"YulBlock","src":"37942:220:46","statements":[{"nodeType":"YulAssignment","src":"37952:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38018:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38023:2:46","type":"","value":"71"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"37959:58:46"},"nodeType":"YulFunctionCall","src":"37959:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"37952:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38124:3:46"}],"functionName":{"name":"store_literal_in_memory_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6","nodeType":"YulIdentifier","src":"38035:88:46"},"nodeType":"YulFunctionCall","src":"38035:93:46"},"nodeType":"YulExpressionStatement","src":"38035:93:46"},{"nodeType":"YulAssignment","src":"38137:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38148:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38153:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38144:3:46"},"nodeType":"YulFunctionCall","src":"38144:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"38137:3:46"}]}]},"name":"abi_encode_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"37930:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"37938:3:46","type":""}],"src":"37796:366:46"},{"body":{"nodeType":"YulBlock","src":"38314:220:46","statements":[{"nodeType":"YulAssignment","src":"38324:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38390:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38395:2:46","type":"","value":"72"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"38331:58:46"},"nodeType":"YulFunctionCall","src":"38331:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"38324:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38496:3:46"}],"functionName":{"name":"store_literal_in_memory_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8","nodeType":"YulIdentifier","src":"38407:88:46"},"nodeType":"YulFunctionCall","src":"38407:93:46"},"nodeType":"YulExpressionStatement","src":"38407:93:46"},{"nodeType":"YulAssignment","src":"38509:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38520:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38525:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38516:3:46"},"nodeType":"YulFunctionCall","src":"38516:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"38509:3:46"}]}]},"name":"abi_encode_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"38302:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"38310:3:46","type":""}],"src":"38168:366:46"},{"body":{"nodeType":"YulBlock","src":"38704:238:46","statements":[{"nodeType":"YulAssignment","src":"38714:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38798:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38803:2:46","type":"","value":"26"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"38721:76:46"},"nodeType":"YulFunctionCall","src":"38721:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"38714:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38904:3:46"}],"functionName":{"name":"store_literal_in_memory_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d","nodeType":"YulIdentifier","src":"38815:88:46"},"nodeType":"YulFunctionCall","src":"38815:93:46"},"nodeType":"YulExpressionStatement","src":"38815:93:46"},{"nodeType":"YulAssignment","src":"38917:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"38928:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"38933:2:46","type":"","value":"26"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"38924:3:46"},"nodeType":"YulFunctionCall","src":"38924:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"38917:3:46"}]}]},"name":"abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"38692:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"38700:3:46","type":""}],"src":"38540:402:46"},{"body":{"nodeType":"YulBlock","src":"39112:238:46","statements":[{"nodeType":"YulAssignment","src":"39122:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39206:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"39211:2:46","type":"","value":"36"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"39129:76:46"},"nodeType":"YulFunctionCall","src":"39129:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39122:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39312:3:46"}],"functionName":{"name":"store_literal_in_memory_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5","nodeType":"YulIdentifier","src":"39223:88:46"},"nodeType":"YulFunctionCall","src":"39223:93:46"},"nodeType":"YulExpressionStatement","src":"39223:93:46"},{"nodeType":"YulAssignment","src":"39325:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39336:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"39341:2:46","type":"","value":"36"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"39332:3:46"},"nodeType":"YulFunctionCall","src":"39332:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"39325:3:46"}]}]},"name":"abi_encode_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"39100:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"39108:3:46","type":""}],"src":"38948:402:46"},{"body":{"nodeType":"YulBlock","src":"39502:220:46","statements":[{"nodeType":"YulAssignment","src":"39512:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39578:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"39583:2:46","type":"","value":"71"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"39519:58:46"},"nodeType":"YulFunctionCall","src":"39519:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39512:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39684:3:46"}],"functionName":{"name":"store_literal_in_memory_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d","nodeType":"YulIdentifier","src":"39595:88:46"},"nodeType":"YulFunctionCall","src":"39595:93:46"},"nodeType":"YulExpressionStatement","src":"39595:93:46"},{"nodeType":"YulAssignment","src":"39697:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39708:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"39713:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"39704:3:46"},"nodeType":"YulFunctionCall","src":"39704:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"39697:3:46"}]}]},"name":"abi_encode_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"39490:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"39498:3:46","type":""}],"src":"39356:366:46"},{"body":{"nodeType":"YulBlock","src":"39892:238:46","statements":[{"nodeType":"YulAssignment","src":"39902:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"39986:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"39991:2:46","type":"","value":"28"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"39909:76:46"},"nodeType":"YulFunctionCall","src":"39909:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"39902:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40092:3:46"}],"functionName":{"name":"store_literal_in_memory_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58","nodeType":"YulIdentifier","src":"40003:88:46"},"nodeType":"YulFunctionCall","src":"40003:93:46"},"nodeType":"YulExpressionStatement","src":"40003:93:46"},{"nodeType":"YulAssignment","src":"40105:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40116:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"40121:2:46","type":"","value":"28"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"40112:3:46"},"nodeType":"YulFunctionCall","src":"40112:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"40105:3:46"}]}]},"name":"abi_encode_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"39880:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"39888:3:46","type":""}],"src":"39728:402:46"},{"body":{"nodeType":"YulBlock","src":"40300:238:46","statements":[{"nodeType":"YulAssignment","src":"40310:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40394:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"40399:2:46","type":"","value":"26"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"40317:76:46"},"nodeType":"YulFunctionCall","src":"40317:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"40310:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40500:3:46"}],"functionName":{"name":"store_literal_in_memory_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2","nodeType":"YulIdentifier","src":"40411:88:46"},"nodeType":"YulFunctionCall","src":"40411:93:46"},"nodeType":"YulExpressionStatement","src":"40411:93:46"},{"nodeType":"YulAssignment","src":"40513:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40524:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"40529:2:46","type":"","value":"26"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"40520:3:46"},"nodeType":"YulFunctionCall","src":"40520:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"40513:3:46"}]}]},"name":"abi_encode_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"40288:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"40296:3:46","type":""}],"src":"40136:402:46"},{"body":{"nodeType":"YulBlock","src":"40690:220:46","statements":[{"nodeType":"YulAssignment","src":"40700:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40766:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"40771:2:46","type":"","value":"70"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"40707:58:46"},"nodeType":"YulFunctionCall","src":"40707:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"40700:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40872:3:46"}],"functionName":{"name":"store_literal_in_memory_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207","nodeType":"YulIdentifier","src":"40783:88:46"},"nodeType":"YulFunctionCall","src":"40783:93:46"},"nodeType":"YulExpressionStatement","src":"40783:93:46"},{"nodeType":"YulAssignment","src":"40885:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"40896:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"40901:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"40892:3:46"},"nodeType":"YulFunctionCall","src":"40892:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"40885:3:46"}]}]},"name":"abi_encode_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"40678:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"40686:3:46","type":""}],"src":"40544:366:46"},{"body":{"nodeType":"YulBlock","src":"41080:238:46","statements":[{"nodeType":"YulAssignment","src":"41090:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41174:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"41179:2:46","type":"","value":"29"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"41097:76:46"},"nodeType":"YulFunctionCall","src":"41097:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"41090:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41280:3:46"}],"functionName":{"name":"store_literal_in_memory_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594","nodeType":"YulIdentifier","src":"41191:88:46"},"nodeType":"YulFunctionCall","src":"41191:93:46"},"nodeType":"YulExpressionStatement","src":"41191:93:46"},{"nodeType":"YulAssignment","src":"41293:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41304:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"41309:2:46","type":"","value":"29"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41300:3:46"},"nodeType":"YulFunctionCall","src":"41300:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"41293:3:46"}]}]},"name":"abi_encode_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"41068:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"41076:3:46","type":""}],"src":"40916:402:46"},{"body":{"nodeType":"YulBlock","src":"41488:238:46","statements":[{"nodeType":"YulAssignment","src":"41498:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41582:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"41587:2:46","type":"","value":"10"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"41505:76:46"},"nodeType":"YulFunctionCall","src":"41505:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"41498:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41688:3:46"}],"functionName":{"name":"store_literal_in_memory_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277","nodeType":"YulIdentifier","src":"41599:88:46"},"nodeType":"YulFunctionCall","src":"41599:93:46"},"nodeType":"YulExpressionStatement","src":"41599:93:46"},{"nodeType":"YulAssignment","src":"41701:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41712:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"41717:2:46","type":"","value":"10"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"41708:3:46"},"nodeType":"YulFunctionCall","src":"41708:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"41701:3:46"}]}]},"name":"abi_encode_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"41476:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"41484:3:46","type":""}],"src":"41324:402:46"},{"body":{"nodeType":"YulBlock","src":"41878:220:46","statements":[{"nodeType":"YulAssignment","src":"41888:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"41954:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"41959:2:46","type":"","value":"73"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"41895:58:46"},"nodeType":"YulFunctionCall","src":"41895:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"41888:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42060:3:46"}],"functionName":{"name":"store_literal_in_memory_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a","nodeType":"YulIdentifier","src":"41971:88:46"},"nodeType":"YulFunctionCall","src":"41971:93:46"},"nodeType":"YulExpressionStatement","src":"41971:93:46"},{"nodeType":"YulAssignment","src":"42073:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42084:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"42089:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42080:3:46"},"nodeType":"YulFunctionCall","src":"42080:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"42073:3:46"}]}]},"name":"abi_encode_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"41866:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"41874:3:46","type":""}],"src":"41732:366:46"},{"body":{"nodeType":"YulBlock","src":"42268:238:46","statements":[{"nodeType":"YulAssignment","src":"42278:92:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42362:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"42367:2:46","type":"","value":"40"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"42285:76:46"},"nodeType":"YulFunctionCall","src":"42285:85:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"42278:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42468:3:46"}],"functionName":{"name":"store_literal_in_memory_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2","nodeType":"YulIdentifier","src":"42379:88:46"},"nodeType":"YulFunctionCall","src":"42379:93:46"},"nodeType":"YulExpressionStatement","src":"42379:93:46"},{"nodeType":"YulAssignment","src":"42481:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42492:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"42497:2:46","type":"","value":"40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42488:3:46"},"nodeType":"YulFunctionCall","src":"42488:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"42481:3:46"}]}]},"name":"abi_encode_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"42256:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"42264:3:46","type":""}],"src":"42104:402:46"},{"body":{"nodeType":"YulBlock","src":"42676:236:46","statements":[{"nodeType":"YulAssignment","src":"42686:91:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42770:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"42775:1:46","type":"","value":"8"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"42693:76:46"},"nodeType":"YulFunctionCall","src":"42693:84:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"42686:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42875:3:46"}],"functionName":{"name":"store_literal_in_memory_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100","nodeType":"YulIdentifier","src":"42786:88:46"},"nodeType":"YulFunctionCall","src":"42786:93:46"},"nodeType":"YulExpressionStatement","src":"42786:93:46"},{"nodeType":"YulAssignment","src":"42888:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"42899:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"42904:1:46","type":"","value":"8"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"42895:3:46"},"nodeType":"YulFunctionCall","src":"42895:11:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"42888:3:46"}]}]},"name":"abi_encode_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"42664:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"42672:3:46","type":""}],"src":"42512:400:46"},{"body":{"nodeType":"YulBlock","src":"43082:236:46","statements":[{"nodeType":"YulAssignment","src":"43092:91:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43176:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"43181:1:46","type":"","value":"8"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"43099:76:46"},"nodeType":"YulFunctionCall","src":"43099:84:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"43092:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43281:3:46"}],"functionName":{"name":"store_literal_in_memory_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e","nodeType":"YulIdentifier","src":"43192:88:46"},"nodeType":"YulFunctionCall","src":"43192:93:46"},"nodeType":"YulExpressionStatement","src":"43192:93:46"},{"nodeType":"YulAssignment","src":"43294:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43305:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"43310:1:46","type":"","value":"8"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43301:3:46"},"nodeType":"YulFunctionCall","src":"43301:11:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"43294:3:46"}]}]},"name":"abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"43070:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"43078:3:46","type":""}],"src":"42918:400:46"},{"body":{"nodeType":"YulBlock","src":"43496:496:46","statements":[{"nodeType":"YulVariableDeclaration","src":"43506:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43522:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"43527:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43518:3:46"},"nodeType":"YulFunctionCall","src":"43518:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"43510:4:46","type":""}]},{"nodeType":"YulBlock","src":"43542:241:46","statements":[{"nodeType":"YulVariableDeclaration","src":"43577:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43607:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"43614:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43603:3:46"},"nodeType":"YulFunctionCall","src":"43603:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"43597:5:46"},"nodeType":"YulFunctionCall","src":"43597:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"43581:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43645:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"43650:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43641:3:46"},"nodeType":"YulFunctionCall","src":"43641:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"43661:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"43667:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"43657:3:46"},"nodeType":"YulFunctionCall","src":"43657:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"43634:6:46"},"nodeType":"YulFunctionCall","src":"43634:38:46"},"nodeType":"YulExpressionStatement","src":"43634:38:46"},{"nodeType":"YulAssignment","src":"43685:87:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"43753:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"43767:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library","nodeType":"YulIdentifier","src":"43693:59:46"},"nodeType":"YulFunctionCall","src":"43693:79:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"43685:4:46"}]}]},{"nodeType":"YulBlock","src":"43793:172:46","statements":[{"nodeType":"YulVariableDeclaration","src":"43830:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"43860:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"43867:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43856:3:46"},"nodeType":"YulFunctionCall","src":"43856:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"43850:5:46"},"nodeType":"YulFunctionCall","src":"43850:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"43834:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"43926:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"43944:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"43949:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"43940:3:46"},"nodeType":"YulFunctionCall","src":"43940:14:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_library","nodeType":"YulIdentifier","src":"43886:39:46"},"nodeType":"YulFunctionCall","src":"43886:69:46"},"nodeType":"YulExpressionStatement","src":"43886:69:46"}]},{"nodeType":"YulAssignment","src":"43975:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"43982:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"43975:3:46"}]}]},"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"43475:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"43482:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"43491:3:46","type":""}],"src":"43376:616:46"},{"body":{"nodeType":"YulBlock","src":"44172:1267:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44182:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44198:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"44203:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44194:3:46"},"nodeType":"YulFunctionCall","src":"44194:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"44186:4:46","type":""}]},{"nodeType":"YulBlock","src":"44218:273:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44255:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44285:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"44292:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44281:3:46"},"nodeType":"YulFunctionCall","src":"44281:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"44275:5:46"},"nodeType":"YulFunctionCall","src":"44275:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"44259:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44323:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"44328:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44319:3:46"},"nodeType":"YulFunctionCall","src":"44319:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"44339:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"44345:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"44335:3:46"},"nodeType":"YulFunctionCall","src":"44335:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"44312:6:46"},"nodeType":"YulFunctionCall","src":"44312:38:46"},"nodeType":"YulExpressionStatement","src":"44312:38:46"},{"nodeType":"YulAssignment","src":"44363:117:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"44461:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"44475:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulIdentifier","src":"44371:89:46"},"nodeType":"YulFunctionCall","src":"44371:109:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"44363:4:46"}]}]},{"nodeType":"YulBlock","src":"44501:175:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44543:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44573:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"44580:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44569:3:46"},"nodeType":"YulFunctionCall","src":"44569:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"44563:5:46"},"nodeType":"YulFunctionCall","src":"44563:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"44547:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"44637:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44655:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"44660:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44651:3:46"},"nodeType":"YulFunctionCall","src":"44651:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"44599:37:46"},"nodeType":"YulFunctionCall","src":"44599:67:46"},"nodeType":"YulExpressionStatement","src":"44599:67:46"}]},{"nodeType":"YulBlock","src":"44686:173:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44726:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44756:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"44763:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44752:3:46"},"nodeType":"YulFunctionCall","src":"44752:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"44746:5:46"},"nodeType":"YulFunctionCall","src":"44746:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"44730:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"44820:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"44838:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"44843:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44834:3:46"},"nodeType":"YulFunctionCall","src":"44834:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"44782:37:46"},"nodeType":"YulFunctionCall","src":"44782:67:46"},"nodeType":"YulExpressionStatement","src":"44782:67:46"}]},{"nodeType":"YulBlock","src":"44869:185:46","statements":[{"nodeType":"YulVariableDeclaration","src":"44921:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"44951:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"44958:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"44947:3:46"},"nodeType":"YulFunctionCall","src":"44947:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"44941:5:46"},"nodeType":"YulFunctionCall","src":"44941:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"44925:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"45015:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45033:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45038:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45029:3:46"},"nodeType":"YulFunctionCall","src":"45029:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"44977:37:46"},"nodeType":"YulFunctionCall","src":"44977:67:46"},"nodeType":"YulExpressionStatement","src":"44977:67:46"}]},{"nodeType":"YulBlock","src":"45064:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"45098:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"45128:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"45135:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45124:3:46"},"nodeType":"YulFunctionCall","src":"45124:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"45118:5:46"},"nodeType":"YulFunctionCall","src":"45118:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"45102:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"45194:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45212:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45217:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45208:3:46"},"nodeType":"YulFunctionCall","src":"45208:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"45154:39:46"},"nodeType":"YulFunctionCall","src":"45154:69:46"},"nodeType":"YulExpressionStatement","src":"45154:69:46"}]},{"nodeType":"YulBlock","src":"45243:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"45277:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"45307:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"45314:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45303:3:46"},"nodeType":"YulFunctionCall","src":"45303:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"45297:5:46"},"nodeType":"YulFunctionCall","src":"45297:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"45281:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"45373:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45391:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45396:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45387:3:46"},"nodeType":"YulFunctionCall","src":"45387:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"45333:39:46"},"nodeType":"YulFunctionCall","src":"45333:69:46"},"nodeType":"YulExpressionStatement","src":"45333:69:46"}]},{"nodeType":"YulAssignment","src":"45422:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"45429:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"45422:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"44151:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"44158:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"44167:3:46","type":""}],"src":"44046:1393:46"},{"body":{"nodeType":"YulBlock","src":"45609:1267:46","statements":[{"nodeType":"YulVariableDeclaration","src":"45619:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45635:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45640:4:46","type":"","value":"0xc0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45631:3:46"},"nodeType":"YulFunctionCall","src":"45631:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"45623:4:46","type":""}]},{"nodeType":"YulBlock","src":"45655:273:46","statements":[{"nodeType":"YulVariableDeclaration","src":"45692:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"45722:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"45729:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45718:3:46"},"nodeType":"YulFunctionCall","src":"45718:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"45712:5:46"},"nodeType":"YulFunctionCall","src":"45712:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"45696:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"45760:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"45765:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"45756:3:46"},"nodeType":"YulFunctionCall","src":"45756:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"45776:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"45782:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"45772:3:46"},"nodeType":"YulFunctionCall","src":"45772:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"45749:6:46"},"nodeType":"YulFunctionCall","src":"45749:38:46"},"nodeType":"YulExpressionStatement","src":"45749:38:46"},{"nodeType":"YulAssignment","src":"45800:117:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"45898:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"45912:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library","nodeType":"YulIdentifier","src":"45808:89:46"},"nodeType":"YulFunctionCall","src":"45808:109:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"45800:4:46"}]}]},{"nodeType":"YulBlock","src":"45938:175:46","statements":[{"nodeType":"YulVariableDeclaration","src":"45980:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46010:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46017:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46006:3:46"},"nodeType":"YulFunctionCall","src":"46006:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"46000:5:46"},"nodeType":"YulFunctionCall","src":"46000:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"45984:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"46074:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46092:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46097:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46088:3:46"},"nodeType":"YulFunctionCall","src":"46088:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"46036:37:46"},"nodeType":"YulFunctionCall","src":"46036:67:46"},"nodeType":"YulExpressionStatement","src":"46036:67:46"}]},{"nodeType":"YulBlock","src":"46123:173:46","statements":[{"nodeType":"YulVariableDeclaration","src":"46163:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46193:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46200:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46189:3:46"},"nodeType":"YulFunctionCall","src":"46189:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"46183:5:46"},"nodeType":"YulFunctionCall","src":"46183:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"46167:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"46257:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46275:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46280:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46271:3:46"},"nodeType":"YulFunctionCall","src":"46271:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"46219:37:46"},"nodeType":"YulFunctionCall","src":"46219:67:46"},"nodeType":"YulExpressionStatement","src":"46219:67:46"}]},{"nodeType":"YulBlock","src":"46306:185:46","statements":[{"nodeType":"YulVariableDeclaration","src":"46358:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46388:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46395:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46384:3:46"},"nodeType":"YulFunctionCall","src":"46384:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"46378:5:46"},"nodeType":"YulFunctionCall","src":"46378:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"46362:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"46452:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46470:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46475:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46466:3:46"},"nodeType":"YulFunctionCall","src":"46466:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulIdentifier","src":"46414:37:46"},"nodeType":"YulFunctionCall","src":"46414:67:46"},"nodeType":"YulExpressionStatement","src":"46414:67:46"}]},{"nodeType":"YulBlock","src":"46501:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"46535:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46565:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46572:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46561:3:46"},"nodeType":"YulFunctionCall","src":"46561:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"46555:5:46"},"nodeType":"YulFunctionCall","src":"46555:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"46539:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"46631:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46649:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46654:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46645:3:46"},"nodeType":"YulFunctionCall","src":"46645:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"46591:39:46"},"nodeType":"YulFunctionCall","src":"46591:69:46"},"nodeType":"YulExpressionStatement","src":"46591:69:46"}]},{"nodeType":"YulBlock","src":"46680:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"46714:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"46744:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"46751:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46740:3:46"},"nodeType":"YulFunctionCall","src":"46740:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"46734:5:46"},"nodeType":"YulFunctionCall","src":"46734:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"46718:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"46810:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"46828:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"46833:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"46824:3:46"},"nodeType":"YulFunctionCall","src":"46824:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulIdentifier","src":"46770:39:46"},"nodeType":"YulFunctionCall","src":"46770:69:46"},"nodeType":"YulExpressionStatement","src":"46770:69:46"}]},{"nodeType":"YulAssignment","src":"46859:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"46866:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"46859:3:46"}]}]},"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"45588:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"45595:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"45604:3:46","type":""}],"src":"45493:1383:46"},{"body":{"nodeType":"YulBlock","src":"47064:520:46","statements":[{"nodeType":"YulVariableDeclaration","src":"47074:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47090:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47095:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47086:3:46"},"nodeType":"YulFunctionCall","src":"47086:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"47078:4:46","type":""}]},{"nodeType":"YulBlock","src":"47110:169:46","statements":[{"nodeType":"YulVariableDeclaration","src":"47148:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47178:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47185:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47174:3:46"},"nodeType":"YulFunctionCall","src":"47174:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"47168:5:46"},"nodeType":"YulFunctionCall","src":"47168:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"47152:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"47240:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47258:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47263:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47254:3:46"},"nodeType":"YulFunctionCall","src":"47254:14:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_library","nodeType":"YulIdentifier","src":"47204:35:46"},"nodeType":"YulFunctionCall","src":"47204:65:46"},"nodeType":"YulExpressionStatement","src":"47204:65:46"}]},{"nodeType":"YulBlock","src":"47289:268:46","statements":[{"nodeType":"YulVariableDeclaration","src":"47325:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47355:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"47362:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47351:3:46"},"nodeType":"YulFunctionCall","src":"47351:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"47345:5:46"},"nodeType":"YulFunctionCall","src":"47345:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"47329:12:46","type":""}]},{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47393:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"47398:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"47389:3:46"},"nodeType":"YulFunctionCall","src":"47389:14:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"47409:4:46"},{"name":"pos","nodeType":"YulIdentifier","src":"47415:3:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"47405:3:46"},"nodeType":"YulFunctionCall","src":"47405:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"47382:6:46"},"nodeType":"YulFunctionCall","src":"47382:38:46"},"nodeType":"YulExpressionStatement","src":"47382:38:46"},{"nodeType":"YulAssignment","src":"47433:113:46","value":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"47527:12:46"},{"name":"tail","nodeType":"YulIdentifier","src":"47541:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library","nodeType":"YulIdentifier","src":"47441:85:46"},"nodeType":"YulFunctionCall","src":"47441:105:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"47433:4:46"}]}]},{"nodeType":"YulAssignment","src":"47567:11:46","value":{"name":"tail","nodeType":"YulIdentifier","src":"47574:4:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"47567:3:46"}]}]},"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47043:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"47050:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"47059:3:46","type":""}],"src":"46934:650:46"},{"body":{"nodeType":"YulBlock","src":"47651:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47668:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47690:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"47673:16:46"},"nodeType":"YulFunctionCall","src":"47673:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"47661:6:46"},"nodeType":"YulFunctionCall","src":"47661:36:46"},"nodeType":"YulExpressionStatement","src":"47661:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47639:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"47646:3:46","type":""}],"src":"47590:113:46"},{"body":{"nodeType":"YulBlock","src":"47780:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47797:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47819:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"47802:16:46"},"nodeType":"YulFunctionCall","src":"47802:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"47790:6:46"},"nodeType":"YulFunctionCall","src":"47790:36:46"},"nodeType":"YulExpressionStatement","src":"47790:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47768:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"47775:3:46","type":""}],"src":"47709:123:46"},{"body":{"nodeType":"YulBlock","src":"47899:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"47916:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"47938:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"47921:16:46"},"nodeType":"YulFunctionCall","src":"47921:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"47909:6:46"},"nodeType":"YulFunctionCall","src":"47909:36:46"},"nodeType":"YulExpressionStatement","src":"47909:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"47887:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"47894:3:46","type":""}],"src":"47838:113:46"},{"body":{"nodeType":"YulBlock","src":"48016:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48033:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"48054:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"48038:15:46"},"nodeType":"YulFunctionCall","src":"48038:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"48026:6:46"},"nodeType":"YulFunctionCall","src":"48026:35:46"},"nodeType":"YulExpressionStatement","src":"48026:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"48004:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"48011:3:46","type":""}],"src":"47957:110:46"},{"body":{"nodeType":"YulBlock","src":"48411:469:46","statements":[{"nodeType":"YulAssignment","src":"48422:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48573:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"48429:142:46"},"nodeType":"YulFunctionCall","src":"48429:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"48422:3:46"}]},{"nodeType":"YulAssignment","src":"48587:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"48676:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"48685:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"48594:81:46"},"nodeType":"YulFunctionCall","src":"48594:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"48587:3:46"}]},{"nodeType":"YulAssignment","src":"48699:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"48850:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"48706:142:46"},"nodeType":"YulFunctionCall","src":"48706:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"48699:3:46"}]},{"nodeType":"YulAssignment","src":"48864:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"48871:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"48864:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"48390:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"48396:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"48407:3:46","type":""}],"src":"48073:807:46"},{"body":{"nodeType":"YulBlock","src":"49671:1300:46","statements":[{"nodeType":"YulAssignment","src":"49682:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"49833:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"49689:142:46"},"nodeType":"YulFunctionCall","src":"49689:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"49682:3:46"}]},{"nodeType":"YulAssignment","src":"49847:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"49936:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"49945:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"49854:81:46"},"nodeType":"YulFunctionCall","src":"49854:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"49847:3:46"}]},{"nodeType":"YulAssignment","src":"49959:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50110:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"49966:142:46"},"nodeType":"YulFunctionCall","src":"49966:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"49959:3:46"}]},{"nodeType":"YulAssignment","src":"50124:102:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"50213:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"50222:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"50131:81:46"},"nodeType":"YulFunctionCall","src":"50131:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50124:3:46"}]},{"nodeType":"YulAssignment","src":"50236:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50387:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"50243:142:46"},"nodeType":"YulFunctionCall","src":"50243:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50236:3:46"}]},{"nodeType":"YulAssignment","src":"50401:102:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"50490:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"50499:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"50408:81:46"},"nodeType":"YulFunctionCall","src":"50408:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50401:3:46"}]},{"nodeType":"YulAssignment","src":"50513:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50664:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"50520:142:46"},"nodeType":"YulFunctionCall","src":"50520:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50513:3:46"}]},{"nodeType":"YulAssignment","src":"50678:102:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"50767:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"50776:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"50685:81:46"},"nodeType":"YulFunctionCall","src":"50685:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50678:3:46"}]},{"nodeType":"YulAssignment","src":"50790:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"50941:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"50797:142:46"},"nodeType":"YulFunctionCall","src":"50797:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"50790:3:46"}]},{"nodeType":"YulAssignment","src":"50955:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"50962:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"50955:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"49626:3:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"49632:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"49640:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"49648:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"49656:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"49667:3:46","type":""}],"src":"48886:2085:46"},{"body":{"nodeType":"YulBlock","src":"51762:1300:46","statements":[{"nodeType":"YulAssignment","src":"51773:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"51924:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"51780:142:46"},"nodeType":"YulFunctionCall","src":"51780:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"51773:3:46"}]},{"nodeType":"YulAssignment","src":"51938:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"52027:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"52036:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"51945:81:46"},"nodeType":"YulFunctionCall","src":"51945:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"51938:3:46"}]},{"nodeType":"YulAssignment","src":"52050:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52201:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52057:142:46"},"nodeType":"YulFunctionCall","src":"52057:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52050:3:46"}]},{"nodeType":"YulAssignment","src":"52215:102:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"52304:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"52313:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52222:81:46"},"nodeType":"YulFunctionCall","src":"52222:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52215:3:46"}]},{"nodeType":"YulAssignment","src":"52327:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52478:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52334:142:46"},"nodeType":"YulFunctionCall","src":"52334:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52327:3:46"}]},{"nodeType":"YulAssignment","src":"52492:102:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"52581:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"52590:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52499:81:46"},"nodeType":"YulFunctionCall","src":"52499:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52492:3:46"}]},{"nodeType":"YulAssignment","src":"52604:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"52755:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52611:142:46"},"nodeType":"YulFunctionCall","src":"52611:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52604:3:46"}]},{"nodeType":"YulAssignment","src":"52769:102:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"52858:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"52867:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52776:81:46"},"nodeType":"YulFunctionCall","src":"52776:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52769:3:46"}]},{"nodeType":"YulAssignment","src":"52881:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53032:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"52888:142:46"},"nodeType":"YulFunctionCall","src":"52888:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"52881:3:46"}]},{"nodeType":"YulAssignment","src":"53046:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"53053:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"53046:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"51717:3:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"51723:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"51731:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"51739:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"51747:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"51758:3:46","type":""}],"src":"50977:2085:46"},{"body":{"nodeType":"YulBlock","src":"53406:469:46","statements":[{"nodeType":"YulAssignment","src":"53417:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53568:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"53424:142:46"},"nodeType":"YulFunctionCall","src":"53424:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"53417:3:46"}]},{"nodeType":"YulAssignment","src":"53582:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"53671:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"53680:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"53589:81:46"},"nodeType":"YulFunctionCall","src":"53589:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"53582:3:46"}]},{"nodeType":"YulAssignment","src":"53694:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"53845:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"53701:142:46"},"nodeType":"YulFunctionCall","src":"53701:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"53694:3:46"}]},{"nodeType":"YulAssignment","src":"53859:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"53866:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"53859:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_t_string_memory_ptr_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"53385:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"53391:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"53402:3:46","type":""}],"src":"53068:807:46"},{"body":{"nodeType":"YulBlock","src":"54219:469:46","statements":[{"nodeType":"YulAssignment","src":"54230:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54381:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"54237:142:46"},"nodeType":"YulFunctionCall","src":"54237:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"54230:3:46"}]},{"nodeType":"YulAssignment","src":"54395:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"54484:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"54493:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"54402:81:46"},"nodeType":"YulFunctionCall","src":"54402:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"54395:3:46"}]},{"nodeType":"YulAssignment","src":"54507:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"54658:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"54514:142:46"},"nodeType":"YulFunctionCall","src":"54514:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"54507:3:46"}]},{"nodeType":"YulAssignment","src":"54672:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"54679:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"54672:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_t_string_memory_ptr_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"54198:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"54204:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"54215:3:46","type":""}],"src":"53881:807:46"},{"body":{"nodeType":"YulBlock","src":"55032:469:46","statements":[{"nodeType":"YulAssignment","src":"55043:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55194:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"55050:142:46"},"nodeType":"YulFunctionCall","src":"55050:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"55043:3:46"}]},{"nodeType":"YulAssignment","src":"55208:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"55297:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"55306:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"55215:81:46"},"nodeType":"YulFunctionCall","src":"55215:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"55208:3:46"}]},{"nodeType":"YulAssignment","src":"55320:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"55471:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"55327:142:46"},"nodeType":"YulFunctionCall","src":"55327:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"55320:3:46"}]},{"nodeType":"YulAssignment","src":"55485:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"55492:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"55485:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_t_string_memory_ptr_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"55011:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"55017:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"55028:3:46","type":""}],"src":"54694:807:46"},{"body":{"nodeType":"YulBlock","src":"56292:1300:46","statements":[{"nodeType":"YulAssignment","src":"56303:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56454:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"56310:142:46"},"nodeType":"YulFunctionCall","src":"56310:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"56303:3:46"}]},{"nodeType":"YulAssignment","src":"56468:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"56557:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"56566:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"56475:81:46"},"nodeType":"YulFunctionCall","src":"56475:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"56468:3:46"}]},{"nodeType":"YulAssignment","src":"56580:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"56731:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"56587:142:46"},"nodeType":"YulFunctionCall","src":"56587:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"56580:3:46"}]},{"nodeType":"YulAssignment","src":"56745:102:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"56834:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"56843:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"56752:81:46"},"nodeType":"YulFunctionCall","src":"56752:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"56745:3:46"}]},{"nodeType":"YulAssignment","src":"56857:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57008:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"56864:142:46"},"nodeType":"YulFunctionCall","src":"56864:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"56857:3:46"}]},{"nodeType":"YulAssignment","src":"57022:102:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"57111:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"57120:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"57029:81:46"},"nodeType":"YulFunctionCall","src":"57029:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"57022:3:46"}]},{"nodeType":"YulAssignment","src":"57134:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57285:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"57141:142:46"},"nodeType":"YulFunctionCall","src":"57141:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"57134:3:46"}]},{"nodeType":"YulAssignment","src":"57299:102:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"57388:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"57397:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"57306:81:46"},"nodeType":"YulFunctionCall","src":"57306:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"57299:3:46"}]},{"nodeType":"YulAssignment","src":"57411:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"57562:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"57418:142:46"},"nodeType":"YulFunctionCall","src":"57418:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"57411:3:46"}]},{"nodeType":"YulAssignment","src":"57576:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"57583:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"57576:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"56247:3:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"56253:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"56261:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"56269:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"56277:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"56288:3:46","type":""}],"src":"55507:2085:46"},{"body":{"nodeType":"YulBlock","src":"58383:1300:46","statements":[{"nodeType":"YulAssignment","src":"58394:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58545:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"58401:142:46"},"nodeType":"YulFunctionCall","src":"58401:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"58394:3:46"}]},{"nodeType":"YulAssignment","src":"58559:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"58648:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"58657:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"58566:81:46"},"nodeType":"YulFunctionCall","src":"58566:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"58559:3:46"}]},{"nodeType":"YulAssignment","src":"58671:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"58822:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"58678:142:46"},"nodeType":"YulFunctionCall","src":"58678:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"58671:3:46"}]},{"nodeType":"YulAssignment","src":"58836:102:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"58925:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"58934:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"58843:81:46"},"nodeType":"YulFunctionCall","src":"58843:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"58836:3:46"}]},{"nodeType":"YulAssignment","src":"58948:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59099:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"58955:142:46"},"nodeType":"YulFunctionCall","src":"58955:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"58948:3:46"}]},{"nodeType":"YulAssignment","src":"59113:102:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"59202:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"59211:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"59120:81:46"},"nodeType":"YulFunctionCall","src":"59120:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"59113:3:46"}]},{"nodeType":"YulAssignment","src":"59225:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59376:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"59232:142:46"},"nodeType":"YulFunctionCall","src":"59232:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"59225:3:46"}]},{"nodeType":"YulAssignment","src":"59390:102:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"59479:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"59488:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"59397:81:46"},"nodeType":"YulFunctionCall","src":"59397:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"59390:3:46"}]},{"nodeType":"YulAssignment","src":"59502:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"59653:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"59509:142:46"},"nodeType":"YulFunctionCall","src":"59509:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"59502:3:46"}]},{"nodeType":"YulAssignment","src":"59667:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"59674:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"59667:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"58338:3:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"58344:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"58352:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"58360:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"58368:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"58379:3:46","type":""}],"src":"57598:2085:46"},{"body":{"nodeType":"YulBlock","src":"60027:469:46","statements":[{"nodeType":"YulAssignment","src":"60038:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60189:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"60045:142:46"},"nodeType":"YulFunctionCall","src":"60045:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"60038:3:46"}]},{"nodeType":"YulAssignment","src":"60203:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"60292:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"60301:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"60210:81:46"},"nodeType":"YulFunctionCall","src":"60210:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"60203:3:46"}]},{"nodeType":"YulAssignment","src":"60315:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"60466:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"60322:142:46"},"nodeType":"YulFunctionCall","src":"60322:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"60315:3:46"}]},{"nodeType":"YulAssignment","src":"60480:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"60487:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"60480:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"60006:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"60012:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"60023:3:46","type":""}],"src":"59689:807:46"},{"body":{"nodeType":"YulBlock","src":"61138:1023:46","statements":[{"nodeType":"YulAssignment","src":"61149:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61300:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61156:142:46"},"nodeType":"YulFunctionCall","src":"61156:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61149:3:46"}]},{"nodeType":"YulAssignment","src":"61314:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"61403:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"61412:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61321:81:46"},"nodeType":"YulFunctionCall","src":"61321:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61314:3:46"}]},{"nodeType":"YulAssignment","src":"61426:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61577:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61433:142:46"},"nodeType":"YulFunctionCall","src":"61433:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61426:3:46"}]},{"nodeType":"YulAssignment","src":"61591:102:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"61680:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"61689:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61598:81:46"},"nodeType":"YulFunctionCall","src":"61598:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61591:3:46"}]},{"nodeType":"YulAssignment","src":"61703:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"61854:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61710:142:46"},"nodeType":"YulFunctionCall","src":"61710:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61703:3:46"}]},{"nodeType":"YulAssignment","src":"61868:102:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"61957:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"61966:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61875:81:46"},"nodeType":"YulFunctionCall","src":"61875:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61868:3:46"}]},{"nodeType":"YulAssignment","src":"61980:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"62131:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"61987:142:46"},"nodeType":"YulFunctionCall","src":"61987:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"61980:3:46"}]},{"nodeType":"YulAssignment","src":"62145:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"62152:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"62145:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_t_string_memory_ptr_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_t_string_memory_ptr_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"61101:3:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"61107:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"61115:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"61123:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"61134:3:46","type":""}],"src":"60502:1659:46"},{"body":{"nodeType":"YulBlock","src":"62649:805:46","statements":[{"nodeType":"YulAssignment","src":"62660:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"62811:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"62667:142:46"},"nodeType":"YulFunctionCall","src":"62667:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"62660:3:46"}]},{"nodeType":"YulAssignment","src":"62825:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"62914:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"62923:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"62832:81:46"},"nodeType":"YulFunctionCall","src":"62832:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"62825:3:46"}]},{"nodeType":"YulAssignment","src":"62937:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63088:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"62944:142:46"},"nodeType":"YulFunctionCall","src":"62944:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"62937:3:46"}]},{"nodeType":"YulAssignment","src":"63102:102:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"63191:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"63200:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"63109:81:46"},"nodeType":"YulFunctionCall","src":"63109:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"63102:3:46"}]},{"nodeType":"YulAssignment","src":"63214:102:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"63303:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"63312:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"63221:81:46"},"nodeType":"YulFunctionCall","src":"63221:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"63214:3:46"}]},{"nodeType":"YulAssignment","src":"63326:102:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"63415:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"63424:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"63333:81:46"},"nodeType":"YulFunctionCall","src":"63333:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"63326:3:46"}]},{"nodeType":"YulAssignment","src":"63438:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"63445:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"63438:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_t_string_memory_ptr_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"62604:3:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"62610:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"62618:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"62626:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"62634:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"62645:3:46","type":""}],"src":"62167:1287:46"},{"body":{"nodeType":"YulBlock","src":"63798:469:46","statements":[{"nodeType":"YulAssignment","src":"63809:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"63960:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"63816:142:46"},"nodeType":"YulFunctionCall","src":"63816:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"63809:3:46"}]},{"nodeType":"YulAssignment","src":"63974:102:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"64063:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"64072:3:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"63981:81:46"},"nodeType":"YulFunctionCall","src":"63981:95:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"63974:3:46"}]},{"nodeType":"YulAssignment","src":"64086:155:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"64237:3:46"}],"functionName":{"name":"abi_encode_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66_to_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"64093:142:46"},"nodeType":"YulFunctionCall","src":"64093:148:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"64086:3:46"}]},{"nodeType":"YulAssignment","src":"64251:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"64258:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"64251:3:46"}]}]},"name":"abi_encode_tuple_packed_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_t_string_memory_ptr_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"63777:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"63783:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"63794:3:46","type":""}],"src":"63460:807:46"},{"body":{"nodeType":"YulBlock","src":"64427:231:46","statements":[{"nodeType":"YulAssignment","src":"64437:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"64449:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"64460:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"64445:3:46"},"nodeType":"YulFunctionCall","src":"64445:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"64437:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"64484:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"64495:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"64480:3:46"},"nodeType":"YulFunctionCall","src":"64480:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"64503:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"64509:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"64499:3:46"},"nodeType":"YulFunctionCall","src":"64499:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64473:6:46"},"nodeType":"YulFunctionCall","src":"64473:47:46"},"nodeType":"YulExpressionStatement","src":"64473:47:46"},{"nodeType":"YulAssignment","src":"64529:122:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"64637:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"64646:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"64537:99:46"},"nodeType":"YulFunctionCall","src":"64537:114:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"64529:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"64399:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"64411:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"64422:4:46","type":""}],"src":"64273:385:46"},{"body":{"nodeType":"YulBlock","src":"64816:229:46","statements":[{"nodeType":"YulAssignment","src":"64826:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"64838:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"64849:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"64834:3:46"},"nodeType":"YulFunctionCall","src":"64834:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"64826:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"64873:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"64884:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"64869:3:46"},"nodeType":"YulFunctionCall","src":"64869:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"64892:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"64898:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"64888:3:46"},"nodeType":"YulFunctionCall","src":"64888:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"64862:6:46"},"nodeType":"YulFunctionCall","src":"64862:47:46"},"nodeType":"YulExpressionStatement","src":"64862:47:46"},{"nodeType":"YulAssignment","src":"64918:120:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"65024:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"65033:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"64926:97:46"},"nodeType":"YulFunctionCall","src":"64926:112:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"64918:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"64788:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"64800:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"64811:4:46","type":""}],"src":"64664:381:46"},{"body":{"nodeType":"YulBlock","src":"65227:253:46","statements":[{"nodeType":"YulAssignment","src":"65237:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65249:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65260:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65245:3:46"},"nodeType":"YulFunctionCall","src":"65245:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65237:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65284:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65295:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65280:3:46"},"nodeType":"YulFunctionCall","src":"65280:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"65303:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"65309:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"65299:3:46"},"nodeType":"YulFunctionCall","src":"65299:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"65273:6:46"},"nodeType":"YulFunctionCall","src":"65273:47:46"},"nodeType":"YulExpressionStatement","src":"65273:47:46"},{"nodeType":"YulAssignment","src":"65329:144:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"65459:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"65468:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"65337:121:46"},"nodeType":"YulFunctionCall","src":"65337:136:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65329:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"65199:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"65211:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"65222:4:46","type":""}],"src":"65051:429:46"},{"body":{"nodeType":"YulBlock","src":"65640:231:46","statements":[{"nodeType":"YulAssignment","src":"65650:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65662:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65673:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65658:3:46"},"nodeType":"YulFunctionCall","src":"65658:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65650:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65697:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"65708:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65693:3:46"},"nodeType":"YulFunctionCall","src":"65693:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"65716:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"65722:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"65712:3:46"},"nodeType":"YulFunctionCall","src":"65712:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"65686:6:46"},"nodeType":"YulFunctionCall","src":"65686:47:46"},"nodeType":"YulExpressionStatement","src":"65686:47:46"},{"nodeType":"YulAssignment","src":"65742:122:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"65850:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"65859:4:46"}],"functionName":{"name":"abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"65750:99:46"},"nodeType":"YulFunctionCall","src":"65750:114:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65742:4:46"}]}]},"name":"abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"65612:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"65624:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"65635:4:46","type":""}],"src":"65486:385:46"},{"body":{"nodeType":"YulBlock","src":"65977:126:46","statements":[{"nodeType":"YulAssignment","src":"65987:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"65999:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66010:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"65995:3:46"},"nodeType":"YulFunctionCall","src":"65995:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"65987:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66069:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66082:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66093:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66078:3:46"},"nodeType":"YulFunctionCall","src":"66078:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack_library","nodeType":"YulIdentifier","src":"66023:45:46"},"nodeType":"YulFunctionCall","src":"66023:73:46"},"nodeType":"YulExpressionStatement","src":"66023:73:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"65949:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"65961:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"65972:4:46","type":""}],"src":"65877:226:46"},{"body":{"nodeType":"YulBlock","src":"66215:132:46","statements":[{"nodeType":"YulAssignment","src":"66225:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66237:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66248:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66233:3:46"},"nodeType":"YulFunctionCall","src":"66233:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66225:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66313:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66326:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66337:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66322:3:46"},"nodeType":"YulFunctionCall","src":"66322:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack_library","nodeType":"YulIdentifier","src":"66261:51:46"},"nodeType":"YulFunctionCall","src":"66261:79:46"},"nodeType":"YulExpressionStatement","src":"66261:79:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"66187:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"66199:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"66210:4:46","type":""}],"src":"66109:238:46"},{"body":{"nodeType":"YulBlock","src":"66477:201:46","statements":[{"nodeType":"YulAssignment","src":"66487:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66499:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66510:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66495:3:46"},"nodeType":"YulFunctionCall","src":"66495:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66487:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66534:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66545:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66530:3:46"},"nodeType":"YulFunctionCall","src":"66530:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"66553:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"66559:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"66549:3:46"},"nodeType":"YulFunctionCall","src":"66549:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"66523:6:46"},"nodeType":"YulFunctionCall","src":"66523:47:46"},"nodeType":"YulExpressionStatement","src":"66523:47:46"},{"nodeType":"YulAssignment","src":"66579:92:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66657:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"66666:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"66587:69:46"},"nodeType":"YulFunctionCall","src":"66587:84:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66579:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"66449:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"66461:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"66472:4:46","type":""}],"src":"66353:325:46"},{"body":{"nodeType":"YulBlock","src":"66803:145:46","statements":[{"nodeType":"YulAssignment","src":"66813:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66825:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66836:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66821:3:46"},"nodeType":"YulFunctionCall","src":"66821:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"66813:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"66914:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"66927:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"66938:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"66923:3:46"},"nodeType":"YulFunctionCall","src":"66923:17:46"}],"functionName":{"name":"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library","nodeType":"YulIdentifier","src":"66849:64:46"},"nodeType":"YulFunctionCall","src":"66849:92:46"},"nodeType":"YulExpressionStatement","src":"66849:92:46"}]},"name":"abi_encode_tuple_t_enum$_ErrorCodes_$4618__to_t_uint8__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"66775:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"66787:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"66798:4:46","type":""}],"src":"66684:264:46"},{"body":{"nodeType":"YulBlock","src":"67121:306:46","statements":[{"nodeType":"YulAssignment","src":"67131:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67143:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67154:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67139:3:46"},"nodeType":"YulFunctionCall","src":"67139:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67131:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"67232:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67245:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67256:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67241:3:46"},"nodeType":"YulFunctionCall","src":"67241:17:46"}],"functionName":{"name":"abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library","nodeType":"YulIdentifier","src":"67167:64:46"},"nodeType":"YulFunctionCall","src":"67167:92:46"},"nodeType":"YulExpressionStatement","src":"67167:92:46"},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67280:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67291:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67276:3:46"},"nodeType":"YulFunctionCall","src":"67276:18:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"67300:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"67306:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"67296:3:46"},"nodeType":"YulFunctionCall","src":"67296:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"67269:6:46"},"nodeType":"YulFunctionCall","src":"67269:48:46"},"nodeType":"YulExpressionStatement","src":"67269:48:46"},{"nodeType":"YulAssignment","src":"67326:94:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"67406:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"67415:4:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"67334:71:46"},"nodeType":"YulFunctionCall","src":"67334:86:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67326:4:46"}]}]},"name":"abi_encode_tuple_t_enum$_ErrorCodes_$4618_t_string_memory_ptr__to_t_uint8_t_string_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67085:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"67097:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67105:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67116:4:46","type":""}],"src":"66954:473:46"},{"body":{"nodeType":"YulBlock","src":"67537:130:46","statements":[{"nodeType":"YulAssignment","src":"67547:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67559:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67570:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67555:3:46"},"nodeType":"YulFunctionCall","src":"67555:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67547:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"67633:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67646:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67657:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67642:3:46"},"nodeType":"YulFunctionCall","src":"67642:17:46"}],"functionName":{"name":"abi_encode_t_int128_to_t_int128_fromStack_library","nodeType":"YulIdentifier","src":"67583:49:46"},"nodeType":"YulFunctionCall","src":"67583:77:46"},"nodeType":"YulExpressionStatement","src":"67583:77:46"}]},"name":"abi_encode_tuple_t_int128__to_t_int128__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67509:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67521:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67532:4:46","type":""}],"src":"67433:234:46"},{"body":{"nodeType":"YulBlock","src":"67775:128:46","statements":[{"nodeType":"YulAssignment","src":"67785:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67797:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67808:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67793:3:46"},"nodeType":"YulFunctionCall","src":"67793:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"67785:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"67869:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"67882:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"67893:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"67878:3:46"},"nodeType":"YulFunctionCall","src":"67878:17:46"}],"functionName":{"name":"abi_encode_t_int32_to_t_int32_fromStack_library","nodeType":"YulIdentifier","src":"67821:47:46"},"nodeType":"YulFunctionCall","src":"67821:75:46"},"nodeType":"YulExpressionStatement","src":"67821:75:46"}]},"name":"abi_encode_tuple_t_int32__to_t_int32__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"67747:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"67759:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"67770:4:46","type":""}],"src":"67673:230:46"},{"body":{"nodeType":"YulBlock","src":"68035:203:46","statements":[{"nodeType":"YulAssignment","src":"68045:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68057:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68068:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68053:3:46"},"nodeType":"YulFunctionCall","src":"68053:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68045:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68092:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68103:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68088:3:46"},"nodeType":"YulFunctionCall","src":"68088:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68111:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"68117:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"68107:3:46"},"nodeType":"YulFunctionCall","src":"68107:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"68081:6:46"},"nodeType":"YulFunctionCall","src":"68081:47:46"},"nodeType":"YulExpressionStatement","src":"68081:47:46"},{"nodeType":"YulAssignment","src":"68137:94:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"68217:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"68226:4:46"}],"functionName":{"name":"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"68145:71:46"},"nodeType":"YulFunctionCall","src":"68145:86:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68137:4:46"}]}]},"name":"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"68007:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"68019:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"68030:4:46","type":""}],"src":"67909:329:46"},{"body":{"nodeType":"YulBlock","src":"68415:248:46","statements":[{"nodeType":"YulAssignment","src":"68425:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68437:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68448:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68433:3:46"},"nodeType":"YulFunctionCall","src":"68433:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68425:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68472:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68483:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68468:3:46"},"nodeType":"YulFunctionCall","src":"68468:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68491:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"68497:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"68487:3:46"},"nodeType":"YulFunctionCall","src":"68487:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"68461:6:46"},"nodeType":"YulFunctionCall","src":"68461:47:46"},"nodeType":"YulExpressionStatement","src":"68461:47:46"},{"nodeType":"YulAssignment","src":"68517:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68651:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"68525:124:46"},"nodeType":"YulFunctionCall","src":"68525:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68517:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"68395:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"68410:4:46","type":""}],"src":"68244:419:46"},{"body":{"nodeType":"YulBlock","src":"68840:248:46","statements":[{"nodeType":"YulAssignment","src":"68850:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68862:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68873:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68858:3:46"},"nodeType":"YulFunctionCall","src":"68858:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68850:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"68897:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"68908:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"68893:3:46"},"nodeType":"YulFunctionCall","src":"68893:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"68916:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"68922:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"68912:3:46"},"nodeType":"YulFunctionCall","src":"68912:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"68886:6:46"},"nodeType":"YulFunctionCall","src":"68886:47:46"},"nodeType":"YulExpressionStatement","src":"68886:47:46"},{"nodeType":"YulAssignment","src":"68942:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"69076:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"68950:124:46"},"nodeType":"YulFunctionCall","src":"68950:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"68942:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"68820:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"68835:4:46","type":""}],"src":"68669:419:46"},{"body":{"nodeType":"YulBlock","src":"69265:248:46","statements":[{"nodeType":"YulAssignment","src":"69275:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69287:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69298:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69283:3:46"},"nodeType":"YulFunctionCall","src":"69283:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69275:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69322:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69333:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69318:3:46"},"nodeType":"YulFunctionCall","src":"69318:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"69341:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"69347:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"69337:3:46"},"nodeType":"YulFunctionCall","src":"69337:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"69311:6:46"},"nodeType":"YulFunctionCall","src":"69311:47:46"},"nodeType":"YulExpressionStatement","src":"69311:47:46"},{"nodeType":"YulAssignment","src":"69367:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"69501:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"69375:124:46"},"nodeType":"YulFunctionCall","src":"69375:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69367:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"69245:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"69260:4:46","type":""}],"src":"69094:419:46"},{"body":{"nodeType":"YulBlock","src":"69690:248:46","statements":[{"nodeType":"YulAssignment","src":"69700:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69712:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69723:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69708:3:46"},"nodeType":"YulFunctionCall","src":"69708:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69700:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"69747:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"69758:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"69743:3:46"},"nodeType":"YulFunctionCall","src":"69743:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"69766:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"69772:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"69762:3:46"},"nodeType":"YulFunctionCall","src":"69762:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"69736:6:46"},"nodeType":"YulFunctionCall","src":"69736:47:46"},"nodeType":"YulExpressionStatement","src":"69736:47:46"},{"nodeType":"YulAssignment","src":"69792:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"69926:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"69800:124:46"},"nodeType":"YulFunctionCall","src":"69800:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"69792:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"69670:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"69685:4:46","type":""}],"src":"69519:419:46"},{"body":{"nodeType":"YulBlock","src":"70115:248:46","statements":[{"nodeType":"YulAssignment","src":"70125:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70137:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70148:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70133:3:46"},"nodeType":"YulFunctionCall","src":"70133:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70125:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70172:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70183:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70168:3:46"},"nodeType":"YulFunctionCall","src":"70168:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"70191:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"70197:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"70187:3:46"},"nodeType":"YulFunctionCall","src":"70187:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"70161:6:46"},"nodeType":"YulFunctionCall","src":"70161:47:46"},"nodeType":"YulExpressionStatement","src":"70161:47:46"},{"nodeType":"YulAssignment","src":"70217:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"70351:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"70225:124:46"},"nodeType":"YulFunctionCall","src":"70225:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70217:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70095:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70110:4:46","type":""}],"src":"69944:419:46"},{"body":{"nodeType":"YulBlock","src":"70540:248:46","statements":[{"nodeType":"YulAssignment","src":"70550:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70562:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70573:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70558:3:46"},"nodeType":"YulFunctionCall","src":"70558:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70550:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70597:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70608:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70593:3:46"},"nodeType":"YulFunctionCall","src":"70593:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"70616:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"70622:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"70612:3:46"},"nodeType":"YulFunctionCall","src":"70612:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"70586:6:46"},"nodeType":"YulFunctionCall","src":"70586:47:46"},"nodeType":"YulExpressionStatement","src":"70586:47:46"},{"nodeType":"YulAssignment","src":"70642:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"70776:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"70650:124:46"},"nodeType":"YulFunctionCall","src":"70650:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70642:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70520:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70535:4:46","type":""}],"src":"70369:419:46"},{"body":{"nodeType":"YulBlock","src":"70965:248:46","statements":[{"nodeType":"YulAssignment","src":"70975:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"70987:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"70998:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"70983:3:46"},"nodeType":"YulFunctionCall","src":"70983:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"70975:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71022:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71033:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71018:3:46"},"nodeType":"YulFunctionCall","src":"71018:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71041:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"71047:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"71037:3:46"},"nodeType":"YulFunctionCall","src":"71037:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"71011:6:46"},"nodeType":"YulFunctionCall","src":"71011:47:46"},"nodeType":"YulExpressionStatement","src":"71011:47:46"},{"nodeType":"YulAssignment","src":"71067:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71201:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"71075:124:46"},"nodeType":"YulFunctionCall","src":"71075:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71067:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"70945:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"70960:4:46","type":""}],"src":"70794:419:46"},{"body":{"nodeType":"YulBlock","src":"71390:248:46","statements":[{"nodeType":"YulAssignment","src":"71400:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71412:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71423:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71408:3:46"},"nodeType":"YulFunctionCall","src":"71408:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71400:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71447:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71458:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71443:3:46"},"nodeType":"YulFunctionCall","src":"71443:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71466:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"71472:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"71462:3:46"},"nodeType":"YulFunctionCall","src":"71462:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"71436:6:46"},"nodeType":"YulFunctionCall","src":"71436:47:46"},"nodeType":"YulExpressionStatement","src":"71436:47:46"},{"nodeType":"YulAssignment","src":"71492:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71626:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"71500:124:46"},"nodeType":"YulFunctionCall","src":"71500:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71492:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"71370:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"71385:4:46","type":""}],"src":"71219:419:46"},{"body":{"nodeType":"YulBlock","src":"71815:248:46","statements":[{"nodeType":"YulAssignment","src":"71825:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71837:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71848:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71833:3:46"},"nodeType":"YulFunctionCall","src":"71833:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71825:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"71872:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"71883:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"71868:3:46"},"nodeType":"YulFunctionCall","src":"71868:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"71891:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"71897:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"71887:3:46"},"nodeType":"YulFunctionCall","src":"71887:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"71861:6:46"},"nodeType":"YulFunctionCall","src":"71861:47:46"},"nodeType":"YulExpressionStatement","src":"71861:47:46"},{"nodeType":"YulAssignment","src":"71917:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72051:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"71925:124:46"},"nodeType":"YulFunctionCall","src":"71925:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"71917:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"71795:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"71810:4:46","type":""}],"src":"71644:419:46"},{"body":{"nodeType":"YulBlock","src":"72240:248:46","statements":[{"nodeType":"YulAssignment","src":"72250:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72262:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72273:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72258:3:46"},"nodeType":"YulFunctionCall","src":"72258:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72250:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72297:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72308:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72293:3:46"},"nodeType":"YulFunctionCall","src":"72293:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72316:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"72322:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"72312:3:46"},"nodeType":"YulFunctionCall","src":"72312:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"72286:6:46"},"nodeType":"YulFunctionCall","src":"72286:47:46"},"nodeType":"YulExpressionStatement","src":"72286:47:46"},{"nodeType":"YulAssignment","src":"72342:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72476:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"72350:124:46"},"nodeType":"YulFunctionCall","src":"72350:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72342:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"72220:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"72235:4:46","type":""}],"src":"72069:419:46"},{"body":{"nodeType":"YulBlock","src":"72665:248:46","statements":[{"nodeType":"YulAssignment","src":"72675:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72687:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72698:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72683:3:46"},"nodeType":"YulFunctionCall","src":"72683:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72675:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"72722:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"72733:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"72718:3:46"},"nodeType":"YulFunctionCall","src":"72718:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72741:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"72747:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"72737:3:46"},"nodeType":"YulFunctionCall","src":"72737:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"72711:6:46"},"nodeType":"YulFunctionCall","src":"72711:47:46"},"nodeType":"YulExpressionStatement","src":"72711:47:46"},{"nodeType":"YulAssignment","src":"72767:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"72901:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"72775:124:46"},"nodeType":"YulFunctionCall","src":"72775:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"72767:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"72645:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"72660:4:46","type":""}],"src":"72494:419:46"},{"body":{"nodeType":"YulBlock","src":"73090:248:46","statements":[{"nodeType":"YulAssignment","src":"73100:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73112:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73123:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73108:3:46"},"nodeType":"YulFunctionCall","src":"73108:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73100:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73147:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73158:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73143:3:46"},"nodeType":"YulFunctionCall","src":"73143:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73166:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"73172:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"73162:3:46"},"nodeType":"YulFunctionCall","src":"73162:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"73136:6:46"},"nodeType":"YulFunctionCall","src":"73136:47:46"},"nodeType":"YulExpressionStatement","src":"73136:47:46"},{"nodeType":"YulAssignment","src":"73192:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73326:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"73200:124:46"},"nodeType":"YulFunctionCall","src":"73200:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73192:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"73070:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"73085:4:46","type":""}],"src":"72919:419:46"},{"body":{"nodeType":"YulBlock","src":"73494:227:46","statements":[{"nodeType":"YulAssignment","src":"73504:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73516:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73527:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73512:3:46"},"nodeType":"YulFunctionCall","src":"73512:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73504:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73551:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73562:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73547:3:46"},"nodeType":"YulFunctionCall","src":"73547:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73570:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"73576:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"73566:3:46"},"nodeType":"YulFunctionCall","src":"73566:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"73540:6:46"},"nodeType":"YulFunctionCall","src":"73540:47:46"},"nodeType":"YulExpressionStatement","src":"73540:47:46"},{"nodeType":"YulAssignment","src":"73596:118:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"73700:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"73709:4:46"}],"functionName":{"name":"abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"73604:95:46"},"nodeType":"YulFunctionCall","src":"73604:110:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73596:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"73466:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"73478:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"73489:4:46","type":""}],"src":"73344:377:46"},{"body":{"nodeType":"YulBlock","src":"73881:231:46","statements":[{"nodeType":"YulAssignment","src":"73891:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73903:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73914:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73899:3:46"},"nodeType":"YulFunctionCall","src":"73899:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73891:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"73938:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"73949:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"73934:3:46"},"nodeType":"YulFunctionCall","src":"73934:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"73957:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"73963:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"73953:3:46"},"nodeType":"YulFunctionCall","src":"73953:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"73927:6:46"},"nodeType":"YulFunctionCall","src":"73927:47:46"},"nodeType":"YulExpressionStatement","src":"73927:47:46"},{"nodeType":"YulAssignment","src":"73983:122:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"74091:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"74100:4:46"}],"functionName":{"name":"abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library","nodeType":"YulIdentifier","src":"73991:99:46"},"nodeType":"YulFunctionCall","src":"73991:114:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"73983:4:46"}]}]},"name":"abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"73853:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"73865:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"73876:4:46","type":""}],"src":"73727:385:46"},{"body":{"nodeType":"YulBlock","src":"74222:130:46","statements":[{"nodeType":"YulAssignment","src":"74232:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"74244:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"74255:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74240:3:46"},"nodeType":"YulFunctionCall","src":"74240:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"74232:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"74318:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"74331:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"74342:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74327:3:46"},"nodeType":"YulFunctionCall","src":"74327:17:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack_library","nodeType":"YulIdentifier","src":"74268:49:46"},"nodeType":"YulFunctionCall","src":"74268:77:46"},"nodeType":"YulExpressionStatement","src":"74268:77:46"}]},"name":"abi_encode_tuple_t_uint64__to_t_uint64__fromStack_library_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"74194:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"74206:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"74217:4:46","type":""}],"src":"74118:234:46"},{"body":{"nodeType":"YulBlock","src":"74399:88:46","statements":[{"nodeType":"YulAssignment","src":"74409:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"74419:18:46"},"nodeType":"YulFunctionCall","src":"74419:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"74409:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"74468:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"74476:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"74448:19:46"},"nodeType":"YulFunctionCall","src":"74448:33:46"},"nodeType":"YulExpressionStatement","src":"74448:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"74383:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"74392:6:46","type":""}],"src":"74358:129:46"},{"body":{"nodeType":"YulBlock","src":"74533:35:46","statements":[{"nodeType":"YulAssignment","src":"74543:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"74559:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"74553:5:46"},"nodeType":"YulFunctionCall","src":"74553:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"74543:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"74526:6:46","type":""}],"src":"74493:75:46"},{"body":{"nodeType":"YulBlock","src":"74655:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"74760:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"74762:16:46"},"nodeType":"YulFunctionCall","src":"74762:18:46"},"nodeType":"YulExpressionStatement","src":"74762:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"74732:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"74740:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"74729:2:46"},"nodeType":"YulFunctionCall","src":"74729:30:46"},"nodeType":"YulIf","src":"74726:56:46"},{"nodeType":"YulAssignment","src":"74792:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"74804:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"74812:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"74800:3:46"},"nodeType":"YulFunctionCall","src":"74800:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"74792:4:46"}]},{"nodeType":"YulAssignment","src":"74854:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"74866:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"74872:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"74862:3:46"},"nodeType":"YulFunctionCall","src":"74862:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"74854:4:46"}]}]},"name":"array_allocation_size_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"74639:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"74650:4:46","type":""}],"src":"74574:310:46"},{"body":{"nodeType":"YulBlock","src":"74970:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"75075:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"75077:16:46"},"nodeType":"YulFunctionCall","src":"75077:18:46"},"nodeType":"YulExpressionStatement","src":"75077:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75047:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75055:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"75044:2:46"},"nodeType":"YulFunctionCall","src":"75044:30:46"},"nodeType":"YulIf","src":"75041:56:46"},{"nodeType":"YulAssignment","src":"75107:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75119:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75127:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"75115:3:46"},"nodeType":"YulFunctionCall","src":"75115:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"75107:4:46"}]},{"nodeType":"YulAssignment","src":"75169:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"75181:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"75187:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75177:3:46"},"nodeType":"YulFunctionCall","src":"75177:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"75169:4:46"}]}]},"name":"array_allocation_size_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"74954:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"74965:4:46","type":""}],"src":"74890:309:46"},{"body":{"nodeType":"YulBlock","src":"75297:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"75402:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"75404:16:46"},"nodeType":"YulFunctionCall","src":"75404:18:46"},"nodeType":"YulExpressionStatement","src":"75404:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75374:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75382:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"75371:2:46"},"nodeType":"YulFunctionCall","src":"75371:30:46"},"nodeType":"YulIf","src":"75368:56:46"},{"nodeType":"YulAssignment","src":"75434:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75446:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75454:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"75442:3:46"},"nodeType":"YulFunctionCall","src":"75442:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"75434:4:46"}]},{"nodeType":"YulAssignment","src":"75496:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"75508:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"75514:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75504:3:46"},"nodeType":"YulFunctionCall","src":"75504:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"75496:4:46"}]}]},"name":"array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"75281:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"75292:4:46","type":""}],"src":"75205:321:46"},{"body":{"nodeType":"YulBlock","src":"75613:229:46","statements":[{"body":{"nodeType":"YulBlock","src":"75718:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"75720:16:46"},"nodeType":"YulFunctionCall","src":"75720:18:46"},"nodeType":"YulExpressionStatement","src":"75720:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75690:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75698:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"75687:2:46"},"nodeType":"YulFunctionCall","src":"75687:30:46"},"nodeType":"YulIf","src":"75684:56:46"},{"nodeType":"YulAssignment","src":"75750:25:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75762:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75770:4:46","type":"","value":"0x20"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"75758:3:46"},"nodeType":"YulFunctionCall","src":"75758:17:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"75750:4:46"}]},{"nodeType":"YulAssignment","src":"75812:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"75824:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"75830:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"75820:3:46"},"nodeType":"YulFunctionCall","src":"75820:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"75812:4:46"}]}]},"name":"array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"75597:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"75608:4:46","type":""}],"src":"75532:310:46"},{"body":{"nodeType":"YulBlock","src":"75914:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"76019:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"76021:16:46"},"nodeType":"YulFunctionCall","src":"76021:18:46"},"nodeType":"YulExpressionStatement","src":"76021:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"75991:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"75999:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"75988:2:46"},"nodeType":"YulFunctionCall","src":"75988:30:46"},"nodeType":"YulIf","src":"75985:56:46"},{"nodeType":"YulAssignment","src":"76051:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"76081:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"76059:21:46"},"nodeType":"YulFunctionCall","src":"76059:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"76051:4:46"}]},{"nodeType":"YulAssignment","src":"76125:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"76137:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"76143:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76133:3:46"},"nodeType":"YulFunctionCall","src":"76133:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"76125:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"75898:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"75909:4:46","type":""}],"src":"75848:307:46"},{"body":{"nodeType":"YulBlock","src":"76228:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"76333:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"76335:16:46"},"nodeType":"YulFunctionCall","src":"76335:18:46"},"nodeType":"YulExpressionStatement","src":"76335:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"76305:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"76313:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"76302:2:46"},"nodeType":"YulFunctionCall","src":"76302:30:46"},"nodeType":"YulIf","src":"76299:56:46"},{"nodeType":"YulAssignment","src":"76365:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"76395:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"76373:21:46"},"nodeType":"YulFunctionCall","src":"76373:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"76365:4:46"}]},{"nodeType":"YulAssignment","src":"76439:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"76451:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"76457:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76447:3:46"},"nodeType":"YulFunctionCall","src":"76447:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"76439:4:46"}]}]},"name":"array_allocation_size_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"76212:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"76223:4:46","type":""}],"src":"76161:308:46"},{"body":{"nodeType":"YulBlock","src":"76546:60:46","statements":[{"nodeType":"YulAssignment","src":"76556:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"76564:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76556:4:46"}]},{"nodeType":"YulAssignment","src":"76577:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"76589:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"76594:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76585:3:46"},"nodeType":"YulFunctionCall","src":"76585:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76577:4:46"}]}]},"name":"array_dataslot_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"76533:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"76541:4:46","type":""}],"src":"76475:131:46"},{"body":{"nodeType":"YulBlock","src":"76682:60:46","statements":[{"nodeType":"YulAssignment","src":"76692:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"76700:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76692:4:46"}]},{"nodeType":"YulAssignment","src":"76713:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"76725:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"76730:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76721:3:46"},"nodeType":"YulFunctionCall","src":"76721:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76713:4:46"}]}]},"name":"array_dataslot_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"76669:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"76677:4:46","type":""}],"src":"76612:130:46"},{"body":{"nodeType":"YulBlock","src":"76830:60:46","statements":[{"nodeType":"YulAssignment","src":"76840:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"76848:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76840:4:46"}]},{"nodeType":"YulAssignment","src":"76861:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"76873:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"76878:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"76869:3:46"},"nodeType":"YulFunctionCall","src":"76869:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76861:4:46"}]}]},"name":"array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"76817:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"76825:4:46","type":""}],"src":"76748:142:46"},{"body":{"nodeType":"YulBlock","src":"76967:60:46","statements":[{"nodeType":"YulAssignment","src":"76977:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"76985:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76977:4:46"}]},{"nodeType":"YulAssignment","src":"76998:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"77010:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"77015:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77006:3:46"},"nodeType":"YulFunctionCall","src":"77006:14:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"76998:4:46"}]}]},"name":"array_dataslot_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"76954:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"76962:4:46","type":""}],"src":"76896:131:46"},{"body":{"nodeType":"YulBlock","src":"77106:40:46","statements":[{"nodeType":"YulAssignment","src":"77117:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"77133:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"77127:5:46"},"nodeType":"YulFunctionCall","src":"77127:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"77117:6:46"}]}]},"name":"array_length_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"77089:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"77099:6:46","type":""}],"src":"77033:113:46"},{"body":{"nodeType":"YulBlock","src":"77224:40:46","statements":[{"nodeType":"YulAssignment","src":"77235:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"77251:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"77245:5:46"},"nodeType":"YulFunctionCall","src":"77245:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"77235:6:46"}]}]},"name":"array_length_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"77207:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"77217:6:46","type":""}],"src":"77152:112:46"},{"body":{"nodeType":"YulBlock","src":"77354:40:46","statements":[{"nodeType":"YulAssignment","src":"77365:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"77381:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"77375:5:46"},"nodeType":"YulFunctionCall","src":"77375:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"77365:6:46"}]}]},"name":"array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"77337:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"77347:6:46","type":""}],"src":"77270:124:46"},{"body":{"nodeType":"YulBlock","src":"77473:40:46","statements":[{"nodeType":"YulAssignment","src":"77484:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"77500:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"77494:5:46"},"nodeType":"YulFunctionCall","src":"77494:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"77484:6:46"}]}]},"name":"array_length_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"77456:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"77466:6:46","type":""}],"src":"77400:113:46"},{"body":{"nodeType":"YulBlock","src":"77577:40:46","statements":[{"nodeType":"YulAssignment","src":"77588:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"77604:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"77598:5:46"},"nodeType":"YulFunctionCall","src":"77598:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"77588:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"77560:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"77570:6:46","type":""}],"src":"77519:98:46"},{"body":{"nodeType":"YulBlock","src":"77682:40:46","statements":[{"nodeType":"YulAssignment","src":"77693:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"77709:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"77703:5:46"},"nodeType":"YulFunctionCall","src":"77703:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"77693:6:46"}]}]},"name":"array_length_t_string_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"77665:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"77675:6:46","type":""}],"src":"77623:99:46"},{"body":{"nodeType":"YulBlock","src":"77802:38:46","statements":[{"nodeType":"YulAssignment","src":"77812:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"77824:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"77829:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77820:3:46"},"nodeType":"YulFunctionCall","src":"77820:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"77812:4:46"}]}]},"name":"array_nextElement_t_array$_t_int128_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"77789:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"77797:4:46","type":""}],"src":"77728:112:46"},{"body":{"nodeType":"YulBlock","src":"77919:38:46","statements":[{"nodeType":"YulAssignment","src":"77929:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"77941:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"77946:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"77937:3:46"},"nodeType":"YulFunctionCall","src":"77937:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"77929:4:46"}]}]},"name":"array_nextElement_t_array$_t_int32_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"77906:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"77914:4:46","type":""}],"src":"77846:111:46"},{"body":{"nodeType":"YulBlock","src":"78048:38:46","statements":[{"nodeType":"YulAssignment","src":"78058:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"78070:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"78075:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78066:3:46"},"nodeType":"YulFunctionCall","src":"78066:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"78058:4:46"}]}]},"name":"array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"78035:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"78043:4:46","type":""}],"src":"77963:123:46"},{"body":{"nodeType":"YulBlock","src":"78166:38:46","statements":[{"nodeType":"YulAssignment","src":"78176:22:46","value":{"arguments":[{"name":"ptr","nodeType":"YulIdentifier","src":"78188:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"78193:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78184:3:46"},"nodeType":"YulFunctionCall","src":"78184:14:46"},"variableNames":[{"name":"next","nodeType":"YulIdentifier","src":"78176:4:46"}]}]},"name":"array_nextElement_t_array$_t_uint64_$dyn_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"78153:3:46","type":""}],"returnVariables":[{"name":"next","nodeType":"YulTypedName","src":"78161:4:46","type":""}],"src":"78092:112:46"},{"body":{"nodeType":"YulBlock","src":"78328:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78345:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"78350:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"78338:6:46"},"nodeType":"YulFunctionCall","src":"78338:19:46"},"nodeType":"YulExpressionStatement","src":"78338:19:46"},{"nodeType":"YulAssignment","src":"78366:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78385:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"78390:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78381:3:46"},"nodeType":"YulFunctionCall","src":"78381:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"78366:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"78300:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"78305:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"78316:11:46","type":""}],"src":"78210:191:46"},{"body":{"nodeType":"YulBlock","src":"78524:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78541:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"78546:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"78534:6:46"},"nodeType":"YulFunctionCall","src":"78534:19:46"},"nodeType":"YulExpressionStatement","src":"78534:19:46"},{"nodeType":"YulAssignment","src":"78562:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78581:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"78586:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78577:3:46"},"nodeType":"YulFunctionCall","src":"78577:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"78562:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"78496:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"78501:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"78512:11:46","type":""}],"src":"78407:190:46"},{"body":{"nodeType":"YulBlock","src":"78732:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78749:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"78754:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"78742:6:46"},"nodeType":"YulFunctionCall","src":"78742:19:46"},"nodeType":"YulExpressionStatement","src":"78742:19:46"},{"nodeType":"YulAssignment","src":"78770:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78789:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"78794:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78785:3:46"},"nodeType":"YulFunctionCall","src":"78785:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"78770:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"78704:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"78709:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"78720:11:46","type":""}],"src":"78603:202:46"},{"body":{"nodeType":"YulBlock","src":"78929:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78946:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"78951:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"78939:6:46"},"nodeType":"YulFunctionCall","src":"78939:19:46"},"nodeType":"YulExpressionStatement","src":"78939:19:46"},{"nodeType":"YulAssignment","src":"78967:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"78986:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"78991:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"78982:3:46"},"nodeType":"YulFunctionCall","src":"78982:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"78967:11:46"}]}]},"name":"array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"78901:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"78906:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"78917:11:46","type":""}],"src":"78811:191:46"},{"body":{"nodeType":"YulBlock","src":"79111:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79128:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"79133:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79121:6:46"},"nodeType":"YulFunctionCall","src":"79121:19:46"},"nodeType":"YulExpressionStatement","src":"79121:19:46"},{"nodeType":"YulAssignment","src":"79149:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79168:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"79173:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79164:3:46"},"nodeType":"YulFunctionCall","src":"79164:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"79149:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"79083:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"79088:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"79099:11:46","type":""}],"src":"79008:176:46"},{"body":{"nodeType":"YulBlock","src":"79283:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79300:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"79305:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79293:6:46"},"nodeType":"YulFunctionCall","src":"79293:19:46"},"nodeType":"YulExpressionStatement","src":"79293:19:46"},{"nodeType":"YulAssignment","src":"79321:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79340:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"79345:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79336:3:46"},"nodeType":"YulFunctionCall","src":"79336:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"79321:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"79255:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"79260:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"79271:11:46","type":""}],"src":"79190:166:46"},{"body":{"nodeType":"YulBlock","src":"79458:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79475:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"79480:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79468:6:46"},"nodeType":"YulFunctionCall","src":"79468:19:46"},"nodeType":"YulExpressionStatement","src":"79468:19:46"},{"nodeType":"YulAssignment","src":"79496:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79515:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"79520:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79511:3:46"},"nodeType":"YulFunctionCall","src":"79511:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"79496:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"79430:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"79435:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"79446:11:46","type":""}],"src":"79362:169:46"},{"body":{"nodeType":"YulBlock","src":"79641:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79658:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"79663:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79651:6:46"},"nodeType":"YulFunctionCall","src":"79651:19:46"},"nodeType":"YulExpressionStatement","src":"79651:19:46"},{"nodeType":"YulAssignment","src":"79679:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79698:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"79703:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79694:3:46"},"nodeType":"YulFunctionCall","src":"79694:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"79679:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"79613:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"79618:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"79629:11:46","type":""}],"src":"79537:177:46"},{"body":{"nodeType":"YulBlock","src":"79814:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79831:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"79836:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"79824:6:46"},"nodeType":"YulFunctionCall","src":"79824:19:46"},"nodeType":"YulExpressionStatement","src":"79824:19:46"},{"nodeType":"YulAssignment","src":"79852:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"79871:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"79876:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"79867:3:46"},"nodeType":"YulFunctionCall","src":"79867:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"79852:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_library","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"79786:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"79791:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"79802:11:46","type":""}],"src":"79720:167:46"},{"body":{"nodeType":"YulBlock","src":"80007:34:46","statements":[{"nodeType":"YulAssignment","src":"80017:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"80032:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"80017:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"79979:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"79984:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"79995:11:46","type":""}],"src":"79893:148:46"},{"body":{"nodeType":"YulBlock","src":"80089:195:46","statements":[{"nodeType":"YulAssignment","src":"80099:23:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"80120:1:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"80104:15:46"},"nodeType":"YulFunctionCall","src":"80104:18:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"80099:1:46"}]},{"nodeType":"YulAssignment","src":"80131:23:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"80152:1:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"80136:15:46"},"nodeType":"YulFunctionCall","src":"80136:18:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"80131:1:46"}]},{"body":{"nodeType":"YulBlock","src":"80230:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"80232:16:46"},"nodeType":"YulFunctionCall","src":"80232:18:46"},"nodeType":"YulExpressionStatement","src":"80232:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"80213:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"80220:4:46","type":"","value":"0xff"},{"name":"y","nodeType":"YulIdentifier","src":"80226:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"80216:3:46"},"nodeType":"YulFunctionCall","src":"80216:12:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"80210:2:46"},"nodeType":"YulFunctionCall","src":"80210:19:46"},"nodeType":"YulIf","src":"80207:45:46"},{"nodeType":"YulAssignment","src":"80262:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"80273:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"80276:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"80269:3:46"},"nodeType":"YulFunctionCall","src":"80269:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"80262:3:46"}]}]},"name":"checked_add_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"80076:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"80079:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"80085:3:46","type":""}],"src":"80047:237:46"},{"body":{"nodeType":"YulBlock","src":"80331:141:46","statements":[{"nodeType":"YulAssignment","src":"80341:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"80363:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"80346:16:46"},"nodeType":"YulFunctionCall","src":"80346:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"80341:1:46"}]},{"nodeType":"YulAssignment","src":"80374:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"80396:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"80379:16:46"},"nodeType":"YulFunctionCall","src":"80379:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"80374:1:46"}]},{"body":{"nodeType":"YulBlock","src":"80420:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x12","nodeType":"YulIdentifier","src":"80422:16:46"},"nodeType":"YulFunctionCall","src":"80422:18:46"},"nodeType":"YulExpressionStatement","src":"80422:18:46"}]},"condition":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"80417:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"80410:6:46"},"nodeType":"YulFunctionCall","src":"80410:9:46"},"nodeType":"YulIf","src":"80407:35:46"},{"nodeType":"YulAssignment","src":"80452:14:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"80461:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"80464:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"80457:3:46"},"nodeType":"YulFunctionCall","src":"80457:9:46"},"variableNames":[{"name":"r","nodeType":"YulIdentifier","src":"80452:1:46"}]}]},"name":"checked_div_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"80320:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"80323:1:46","type":""}],"returnVariables":[{"name":"r","nodeType":"YulTypedName","src":"80329:1:46","type":""}],"src":"80290:182:46"},{"body":{"nodeType":"YulBlock","src":"80520:48:46","statements":[{"nodeType":"YulAssignment","src":"80530:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"80555:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"80548:6:46"},"nodeType":"YulFunctionCall","src":"80548:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"80541:6:46"},"nodeType":"YulFunctionCall","src":"80541:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"80530:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"80502:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"80512:7:46","type":""}],"src":"80478:90:46"},{"body":{"nodeType":"YulBlock","src":"80619:32:46","statements":[{"nodeType":"YulAssignment","src":"80629:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"80640:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"80629:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"80601:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"80611:7:46","type":""}],"src":"80574:77:46"},{"body":{"nodeType":"YulBlock","src":"80717:81:46","statements":[{"nodeType":"YulAssignment","src":"80727:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"80738:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"80727:7:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"80786:5:46"}],"functionName":{"name":"validator_assert_t_enum$_ErrorCodes_$4618","nodeType":"YulIdentifier","src":"80744:41:46"},"nodeType":"YulFunctionCall","src":"80744:48:46"},"nodeType":"YulExpressionStatement","src":"80744:48:46"}]},"name":"cleanup_t_enum$_ErrorCodes_$4618","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"80699:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"80709:7:46","type":""}],"src":"80657:141:46"},{"body":{"nodeType":"YulBlock","src":"80848:48:46","statements":[{"nodeType":"YulAssignment","src":"80858:32:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"80880:2:46","type":"","value":"15"},{"name":"value","nodeType":"YulIdentifier","src":"80884:5:46"}],"functionName":{"name":"signextend","nodeType":"YulIdentifier","src":"80869:10:46"},"nodeType":"YulFunctionCall","src":"80869:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"80858:7:46"}]}]},"name":"cleanup_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"80830:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"80840:7:46","type":""}],"src":"80804:92:46"},{"body":{"nodeType":"YulBlock","src":"80945:47:46","statements":[{"nodeType":"YulAssignment","src":"80955:31:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"80977:1:46","type":"","value":"3"},{"name":"value","nodeType":"YulIdentifier","src":"80980:5:46"}],"functionName":{"name":"signextend","nodeType":"YulIdentifier","src":"80966:10:46"},"nodeType":"YulFunctionCall","src":"80966:20:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"80955:7:46"}]}]},"name":"cleanup_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"80927:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"80937:7:46","type":""}],"src":"80902:90:46"},{"body":{"nodeType":"YulBlock","src":"81042:49:46","statements":[{"nodeType":"YulAssignment","src":"81052:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"81067:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"81074:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"81063:3:46"},"nodeType":"YulFunctionCall","src":"81063:22:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"81052:7:46"}]}]},"name":"cleanup_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"81024:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"81034:7:46","type":""}],"src":"80998:93:46"},{"body":{"nodeType":"YulBlock","src":"81141:57:46","statements":[{"nodeType":"YulAssignment","src":"81151:41:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"81166:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"81173:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"81162:3:46"},"nodeType":"YulFunctionCall","src":"81162:30:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"81151:7:46"}]}]},"name":"cleanup_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"81123:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"81133:7:46","type":""}],"src":"81097:101:46"},{"body":{"nodeType":"YulBlock","src":"81247:43:46","statements":[{"nodeType":"YulAssignment","src":"81257:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"81272:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"81279:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"81268:3:46"},"nodeType":"YulFunctionCall","src":"81268:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"81257:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"81229:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"81239:7:46","type":""}],"src":"81204:86:46"},{"body":{"nodeType":"YulBlock","src":"81369:68:46","statements":[{"nodeType":"YulAssignment","src":"81379:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"81425:5:46"}],"functionName":{"name":"cleanup_t_enum$_ErrorCodes_$4618","nodeType":"YulIdentifier","src":"81392:32:46"},"nodeType":"YulFunctionCall","src":"81392:39:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"81379:9:46"}]}]},"name":"convert_t_enum$_ErrorCodes_$4618_to_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"81349:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"81359:9:46","type":""}],"src":"81296:141:46"},{"body":{"nodeType":"YulBlock","src":"81494:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"81517:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"81522:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"81527:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"81504:12:46"},"nodeType":"YulFunctionCall","src":"81504:30:46"},"nodeType":"YulExpressionStatement","src":"81504:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"81575:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"81580:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81571:3:46"},"nodeType":"YulFunctionCall","src":"81571:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"81589:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"81564:6:46"},"nodeType":"YulFunctionCall","src":"81564:27:46"},"nodeType":"YulExpressionStatement","src":"81564:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"81476:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"81481:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"81486:6:46","type":""}],"src":"81443:154:46"},{"body":{"nodeType":"YulBlock","src":"81652:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"81662:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"81671:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"81666:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"81731:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"81756:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"81761:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81752:3:46"},"nodeType":"YulFunctionCall","src":"81752:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"81775:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"81780:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81771:3:46"},"nodeType":"YulFunctionCall","src":"81771:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"81765:5:46"},"nodeType":"YulFunctionCall","src":"81765:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"81745:6:46"},"nodeType":"YulFunctionCall","src":"81745:39:46"},"nodeType":"YulExpressionStatement","src":"81745:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"81692:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"81695:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"81689:2:46"},"nodeType":"YulFunctionCall","src":"81689:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"81703:19:46","statements":[{"nodeType":"YulAssignment","src":"81705:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"81714:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"81717:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81710:3:46"},"nodeType":"YulFunctionCall","src":"81710:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"81705:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"81685:3:46","statements":[]},"src":"81681:113:46"},{"body":{"nodeType":"YulBlock","src":"81828:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"81878:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"81883:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81874:3:46"},"nodeType":"YulFunctionCall","src":"81874:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"81892:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"81867:6:46"},"nodeType":"YulFunctionCall","src":"81867:27:46"},"nodeType":"YulExpressionStatement","src":"81867:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"81809:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"81812:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"81806:2:46"},"nodeType":"YulFunctionCall","src":"81806:13:46"},"nodeType":"YulIf","src":"81803:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"81634:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"81639:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"81644:6:46","type":""}],"src":"81603:307:46"},{"body":{"nodeType":"YulBlock","src":"81959:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"81969:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"81991:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"82021:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"81999:21:46"},"nodeType":"YulFunctionCall","src":"81999:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"81987:3:46"},"nodeType":"YulFunctionCall","src":"81987:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"81973:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"82138:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"82140:16:46"},"nodeType":"YulFunctionCall","src":"82140:18:46"},"nodeType":"YulExpressionStatement","src":"82140:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"82081:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"82093:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"82078:2:46"},"nodeType":"YulFunctionCall","src":"82078:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"82117:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"82129:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"82114:2:46"},"nodeType":"YulFunctionCall","src":"82114:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"82075:2:46"},"nodeType":"YulFunctionCall","src":"82075:62:46"},"nodeType":"YulIf","src":"82072:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82176:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"82180:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82169:6:46"},"nodeType":"YulFunctionCall","src":"82169:22:46"},"nodeType":"YulExpressionStatement","src":"82169:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"81945:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"81953:4:46","type":""}],"src":"81916:281:46"},{"body":{"nodeType":"YulBlock","src":"82236:140:46","statements":[{"nodeType":"YulAssignment","src":"82246:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"82268:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"82251:16:46"},"nodeType":"YulFunctionCall","src":"82251:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"82246:1:46"}]},{"nodeType":"YulAssignment","src":"82279:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"82301:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"82284:16:46"},"nodeType":"YulFunctionCall","src":"82284:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"82279:1:46"}]},{"body":{"nodeType":"YulBlock","src":"82325:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x12","nodeType":"YulIdentifier","src":"82327:16:46"},"nodeType":"YulFunctionCall","src":"82327:18:46"},"nodeType":"YulExpressionStatement","src":"82327:18:46"}]},"condition":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"82322:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"82315:6:46"},"nodeType":"YulFunctionCall","src":"82315:9:46"},"nodeType":"YulIf","src":"82312:35:46"},{"nodeType":"YulAssignment","src":"82356:14:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"82365:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"82368:1:46"}],"functionName":{"name":"mod","nodeType":"YulIdentifier","src":"82361:3:46"},"nodeType":"YulFunctionCall","src":"82361:9:46"},"variableNames":[{"name":"r","nodeType":"YulIdentifier","src":"82356:1:46"}]}]},"name":"mod_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"82225:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"82228:1:46","type":""}],"returnVariables":[{"name":"r","nodeType":"YulTypedName","src":"82234:1:46","type":""}],"src":"82203:173:46"},{"body":{"nodeType":"YulBlock","src":"82410:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82427:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82430:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82420:6:46"},"nodeType":"YulFunctionCall","src":"82420:88:46"},"nodeType":"YulExpressionStatement","src":"82420:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82524:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"82527:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82517:6:46"},"nodeType":"YulFunctionCall","src":"82517:15:46"},"nodeType":"YulExpressionStatement","src":"82517:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82548:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82551:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"82541:6:46"},"nodeType":"YulFunctionCall","src":"82541:15:46"},"nodeType":"YulExpressionStatement","src":"82541:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"82382:180:46"},{"body":{"nodeType":"YulBlock","src":"82596:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82613:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82616:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82606:6:46"},"nodeType":"YulFunctionCall","src":"82606:88:46"},"nodeType":"YulExpressionStatement","src":"82606:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82710:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"82713:4:46","type":"","value":"0x12"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82703:6:46"},"nodeType":"YulFunctionCall","src":"82703:15:46"},"nodeType":"YulExpressionStatement","src":"82703:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82734:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82737:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"82727:6:46"},"nodeType":"YulFunctionCall","src":"82727:15:46"},"nodeType":"YulExpressionStatement","src":"82727:15:46"}]},"name":"panic_error_0x12","nodeType":"YulFunctionDefinition","src":"82568:180:46"},{"body":{"nodeType":"YulBlock","src":"82782:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82799:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82802:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82792:6:46"},"nodeType":"YulFunctionCall","src":"82792:88:46"},"nodeType":"YulExpressionStatement","src":"82792:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82896:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"82899:4:46","type":"","value":"0x21"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82889:6:46"},"nodeType":"YulFunctionCall","src":"82889:15:46"},"nodeType":"YulExpressionStatement","src":"82889:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82920:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82923:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"82913:6:46"},"nodeType":"YulFunctionCall","src":"82913:15:46"},"nodeType":"YulExpressionStatement","src":"82913:15:46"}]},"name":"panic_error_0x21","nodeType":"YulFunctionDefinition","src":"82754:180:46"},{"body":{"nodeType":"YulBlock","src":"82968:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"82985:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"82988:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"82978:6:46"},"nodeType":"YulFunctionCall","src":"82978:88:46"},"nodeType":"YulExpressionStatement","src":"82978:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83082:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"83085:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"83075:6:46"},"nodeType":"YulFunctionCall","src":"83075:15:46"},"nodeType":"YulExpressionStatement","src":"83075:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83106:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83109:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83099:6:46"},"nodeType":"YulFunctionCall","src":"83099:15:46"},"nodeType":"YulExpressionStatement","src":"83099:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"82940:180:46"},{"body":{"nodeType":"YulBlock","src":"83154:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83171:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83174:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"83164:6:46"},"nodeType":"YulFunctionCall","src":"83164:88:46"},"nodeType":"YulExpressionStatement","src":"83164:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83268:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"83271:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"83261:6:46"},"nodeType":"YulFunctionCall","src":"83261:15:46"},"nodeType":"YulExpressionStatement","src":"83261:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83292:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83295:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83285:6:46"},"nodeType":"YulFunctionCall","src":"83285:15:46"},"nodeType":"YulExpressionStatement","src":"83285:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"83126:180:46"},{"body":{"nodeType":"YulBlock","src":"83401:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83418:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83421:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83411:6:46"},"nodeType":"YulFunctionCall","src":"83411:12:46"},"nodeType":"YulExpressionStatement","src":"83411:12:46"}]},"name":"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490","nodeType":"YulFunctionDefinition","src":"83312:117:46"},{"body":{"nodeType":"YulBlock","src":"83524:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83541:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83544:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83534:6:46"},"nodeType":"YulFunctionCall","src":"83534:12:46"},"nodeType":"YulExpressionStatement","src":"83534:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"83435:117:46"},{"body":{"nodeType":"YulBlock","src":"83647:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83664:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83667:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83657:6:46"},"nodeType":"YulFunctionCall","src":"83657:12:46"},"nodeType":"YulExpressionStatement","src":"83657:12:46"}]},"name":"revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f","nodeType":"YulFunctionDefinition","src":"83558:117:46"},{"body":{"nodeType":"YulBlock","src":"83770:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83787:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83790:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83780:6:46"},"nodeType":"YulFunctionCall","src":"83780:12:46"},"nodeType":"YulExpressionStatement","src":"83780:12:46"}]},"name":"revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421","nodeType":"YulFunctionDefinition","src":"83681:117:46"},{"body":{"nodeType":"YulBlock","src":"83893:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"83910:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"83913:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"83903:6:46"},"nodeType":"YulFunctionCall","src":"83903:12:46"},"nodeType":"YulExpressionStatement","src":"83903:12:46"}]},"name":"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef","nodeType":"YulFunctionDefinition","src":"83804:117:46"},{"body":{"nodeType":"YulBlock","src":"84016:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"84033:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"84036:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"84026:6:46"},"nodeType":"YulFunctionCall","src":"84026:12:46"},"nodeType":"YulExpressionStatement","src":"84026:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"83927:117:46"},{"body":{"nodeType":"YulBlock","src":"84139:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"84156:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"84159:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"84149:6:46"},"nodeType":"YulFunctionCall","src":"84149:12:46"},"nodeType":"YulExpressionStatement","src":"84149:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"84050:117:46"},{"body":{"nodeType":"YulBlock","src":"84262:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"84279:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"84282:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"84272:6:46"},"nodeType":"YulFunctionCall","src":"84272:12:46"},"nodeType":"YulExpressionStatement","src":"84272:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"84173:117:46"},{"body":{"nodeType":"YulBlock","src":"84344:54:46","statements":[{"nodeType":"YulAssignment","src":"84354:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"84372:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"84379:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84368:3:46"},"nodeType":"YulFunctionCall","src":"84368:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"84388:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"84384:3:46"},"nodeType":"YulFunctionCall","src":"84384:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"84364:3:46"},"nodeType":"YulFunctionCall","src":"84364:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"84354:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"84327:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"84337:6:46","type":""}],"src":"84296:102:46"},{"body":{"nodeType":"YulBlock","src":"84510:135:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"84532:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84540:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84528:3:46"},"nodeType":"YulFunctionCall","src":"84528:14:46"},{"hexValue":"20636f756c64206e6f74206265207265747269657665642e204661696c656420","kind":"string","nodeType":"YulLiteral","src":"84544:34:46","type":"","value":" could not be retrieved. Failed "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"84521:6:46"},"nodeType":"YulFunctionCall","src":"84521:58:46"},"nodeType":"YulExpressionStatement","src":"84521:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"84600:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84608:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84596:3:46"},"nodeType":"YulFunctionCall","src":"84596:15:46"},{"hexValue":"776974682048545450206572726f7220636f64653a20","kind":"string","nodeType":"YulLiteral","src":"84613:24:46","type":"","value":"with HTTP error code: "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"84589:6:46"},"nodeType":"YulFunctionCall","src":"84589:49:46"},"nodeType":"YulExpressionStatement","src":"84589:49:46"}]},"name":"store_literal_in_memory_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"84502:6:46","type":""}],"src":"84404:241:46"},{"body":{"nodeType":"YulBlock","src":"84757:67:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"84779:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84787:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84775:3:46"},"nodeType":"YulFunctionCall","src":"84775:14:46"},{"hexValue":"207374616765206973206e6f7420737570706f72746564","kind":"string","nodeType":"YulLiteral","src":"84791:25:46","type":"","value":" stage is not supported"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"84768:6:46"},"nodeType":"YulFunctionCall","src":"84768:49:46"},"nodeType":"YulExpressionStatement","src":"84768:49:46"}]},"name":"store_literal_in_memory_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"84749:6:46","type":""}],"src":"84651:173:46"},{"body":{"nodeType":"YulBlock","src":"84936:187:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"84958:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"84966:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"84954:3:46"},"nodeType":"YulFunctionCall","src":"84954:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642062","kind":"string","nodeType":"YulLiteral","src":"84970:34:46","type":"","value":"WitnetParserLib: Tried to read b"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"84947:6:46"},"nodeType":"YulFunctionCall","src":"84947:58:46"},"nodeType":"YulExpressionStatement","src":"84947:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85026:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85034:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85022:3:46"},"nodeType":"YulFunctionCall","src":"85022:15:46"},{"hexValue":"797465732076616c75652066726f6d206572726f726564205769746e65742e52","kind":"string","nodeType":"YulLiteral","src":"85039:34:46","type":"","value":"ytes value from errored Witnet.R"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85015:6:46"},"nodeType":"YulFunctionCall","src":"85015:59:46"},"nodeType":"YulExpressionStatement","src":"85015:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85095:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85103:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85091:3:46"},"nodeType":"YulFunctionCall","src":"85091:15:46"},{"hexValue":"6573756c74","kind":"string","nodeType":"YulLiteral","src":"85108:7:46","type":"","value":"esult"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85084:6:46"},"nodeType":"YulFunctionCall","src":"85084:32:46"},"nodeType":"YulExpressionStatement","src":"85084:32:46"}]},"name":"store_literal_in_memory_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"84928:6:46","type":""}],"src":"84830:293:46"},{"body":{"nodeType":"YulBlock","src":"85235:65:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85257:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85265:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85253:3:46"},"nodeType":"YulFunctionCall","src":"85253:14:46"},{"hexValue":"556e6b6e6f776e206572726f7220283078","kind":"string","nodeType":"YulLiteral","src":"85269:19:46","type":"","value":"Unknown error (0x"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85246:6:46"},"nodeType":"YulFunctionCall","src":"85246:43:46"},"nodeType":"YulExpressionStatement","src":"85246:43:46"}]},"name":"store_literal_in_memory_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"85227:6:46","type":""}],"src":"85129:171:46"},{"body":{"nodeType":"YulBlock","src":"85416:208:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85442:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85450:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85438:3:46"},"nodeType":"YulFunctionCall","src":"85438:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"85454:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85431:6:46"},"nodeType":"YulFunctionCall","src":"85431:58:46"},"nodeType":"YulExpressionStatement","src":"85431:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85514:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85522:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85510:3:46"},"nodeType":"YulFunctionCall","src":"85510:15:46"},{"hexValue":"696e743132385b5d602076616c75652066726f6d206572726f72656420576974","kind":"string","nodeType":"YulLiteral","src":"85527:34:46","type":"","value":"int128[]` value from errored Wit"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85503:6:46"},"nodeType":"YulFunctionCall","src":"85503:59:46"},"nodeType":"YulExpressionStatement","src":"85503:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85587:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85595:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85583:3:46"},"nodeType":"YulFunctionCall","src":"85583:15:46"},{"hexValue":"6e65742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"85600:12:46","type":"","value":"net.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85576:6:46"},"nodeType":"YulFunctionCall","src":"85576:37:46"},"nodeType":"YulExpressionStatement","src":"85576:37:46"}]},"name":"store_literal_in_memory_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"85408:6:46","type":""}],"src":"85310:314:46"},{"body":{"nodeType":"YulBlock","src":"85740:81:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85766:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85774:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85762:3:46"},"nodeType":"YulFunctionCall","src":"85762:14:46"},{"hexValue":"556e646572666c6f77206174206f70657261746f7220636f6465203078","kind":"string","nodeType":"YulLiteral","src":"85778:31:46","type":"","value":"Underflow at operator code 0x"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85755:6:46"},"nodeType":"YulFunctionCall","src":"85755:55:46"},"nodeType":"YulExpressionStatement","src":"85755:55:46"}]},"name":"store_literal_in_memory_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"85732:6:46","type":""}],"src":"85634:187:46"},{"body":{"nodeType":"YulBlock","src":"85937:58:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"85963:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"85971:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"85959:3:46"},"nodeType":"YulFunctionCall","src":"85959:14:46"},{"hexValue":"207374616765","kind":"string","nodeType":"YulLiteral","src":"85975:8:46","type":"","value":" stage"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"85952:6:46"},"nodeType":"YulFunctionCall","src":"85952:32:46"},"nodeType":"YulExpressionStatement","src":"85952:32:46"}]},"name":"store_literal_in_memory_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"85929:6:46","type":""}],"src":"85831:164:46"},{"body":{"nodeType":"YulBlock","src":"86111:209:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86137:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86145:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86133:3:46"},"nodeType":"YulFunctionCall","src":"86133:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"86149:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86126:6:46"},"nodeType":"YulFunctionCall","src":"86126:58:46"},"nodeType":"YulExpressionStatement","src":"86126:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86209:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86217:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86205:3:46"},"nodeType":"YulFunctionCall","src":"86205:15:46"},{"hexValue":"666978656431365b5d602076616c75652066726f6d206572726f726564205769","kind":"string","nodeType":"YulLiteral","src":"86222:34:46","type":"","value":"fixed16[]` value from errored Wi"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86198:6:46"},"nodeType":"YulFunctionCall","src":"86198:59:46"},"nodeType":"YulExpressionStatement","src":"86198:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86282:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86290:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86278:3:46"},"nodeType":"YulFunctionCall","src":"86278:15:46"},{"hexValue":"746e65742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"86295:13:46","type":"","value":"tnet.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86271:6:46"},"nodeType":"YulFunctionCall","src":"86271:38:46"},"nodeType":"YulExpressionStatement","src":"86271:38:46"}]},"name":"store_literal_in_memory_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"86103:6:46","type":""}],"src":"86005:315:46"},{"body":{"nodeType":"YulBlock","src":"86436:79:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86462:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86470:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86458:3:46"},"nodeType":"YulFunctionCall","src":"86458:14:46"},{"hexValue":"20776173206e6f7420612076616c69642043424f522076616c7565","kind":"string","nodeType":"YulLiteral","src":"86474:29:46","type":"","value":" was not a valid CBOR value"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86451:6:46"},"nodeType":"YulFunctionCall","src":"86451:53:46"},"nodeType":"YulExpressionStatement","src":"86451:53:46"}]},"name":"store_literal_in_memory_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"86428:6:46","type":""}],"src":"86330:185:46"},{"body":{"nodeType":"YulBlock","src":"86631:68:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86657:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86665:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86653:3:46"},"nodeType":"YulFunctionCall","src":"86653:14:46"},{"hexValue":"4f70657261746f7220636f6465203078","kind":"string","nodeType":"YulLiteral","src":"86669:18:46","type":"","value":"Operator code 0x"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86646:6:46"},"nodeType":"YulFunctionCall","src":"86646:42:46"},"nodeType":"YulExpressionStatement","src":"86646:42:46"}]},"name":"store_literal_in_memory_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"86623:6:46","type":""}],"src":"86525:174:46"},{"body":{"nodeType":"YulBlock","src":"86815:137:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86841:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86849:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86837:3:46"},"nodeType":"YulFunctionCall","src":"86837:14:46"},{"hexValue":"20636f756c64206e6f7420626520726574726965766564206265636175736520","kind":"string","nodeType":"YulLiteral","src":"86853:34:46","type":"","value":" could not be retrieved because "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86830:6:46"},"nodeType":"YulFunctionCall","src":"86830:58:46"},"nodeType":"YulExpressionStatement","src":"86830:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"86913:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"86921:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"86909:3:46"},"nodeType":"YulFunctionCall","src":"86909:15:46"},{"hexValue":"6f6620612074696d656f7574","kind":"string","nodeType":"YulLiteral","src":"86926:14:46","type":"","value":"of a timeout"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"86902:6:46"},"nodeType":"YulFunctionCall","src":"86902:39:46"},"nodeType":"YulExpressionStatement","src":"86902:39:46"}]},"name":"store_literal_in_memory_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"86807:6:46","type":""}],"src":"86709:243:46"},{"body":{"nodeType":"YulBlock","src":"87068:206:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87094:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87102:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87090:3:46"},"nodeType":"YulFunctionCall","src":"87090:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"87106:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87083:6:46"},"nodeType":"YulFunctionCall","src":"87083:58:46"},"nodeType":"YulExpressionStatement","src":"87083:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87166:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87174:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87162:3:46"},"nodeType":"YulFunctionCall","src":"87162:15:46"},{"hexValue":"696e74313238602076616c75652066726f6d206572726f726564205769746e65","kind":"string","nodeType":"YulLiteral","src":"87179:34:46","type":"","value":"int128` value from errored Witne"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87155:6:46"},"nodeType":"YulFunctionCall","src":"87155:59:46"},"nodeType":"YulExpressionStatement","src":"87155:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87239:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87247:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87235:3:46"},"nodeType":"YulFunctionCall","src":"87235:15:46"},{"hexValue":"742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"87252:10:46","type":"","value":"t.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87228:6:46"},"nodeType":"YulFunctionCall","src":"87228:35:46"},"nodeType":"YulExpressionStatement","src":"87228:35:46"}]},"name":"store_literal_in_memory_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"87060:6:46","type":""}],"src":"86962:312:46"},{"body":{"nodeType":"YulBlock","src":"87390:64:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87416:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87424:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87412:3:46"},"nodeType":"YulFunctionCall","src":"87412:14:46"},{"hexValue":"20696e207363726970742023","kind":"string","nodeType":"YulLiteral","src":"87428:14:46","type":"","value":" in script #"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87405:6:46"},"nodeType":"YulFunctionCall","src":"87405:38:46"},"nodeType":"YulExpressionStatement","src":"87405:38:46"}]},"name":"store_literal_in_memory_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"87382:6:46","type":""}],"src":"87284:170:46"},{"body":{"nodeType":"YulBlock","src":"87570:45:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87592:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87600:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87588:3:46"},"nodeType":"YulFunctionCall","src":"87588:14:46"},{"hexValue":"29","kind":"string","nodeType":"YulLiteral","src":"87604:3:46","type":"","value":")"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87581:6:46"},"nodeType":"YulFunctionCall","src":"87581:27:46"},"nodeType":"YulExpressionStatement","src":"87581:27:46"}]},"name":"store_literal_in_memory_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"87562:6:46","type":""}],"src":"87464:151:46"},{"body":{"nodeType":"YulBlock","src":"87727:50:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87749:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87757:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87745:3:46"},"nodeType":"YulFunctionCall","src":"87745:14:46"},{"hexValue":"2066726f6d20","kind":"string","nodeType":"YulLiteral","src":"87761:8:46","type":"","value":" from "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87738:6:46"},"nodeType":"YulFunctionCall","src":"87738:32:46"},"nodeType":"YulExpressionStatement","src":"87738:32:46"}]},"name":"store_literal_in_memory_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"87719:6:46","type":""}],"src":"87621:156:46"},{"body":{"nodeType":"YulBlock","src":"87889:59:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"87911:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"87919:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"87907:3:46"},"nodeType":"YulFunctionCall","src":"87907:14:46"},{"hexValue":"536f75726365207363726970742023","kind":"string","nodeType":"YulLiteral","src":"87923:17:46","type":"","value":"Source script #"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"87900:6:46"},"nodeType":"YulFunctionCall","src":"87900:41:46"},"nodeType":"YulExpressionStatement","src":"87900:41:46"}]},"name":"store_literal_in_memory_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"87881:6:46","type":""}],"src":"87783:165:46"},{"body":{"nodeType":"YulBlock","src":"88060:190:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88082:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88090:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88078:3:46"},"nodeType":"YulFunctionCall","src":"88078:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"88094:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88071:6:46"},"nodeType":"YulFunctionCall","src":"88071:58:46"},"nodeType":"YulExpressionStatement","src":"88071:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88150:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88158:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88146:3:46"},"nodeType":"YulFunctionCall","src":"88146:15:46"},{"hexValue":"75696e743634602076616c75652066726f6d206572726f726564205769746e65","kind":"string","nodeType":"YulLiteral","src":"88163:34:46","type":"","value":"uint64` value from errored Witne"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88139:6:46"},"nodeType":"YulFunctionCall","src":"88139:59:46"},"nodeType":"YulExpressionStatement","src":"88139:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88219:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88227:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88215:3:46"},"nodeType":"YulFunctionCall","src":"88215:15:46"},{"hexValue":"742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"88232:10:46","type":"","value":"t.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88208:6:46"},"nodeType":"YulFunctionCall","src":"88208:35:46"},"nodeType":"YulExpressionStatement","src":"88208:35:46"}]},"name":"store_literal_in_memory_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"88052:6:46","type":""}],"src":"87954:296:46"},{"body":{"nodeType":"YulBlock","src":"88362:60:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88384:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88392:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88380:3:46"},"nodeType":"YulFunctionCall","src":"88380:14:46"},{"hexValue":"20666f756e642061742063616c6c2023","kind":"string","nodeType":"YulLiteral","src":"88396:18:46","type":"","value":" found at call #"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88373:6:46"},"nodeType":"YulFunctionCall","src":"88373:42:46"},"nodeType":"YulExpressionStatement","src":"88373:42:46"}]},"name":"store_literal_in_memory_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"88354:6:46","type":""}],"src":"88256:166:46"},{"body":{"nodeType":"YulBlock","src":"88534:192:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88556:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88564:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88552:3:46"},"nodeType":"YulFunctionCall","src":"88552:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"88568:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88545:6:46"},"nodeType":"YulFunctionCall","src":"88545:58:46"},"nodeType":"YulExpressionStatement","src":"88545:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88624:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88632:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88620:3:46"},"nodeType":"YulFunctionCall","src":"88620:15:46"},{"hexValue":"75696e7436345b5d602076616c75652066726f6d206572726f72656420576974","kind":"string","nodeType":"YulLiteral","src":"88637:34:46","type":"","value":"uint64[]` value from errored Wit"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88613:6:46"},"nodeType":"YulFunctionCall","src":"88613:59:46"},"nodeType":"YulExpressionStatement","src":"88613:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88693:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88701:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88689:3:46"},"nodeType":"YulFunctionCall","src":"88689:15:46"},{"hexValue":"6e65742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"88706:12:46","type":"","value":"net.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88682:6:46"},"nodeType":"YulFunctionCall","src":"88682:37:46"},"nodeType":"YulExpressionStatement","src":"88682:37:46"}]},"name":"store_literal_in_memory_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"88526:6:46","type":""}],"src":"88428:298:46"},{"body":{"nodeType":"YulBlock","src":"88838:192:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88860:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88868:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88856:3:46"},"nodeType":"YulFunctionCall","src":"88856:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"88872:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88849:6:46"},"nodeType":"YulFunctionCall","src":"88849:58:46"},"nodeType":"YulExpressionStatement","src":"88849:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88928:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"88936:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88924:3:46"},"nodeType":"YulFunctionCall","src":"88924:15:46"},{"hexValue":"737472696e675b5d602076616c75652066726f6d206572726f72656420576974","kind":"string","nodeType":"YulLiteral","src":"88941:34:46","type":"","value":"string[]` value from errored Wit"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88917:6:46"},"nodeType":"YulFunctionCall","src":"88917:59:46"},"nodeType":"YulExpressionStatement","src":"88917:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"88997:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89005:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"88993:3:46"},"nodeType":"YulFunctionCall","src":"88993:15:46"},{"hexValue":"6e65742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"89010:12:46","type":"","value":"net.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"88986:6:46"},"nodeType":"YulFunctionCall","src":"88986:37:46"},"nodeType":"YulExpressionStatement","src":"88986:37:46"}]},"name":"store_literal_in_memory_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"88830:6:46","type":""}],"src":"88732:298:46"},{"body":{"nodeType":"YulBlock","src":"89142:118:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89164:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89172:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89160:3:46"},"nodeType":"YulFunctionCall","src":"89160:14:46"},{"hexValue":"20737461676520636f6e7461696e656420746f6f206d616e792063616c6c7320","kind":"string","nodeType":"YulLiteral","src":"89176:34:46","type":"","value":" stage contained too many calls "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89153:6:46"},"nodeType":"YulFunctionCall","src":"89153:58:46"},"nodeType":"YulExpressionStatement","src":"89153:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89232:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89240:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89228:3:46"},"nodeType":"YulFunctionCall","src":"89228:15:46"},{"hexValue":"28","kind":"string","nodeType":"YulLiteral","src":"89245:3:46","type":"","value":"("}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89221:6:46"},"nodeType":"YulFunctionCall","src":"89221:28:46"},"nodeType":"YulExpressionStatement","src":"89221:28:46"}]},"name":"store_literal_in_memory_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"89134:6:46","type":""}],"src":"89036:224:46"},{"body":{"nodeType":"YulBlock","src":"89376:205:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89402:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89410:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89398:3:46"},"nodeType":"YulFunctionCall","src":"89398:14:46"},{"hexValue":"5769746e65745061727365724c69623a20747269656420746f20726561642062","kind":"string","nodeType":"YulLiteral","src":"89414:34:46","type":"","value":"WitnetParserLib: tried to read b"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89391:6:46"},"nodeType":"YulFunctionCall","src":"89391:58:46"},"nodeType":"YulExpressionStatement","src":"89391:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89474:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89482:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89470:3:46"},"nodeType":"YulFunctionCall","src":"89470:15:46"},{"hexValue":"7974657333322076616c75652066726f6d206572726f726564205769746e6574","kind":"string","nodeType":"YulLiteral","src":"89487:34:46","type":"","value":"ytes32 value from errored Witnet"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89463:6:46"},"nodeType":"YulFunctionCall","src":"89463:59:46"},"nodeType":"YulExpressionStatement","src":"89463:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89547:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89555:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89543:3:46"},"nodeType":"YulFunctionCall","src":"89543:15:46"},{"hexValue":"2e526573756c74","kind":"string","nodeType":"YulLiteral","src":"89560:9:46","type":"","value":".Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89536:6:46"},"nodeType":"YulFunctionCall","src":"89536:34:46"},"nodeType":"YulExpressionStatement","src":"89536:34:46"}]},"name":"store_literal_in_memory_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"89368:6:46","type":""}],"src":"89270:311:46"},{"body":{"nodeType":"YulBlock","src":"89697:206:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89723:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89731:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89719:3:46"},"nodeType":"YulFunctionCall","src":"89719:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"89735:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89712:6:46"},"nodeType":"YulFunctionCall","src":"89712:58:46"},"nodeType":"YulExpressionStatement","src":"89712:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89795:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89803:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89791:3:46"},"nodeType":"YulFunctionCall","src":"89791:15:46"},{"hexValue":"737472696e67602076616c75652066726f6d206572726f726564205769746e65","kind":"string","nodeType":"YulLiteral","src":"89808:34:46","type":"","value":"string` value from errored Witne"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89784:6:46"},"nodeType":"YulFunctionCall","src":"89784:59:46"},"nodeType":"YulExpressionStatement","src":"89784:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"89868:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"89876:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"89864:3:46"},"nodeType":"YulFunctionCall","src":"89864:15:46"},{"hexValue":"742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"89881:10:46","type":"","value":"t.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"89857:6:46"},"nodeType":"YulFunctionCall","src":"89857:35:46"},"nodeType":"YulExpressionStatement","src":"89857:35:46"}]},"name":"store_literal_in_memory_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"89689:6:46","type":""}],"src":"89591:312:46"},{"body":{"nodeType":"YulBlock","src":"90019:78:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90045:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90053:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90041:3:46"},"nodeType":"YulFunctionCall","src":"90041:14:46"},{"hexValue":"5468652043424f522076616c756520696e207363726970742023","kind":"string","nodeType":"YulLiteral","src":"90057:28:46","type":"","value":"The CBOR value in script #"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90034:6:46"},"nodeType":"YulFunctionCall","src":"90034:52:46"},"nodeType":"YulExpressionStatement","src":"90034:52:46"}]},"name":"store_literal_in_memory_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"90011:6:46","type":""}],"src":"89913:184:46"},{"body":{"nodeType":"YulBlock","src":"90213:129:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90239:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90247:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90235:3:46"},"nodeType":"YulFunctionCall","src":"90235:14:46"},{"hexValue":"4469766973696f6e206279207a65726f206174206f70657261746f7220636f64","kind":"string","nodeType":"YulLiteral","src":"90251:34:46","type":"","value":"Division by zero at operator cod"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90228:6:46"},"nodeType":"YulFunctionCall","src":"90228:58:46"},"nodeType":"YulExpressionStatement","src":"90228:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90311:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90319:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90307:3:46"},"nodeType":"YulFunctionCall","src":"90307:15:46"},{"hexValue":"65203078","kind":"string","nodeType":"YulLiteral","src":"90324:6:46","type":"","value":"e 0x"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90300:6:46"},"nodeType":"YulFunctionCall","src":"90300:31:46"},"nodeType":"YulExpressionStatement","src":"90300:31:46"}]},"name":"store_literal_in_memory_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"90205:6:46","type":""}],"src":"90107:235:46"},{"body":{"nodeType":"YulBlock","src":"90458:205:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90484:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90492:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90480:3:46"},"nodeType":"YulFunctionCall","src":"90480:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642065","kind":"string","nodeType":"YulLiteral","src":"90496:34:46","type":"","value":"WitnetParserLib: Tried to read e"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90473:6:46"},"nodeType":"YulFunctionCall","src":"90473:58:46"},"nodeType":"YulExpressionStatement","src":"90473:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90556:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90564:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90552:3:46"},"nodeType":"YulFunctionCall","src":"90552:15:46"},{"hexValue":"72726f7220636f64652066726f6d207375636365737366756c205769746e6574","kind":"string","nodeType":"YulLiteral","src":"90569:34:46","type":"","value":"rror code from successful Witnet"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90545:6:46"},"nodeType":"YulFunctionCall","src":"90545:59:46"},"nodeType":"YulExpressionStatement","src":"90545:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90629:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90637:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90625:3:46"},"nodeType":"YulFunctionCall","src":"90625:15:46"},{"hexValue":"2e526573756c74","kind":"string","nodeType":"YulLiteral","src":"90642:9:46","type":"","value":".Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90618:6:46"},"nodeType":"YulFunctionCall","src":"90618:34:46"},"nodeType":"YulExpressionStatement","src":"90618:34:46"}]},"name":"store_literal_in_memory_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"90450:6:46","type":""}],"src":"90352:311:46"},{"body":{"nodeType":"YulBlock","src":"90779:80:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"90805:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"90813:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90801:3:46"},"nodeType":"YulFunctionCall","src":"90801:14:46"},{"hexValue":"4f766572666c6f77206174206f70657261746f7220636f6465203078","kind":"string","nodeType":"YulLiteral","src":"90817:30:46","type":"","value":"Overflow at operator code 0x"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90794:6:46"},"nodeType":"YulFunctionCall","src":"90794:54:46"},"nodeType":"YulExpressionStatement","src":"90794:54:46"}]},"name":"store_literal_in_memory_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"90771:6:46","type":""}],"src":"90673:186:46"},{"body":{"nodeType":"YulBlock","src":"90975:78:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91001:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91009:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"90997:3:46"},"nodeType":"YulFunctionCall","src":"90997:14:46"},{"hexValue":"20776173206e6f7420616e204172726179206f662063616c6c73","kind":"string","nodeType":"YulLiteral","src":"91013:28:46","type":"","value":" was not an Array of calls"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"90990:6:46"},"nodeType":"YulFunctionCall","src":"90990:52:46"},"nodeType":"YulExpressionStatement","src":"90990:52:46"}]},"name":"store_literal_in_memory_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"90967:6:46","type":""}],"src":"90869:184:46"},{"body":{"nodeType":"YulBlock","src":"91169:204:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91195:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91203:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91191:3:46"},"nodeType":"YulFunctionCall","src":"91191:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"91207:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91184:6:46"},"nodeType":"YulFunctionCall","src":"91184:58:46"},"nodeType":"YulExpressionStatement","src":"91184:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91267:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91275:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91263:3:46"},"nodeType":"YulFunctionCall","src":"91263:15:46"},{"hexValue":"626f6f6c602076616c75652066726f6d206572726f726564205769746e65742e","kind":"string","nodeType":"YulLiteral","src":"91280:34:46","type":"","value":"bool` value from errored Witnet."}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91256:6:46"},"nodeType":"YulFunctionCall","src":"91256:59:46"},"nodeType":"YulExpressionStatement","src":"91256:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91340:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91348:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91336:3:46"},"nodeType":"YulFunctionCall","src":"91336:15:46"},{"hexValue":"526573756c74","kind":"string","nodeType":"YulLiteral","src":"91353:8:46","type":"","value":"Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91329:6:46"},"nodeType":"YulFunctionCall","src":"91329:33:46"},"nodeType":"YulExpressionStatement","src":"91329:33:46"}]},"name":"store_literal_in_memory_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"91161:6:46","type":""}],"src":"91063:310:46"},{"body":{"nodeType":"YulBlock","src":"91489:81:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91515:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91523:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91511:3:46"},"nodeType":"YulFunctionCall","src":"91511:14:46"},{"hexValue":"20776173206e6f7420612076616c696420446174612052657175657374","kind":"string","nodeType":"YulLiteral","src":"91527:31:46","type":"","value":" was not a valid Data Request"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91504:6:46"},"nodeType":"YulFunctionCall","src":"91504:55:46"},"nodeType":"YulExpressionStatement","src":"91504:55:46"}]},"name":"store_literal_in_memory_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"91481:6:46","type":""}],"src":"91383:187:46"},{"body":{"nodeType":"YulBlock","src":"91686:62:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91712:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91720:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91708:3:46"},"nodeType":"YulFunctionCall","src":"91708:14:46"},{"hexValue":"2066726f6d2074686520","kind":"string","nodeType":"YulLiteral","src":"91724:12:46","type":"","value":" from the "}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91701:6:46"},"nodeType":"YulFunctionCall","src":"91701:36:46"},"nodeType":"YulExpressionStatement","src":"91701:36:46"}]},"name":"store_literal_in_memory_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"91678:6:46","type":""}],"src":"91580:168:46"},{"body":{"nodeType":"YulBlock","src":"91864:207:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91890:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91898:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91886:3:46"},"nodeType":"YulFunctionCall","src":"91886:14:46"},{"hexValue":"5769746e65745061727365724c69623a20547269656420746f20726561642060","kind":"string","nodeType":"YulLiteral","src":"91902:34:46","type":"","value":"WitnetParserLib: Tried to read `"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91879:6:46"},"nodeType":"YulFunctionCall","src":"91879:58:46"},"nodeType":"YulExpressionStatement","src":"91879:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"91962:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"91970:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"91958:3:46"},"nodeType":"YulFunctionCall","src":"91958:15:46"},{"hexValue":"66697865643136602076616c75652066726f6d206572726f726564205769746e","kind":"string","nodeType":"YulLiteral","src":"91975:34:46","type":"","value":"fixed16` value from errored Witn"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"91951:6:46"},"nodeType":"YulFunctionCall","src":"91951:59:46"},"nodeType":"YulExpressionStatement","src":"91951:59:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"92035:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"92043:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92031:3:46"},"nodeType":"YulFunctionCall","src":"92031:15:46"},{"hexValue":"65742e526573756c74","kind":"string","nodeType":"YulLiteral","src":"92048:11:46","type":"","value":"et.Result"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"92024:6:46"},"nodeType":"YulFunctionCall","src":"92024:36:46"},"nodeType":"YulExpressionStatement","src":"92024:36:46"}]},"name":"store_literal_in_memory_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"91856:6:46","type":""}],"src":"91758:313:46"},{"body":{"nodeType":"YulBlock","src":"92187:137:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"92213:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"92221:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92209:3:46"},"nodeType":"YulFunctionCall","src":"92209:14:46"},{"hexValue":"546865207265717565737420636f6e7461696e656420746f6f206d616e792073","kind":"string","nodeType":"YulLiteral","src":"92225:34:46","type":"","value":"The request contained too many s"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"92202:6:46"},"nodeType":"YulFunctionCall","src":"92202:58:46"},"nodeType":"YulExpressionStatement","src":"92202:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"92285:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"92293:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92281:3:46"},"nodeType":"YulFunctionCall","src":"92281:15:46"},{"hexValue":"6f75726365732028","kind":"string","nodeType":"YulLiteral","src":"92298:10:46","type":"","value":"ources ("}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"92274:6:46"},"nodeType":"YulFunctionCall","src":"92274:35:46"},"nodeType":"YulExpressionStatement","src":"92274:35:46"}]},"name":"store_literal_in_memory_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"92179:6:46","type":""}],"src":"92081:243:46"},{"body":{"nodeType":"YulBlock","src":"92444:68:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"92474:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"92482:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92470:3:46"},"nodeType":"YulFunctionCall","src":"92470:14:46"},{"hexValue":"5363726970742023","kind":"string","nodeType":"YulLiteral","src":"92486:10:46","type":"","value":"Script #"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"92463:6:46"},"nodeType":"YulFunctionCall","src":"92463:34:46"},"nodeType":"YulExpressionStatement","src":"92463:34:46"}]},"name":"store_literal_in_memory_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"92436:6:46","type":""}],"src":"92338:174:46"},{"body":{"nodeType":"YulBlock","src":"92632:68:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"92662:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"92670:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"92658:3:46"},"nodeType":"YulFunctionCall","src":"92658:14:46"},{"hexValue":"536f757263652023","kind":"string","nodeType":"YulLiteral","src":"92674:10:46","type":"","value":"Source #"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"92651:6:46"},"nodeType":"YulFunctionCall","src":"92651:34:46"},"nodeType":"YulExpressionStatement","src":"92651:34:46"}]},"name":"store_literal_in_memory_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"92624:6:46","type":""}],"src":"92526:174:46"},{"body":{"nodeType":"YulBlock","src":"92772:80:46","statements":[{"body":{"nodeType":"YulBlock","src":"92816:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x21","nodeType":"YulIdentifier","src":"92818:16:46"},"nodeType":"YulFunctionCall","src":"92818:18:46"},"nodeType":"YulExpressionStatement","src":"92818:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92803:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"92810:3:46","type":"","value":"256"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"92800:2:46"},"nodeType":"YulFunctionCall","src":"92800:14:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"92793:6:46"},"nodeType":"YulFunctionCall","src":"92793:22:46"},"nodeType":"YulIf","src":"92790:48:46"}]},"name":"validator_assert_t_enum$_ErrorCodes_$4618","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92765:5:46","type":""}],"src":"92714:138:46"},{"body":{"nodeType":"YulBlock","src":"92906:92:46","statements":[{"body":{"nodeType":"YulBlock","src":"92968:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"92977:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"92980:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"92970:6:46"},"nodeType":"YulFunctionCall","src":"92970:12:46"},"nodeType":"YulExpressionStatement","src":"92970:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92937:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"92959:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"92944:14:46"},"nodeType":"YulFunctionCall","src":"92944:21:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"92934:2:46"},"nodeType":"YulFunctionCall","src":"92934:32:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"92927:6:46"},"nodeType":"YulFunctionCall","src":"92927:40:46"},"nodeType":"YulIf","src":"92924:60:46"}]},"name":"validator_revert_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"92899:5:46","type":""}],"src":"92866:132:46"},{"body":{"nodeType":"YulBlock","src":"93055:95:46","statements":[{"body":{"nodeType":"YulBlock","src":"93120:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93129:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"93132:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"93122:6:46"},"nodeType":"YulFunctionCall","src":"93122:12:46"},"nodeType":"YulExpressionStatement","src":"93122:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93086:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93111:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"93093:17:46"},"nodeType":"YulFunctionCall","src":"93093:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93083:2:46"},"nodeType":"YulFunctionCall","src":"93083:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93076:6:46"},"nodeType":"YulFunctionCall","src":"93076:43:46"},"nodeType":"YulIf","src":"93073:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93048:5:46","type":""}],"src":"93012:138:46"},{"body":{"nodeType":"YulBlock","src":"93206:94:46","statements":[{"body":{"nodeType":"YulBlock","src":"93270:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93279:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"93282:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"93272:6:46"},"nodeType":"YulFunctionCall","src":"93272:12:46"},"nodeType":"YulExpressionStatement","src":"93272:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93237:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93261:5:46"}],"functionName":{"name":"cleanup_t_int128","nodeType":"YulIdentifier","src":"93244:16:46"},"nodeType":"YulFunctionCall","src":"93244:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93234:2:46"},"nodeType":"YulFunctionCall","src":"93234:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93227:6:46"},"nodeType":"YulFunctionCall","src":"93227:42:46"},"nodeType":"YulIf","src":"93224:62:46"}]},"name":"validator_revert_t_int128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93199:5:46","type":""}],"src":"93164:136:46"},{"body":{"nodeType":"YulBlock","src":"93355:93:46","statements":[{"body":{"nodeType":"YulBlock","src":"93418:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93427:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"93430:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"93420:6:46"},"nodeType":"YulFunctionCall","src":"93420:12:46"},"nodeType":"YulExpressionStatement","src":"93420:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93386:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93409:5:46"}],"functionName":{"name":"cleanup_t_int32","nodeType":"YulIdentifier","src":"93393:15:46"},"nodeType":"YulFunctionCall","src":"93393:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93383:2:46"},"nodeType":"YulFunctionCall","src":"93383:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93376:6:46"},"nodeType":"YulFunctionCall","src":"93376:41:46"},"nodeType":"YulIf","src":"93373:61:46"}]},"name":"validator_revert_t_int32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93348:5:46","type":""}],"src":"93314:134:46"},{"body":{"nodeType":"YulBlock","src":"93504:94:46","statements":[{"body":{"nodeType":"YulBlock","src":"93568:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93577:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"93580:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"93570:6:46"},"nodeType":"YulFunctionCall","src":"93570:12:46"},"nodeType":"YulExpressionStatement","src":"93570:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93535:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93559:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"93542:16:46"},"nodeType":"YulFunctionCall","src":"93542:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93532:2:46"},"nodeType":"YulFunctionCall","src":"93532:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93525:6:46"},"nodeType":"YulFunctionCall","src":"93525:42:46"},"nodeType":"YulIf","src":"93522:62:46"}]},"name":"validator_revert_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93497:5:46","type":""}],"src":"93462:136:46"},{"body":{"nodeType":"YulBlock","src":"93654:94:46","statements":[{"body":{"nodeType":"YulBlock","src":"93718:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93727:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"93730:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"93720:6:46"},"nodeType":"YulFunctionCall","src":"93720:12:46"},"nodeType":"YulExpressionStatement","src":"93720:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93685:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93709:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"93692:16:46"},"nodeType":"YulFunctionCall","src":"93692:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93682:2:46"},"nodeType":"YulFunctionCall","src":"93682:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93675:6:46"},"nodeType":"YulFunctionCall","src":"93675:42:46"},"nodeType":"YulIf","src":"93672:62:46"}]},"name":"validator_revert_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93647:5:46","type":""}],"src":"93612:136:46"},{"body":{"nodeType":"YulBlock","src":"93803:93:46","statements":[{"body":{"nodeType":"YulBlock","src":"93866:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"93875:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"93878:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"93868:6:46"},"nodeType":"YulFunctionCall","src":"93868:12:46"},"nodeType":"YulExpressionStatement","src":"93868:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93834:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"93857:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"93841:15:46"},"nodeType":"YulFunctionCall","src":"93841:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"93831:2:46"},"nodeType":"YulFunctionCall","src":"93831:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"93824:6:46"},"nodeType":"YulFunctionCall","src":"93824:41:46"},"nodeType":"YulIf","src":"93821:61:46"}]},"name":"validator_revert_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"93796:5:46","type":""}],"src":"93762:134:46"}]},"contents":"{\n\n    // int128[]\n    function abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_int128_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_int128_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // int32[]\n    function abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_int32_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_int32_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // string[]\n    function abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_string_memory_ptr_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let innerOffset := mload(src)\n            if gt(innerOffset, 0xffffffffffffffff) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n            let elementPos := add(offset, innerOffset)\n\n            mstore(dst, abi_decode_t_string_memory_ptr_fromMemory(elementPos, end))\n            dst := add(dst, 0x20)\n            src := add(src, 0x20)\n        }\n    }\n\n    // uint64[]\n    function abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(offset, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_array$_t_uint64_$dyn_memory_ptr(length))\n        let dst := array\n\n        mstore(array, length)\n        dst := add(array, 0x20)\n\n        let src := offset\n        if gt(add(src, mul(length, 0x20)), end) {\n            revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef()\n        }\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n\n            let elementPos := src\n\n            mstore(dst, abi_decode_t_uint64_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(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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_memory_to_memory(src, dst, length)\n    }\n\n    function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n        array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n        mstore(array, length)\n        let dst := add(array, 0x20)\n        if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_memory_to_memory(src, dst, length)\n    }\n\n    // int128[]\n    function abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_int128_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // int32[]\n    function abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_int32_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // string[]\n    function abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // uint64[]\n    function abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    function abi_decode_t_bool(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_bool(value)\n    }\n\n    function abi_decode_t_bool_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bool(value)\n    }\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(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_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        length := calldataload(offset)\n        if gt(length, 0xffffffffffffffff) { revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() }\n        arrayPos := add(offset, 0x20)\n        if gt(add(arrayPos, mul(length, 0x01)), end) { revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() }\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := calldataload(offset)\n        array := abi_decode_available_length_t_bytes_memory_ptr(add(offset, 0x20), length, end)\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_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_int128_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_int128(value)\n    }\n\n    function abi_decode_t_int32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_int32(value)\n    }\n\n    // string\n    function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n        let length := mload(offset)\n        array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n    }\n\n    // struct Witnet.Buffer\n    function abi_decode_t_struct$_Buffer_$4361_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // data\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr(add(headStart, offset), end))\n\n        }\n\n        {\n            // cursor\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint32(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Buffer\n    function abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // data\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // cursor\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint32_fromMemory(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.CBOR\n    function abi_decode_t_struct$_CBOR_$4356_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0xc0)\n\n        {\n            // buffer\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_struct$_Buffer_$4361_memory_ptr(add(headStart, offset), end))\n\n        }\n\n        {\n            // initialByte\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // majorType\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // additionalInformation\n\n            let offset := 96\n\n            mstore(add(value, 0x60), abi_decode_t_uint8(add(headStart, offset), end))\n\n        }\n\n        {\n            // len\n\n            let offset := 128\n\n            mstore(add(value, 0x80), abi_decode_t_uint64(add(headStart, offset), end))\n\n        }\n\n        {\n            // tag\n\n            let offset := 160\n\n            mstore(add(value, 0xa0), abi_decode_t_uint64(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.CBOR\n    function abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory(headStart, end) -> value {\n        if slt(sub(end, headStart), 0xc0) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0xc0)\n\n        {\n            // buffer\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x00), abi_decode_t_struct$_Buffer_$4361_memory_ptr_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // initialByte\n\n            let offset := 32\n\n            mstore(add(value, 0x20), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // majorType\n\n            let offset := 64\n\n            mstore(add(value, 0x40), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // additionalInformation\n\n            let offset := 96\n\n            mstore(add(value, 0x60), abi_decode_t_uint8_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // len\n\n            let offset := 128\n\n            mstore(add(value, 0x80), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n        }\n\n        {\n            // tag\n\n            let offset := 160\n\n            mstore(add(value, 0xa0), abi_decode_t_uint64_fromMemory(add(headStart, offset), end))\n\n        }\n\n    }\n\n    // struct Witnet.Result\n    function abi_decode_t_struct$_Result_$4342_memory_ptr(headStart, end) -> value {\n        if slt(sub(end, headStart), 0x40) { revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() }\n        value := allocate_memory(0x40)\n\n        {\n            // success\n\n            let offset := 0\n\n            mstore(add(value, 0x00), abi_decode_t_bool(add(headStart, offset), end))\n\n        }\n\n        {\n            // value\n\n            let offset := calldataload(add(headStart, 32))\n            if gt(offset, 0xffffffffffffffff) { revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() }\n\n            mstore(add(value, 0x20), abi_decode_t_struct$_CBOR_$4356_memory_ptr(add(headStart, offset), end))\n\n        }\n\n    }\n\n    function abi_decode_t_uint32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_t_uint64(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint64_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint8(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_t_uint8_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_tuple_t_array$_t_int128_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_int128_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_int32_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_int32_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_array$_t_uint64_$dyn_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bool_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bool_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_calldata_ptr(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0, value1 := abi_decode_t_bytes_calldata_ptr(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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_int128_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_int128_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_int32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_int32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_CBOR_$4356_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_CBOR_$4356_memory_ptr_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := mload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_CBOR_$4356_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_struct$_Result_$4342_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_struct$_Result_$4342_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint64(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint64_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint64_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encodeUpdatedPos_t_int128_to_t_int128_library(value0, pos) -> updatedPos {\n        abi_encode_t_int128_to_t_int128_library(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_int32_to_t_int32_library(value0, pos) -> updatedPos {\n        abi_encode_t_int32_to_t_int32_library(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    function abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library(value0, pos) -> updatedPos {\n        updatedPos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_library(value0, pos)\n    }\n\n    function abi_encodeUpdatedPos_t_uint64_to_t_uint64_library(value0, pos) -> updatedPos {\n        abi_encode_t_uint64_to_t_uint64_library(value0, pos)\n        updatedPos := add(pos, 0x20)\n    }\n\n    // int128[] -> int128[]\n    function abi_encode_t_array$_t_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_int128_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(pos, length)\n        let baseRef := array_dataslot_t_array$_t_int128_$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_int128_to_t_int128_library(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_int128_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // int32[] -> int32[]\n    function abi_encode_t_array$_t_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_int32_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(pos, length)\n        let baseRef := array_dataslot_t_array$_t_int32_$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_int32_to_t_int32_library(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_int32_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    // string[] -> string[]\n    function abi_encode_t_array$_t_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(pos, length)\n        let headStart := pos\n        let tail := add(pos, mul(length, 0x20))\n        let baseRef := array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value)\n        let srcPtr := baseRef\n        for { let i := 0 } lt(i, length) { i := add(i, 1) }\n        {\n            mstore(pos, sub(tail, headStart))\n            let elementValue0 := mload(srcPtr)\n            tail := abi_encodeUpdatedPos_t_string_memory_ptr_to_t_string_memory_ptr_library(elementValue0, tail)\n            srcPtr := array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(srcPtr)\n            pos := add(pos, 0x20)\n        }\n        pos := tail\n        end := pos\n    }\n\n    // uint64[] -> uint64[]\n    function abi_encode_t_array$_t_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let length := array_length_t_array$_t_uint64_$dyn_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(pos, length)\n        let baseRef := array_dataslot_t_array$_t_uint64_$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_uint64_to_t_uint64_library(elementValue0, pos)\n            srcPtr := array_nextElement_t_array$_t_uint64_$dyn_memory_ptr(srcPtr)\n        }\n        end := pos\n    }\n\n    function abi_encode_t_bool_to_t_bool_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_bool(value))\n    }\n\n    function abi_encode_t_bool_to_t_bool_library(value, pos) {\n        mstore(pos, cleanup_t_bool(value))\n    }\n\n    function abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_bytes32(value))\n    }\n\n    function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack_library(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack_library(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_bytes_memory_ptr_to_t_bytes_memory_ptr_library(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_library(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_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library(value, pos) {\n        mstore(pos, convert_t_enum$_ErrorCodes_$4618_to_t_uint8(value))\n    }\n\n    function abi_encode_t_int128_to_t_int128_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_int128(value))\n    }\n\n    function abi_encode_t_int128_to_t_int128_library(value, pos) {\n        mstore(pos, cleanup_t_int128(value))\n    }\n\n    function abi_encode_t_int32_to_t_int32_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_int32(value))\n    }\n\n    function abi_encode_t_int32_to_t_int32_library(value, pos) {\n        mstore(pos, cleanup_t_int32(value))\n    }\n\n    function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library(value, pos) -> end {\n        let length := array_length_t_string_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library(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_library(value, pos) -> end {\n        let length := array_length_t_string_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_library(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_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_string_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    function abi_encode_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 54)\n        store_literal_in_memory_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1(pos)\n        end := add(pos, 54)\n    }\n\n    function abi_encode_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 23)\n        store_literal_in_memory_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d(pos)\n        end := add(pos, 23)\n    }\n\n    function abi_encode_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 69)\n        store_literal_in_memory_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 17)\n        store_literal_in_memory_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5(pos)\n        end := add(pos, 17)\n    }\n\n    function abi_encode_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 74)\n        store_literal_in_memory_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 29)\n        store_literal_in_memory_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0(pos)\n        end := add(pos, 29)\n    }\n\n    function abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 6)\n        store_literal_in_memory_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240(pos)\n        end := add(pos, 6)\n    }\n\n    function abi_encode_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 75)\n        store_literal_in_memory_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 27)\n        store_literal_in_memory_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1(pos)\n        end := add(pos, 27)\n    }\n\n    function abi_encode_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 16)\n        store_literal_in_memory_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7(pos)\n        end := add(pos, 16)\n    }\n\n    function abi_encode_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 44)\n        store_literal_in_memory_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66(pos)\n        end := add(pos, 44)\n    }\n\n    function abi_encode_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 72)\n        store_literal_in_memory_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 12)\n        store_literal_in_memory_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b(pos)\n        end := add(pos, 12)\n    }\n\n    function abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 1)\n        store_literal_in_memory_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed(pos)\n        end := add(pos, 1)\n    }\n\n    function abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 6)\n        store_literal_in_memory_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b(pos)\n        end := add(pos, 6)\n    }\n\n    function abi_encode_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 15)\n        store_literal_in_memory_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916(pos)\n        end := add(pos, 15)\n    }\n\n    function abi_encode_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 72)\n        store_literal_in_memory_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 16)\n        store_literal_in_memory_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5(pos)\n        end := add(pos, 16)\n    }\n\n    function abi_encode_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 74)\n        store_literal_in_memory_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 74)\n        store_literal_in_memory_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 33)\n        store_literal_in_memory_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a(pos)\n        end := add(pos, 33)\n    }\n\n    function abi_encode_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 71)\n        store_literal_in_memory_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 72)\n        store_literal_in_memory_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 26)\n        store_literal_in_memory_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d(pos)\n        end := add(pos, 26)\n    }\n\n    function abi_encode_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 36)\n        store_literal_in_memory_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5(pos)\n        end := add(pos, 36)\n    }\n\n    function abi_encode_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 71)\n        store_literal_in_memory_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 28)\n        store_literal_in_memory_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58(pos)\n        end := add(pos, 28)\n    }\n\n    function abi_encode_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 26)\n        store_literal_in_memory_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2(pos)\n        end := add(pos, 26)\n    }\n\n    function abi_encode_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 70)\n        store_literal_in_memory_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 29)\n        store_literal_in_memory_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594(pos)\n        end := add(pos, 29)\n    }\n\n    function abi_encode_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 10)\n        store_literal_in_memory_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277(pos)\n        end := add(pos, 10)\n    }\n\n    function abi_encode_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 73)\n        store_literal_in_memory_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a(pos)\n        end := add(pos, 96)\n    }\n\n    function abi_encode_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 40)\n        store_literal_in_memory_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2(pos)\n        end := add(pos, 40)\n    }\n\n    function abi_encode_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 8)\n        store_literal_in_memory_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100(pos)\n        end := add(pos, 8)\n    }\n\n    function abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_nonPadded_inplace_fromStack(pos, 8)\n        store_literal_in_memory_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e(pos)\n        end := add(pos, 8)\n    }\n\n    // struct Witnet.Buffer -> struct Witnet.Buffer\n    function abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // data\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // cursor\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint32_to_t_uint32_library(memberValue0, add(pos, 0x20))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.CBOR -> struct Witnet.CBOR\n    function abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library(value, pos)  -> end  {\n        let tail := add(pos, 0xc0)\n\n        {\n            // buffer\n\n            let memberValue0 := mload(add(value, 0x00))\n\n            mstore(add(pos, 0x00), sub(tail, pos))\n            tail := abi_encode_t_struct$_Buffer_$4361_memory_ptr_to_t_struct$_Buffer_$4361_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        {\n            // initialByte\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // majorType\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // additionalInformation\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint8_to_t_uint8_library(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // len\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0x80))\n        }\n\n        {\n            // tag\n\n            let memberValue0 := mload(add(value, 0xa0))\n            abi_encode_t_uint64_to_t_uint64_library(memberValue0, add(pos, 0xa0))\n        }\n\n        end := tail\n    }\n\n    // struct Witnet.Result -> struct Witnet.Result\n    function abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library(value, pos)  -> end  {\n        let tail := add(pos, 0x40)\n\n        {\n            // success\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_bool_to_t_bool_library(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // value\n\n            let memberValue0 := mload(add(value, 0x20))\n\n            mstore(add(pos, 0x20), sub(tail, pos))\n            tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_library(memberValue0, tail)\n\n        }\n\n        end := tail\n    }\n\n    function abi_encode_t_uint32_to_t_uint32_library(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_fromStack_library(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_library(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8_library(value, pos) {\n        mstore(pos, cleanup_t_uint8(value))\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_stringliteral_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_stringliteral_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        pos := abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_stringliteral_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        pos := abi_encode_t_stringliteral_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_t_string_memory_ptr_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_stringliteral_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_t_string_memory_ptr_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_t_string_memory_ptr_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_stringliteral_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_stringliteral_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        pos := abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_t_string_memory_ptr_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_t_string_memory_ptr_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_t_string_memory_ptr_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_t_string_memory_ptr_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_stringliteral_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_stringliteral_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_stringliteral_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        pos := abi_encode_t_stringliteral_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_stringliteral_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_t_string_memory_ptr_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_t_string_memory_ptr_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_t_string_memory_ptr_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value2, value1, value0) -> end {\n\n        pos := abi_encode_t_stringliteral_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_stringliteral_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_stringliteral_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_t_string_memory_ptr_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_t_string_memory_ptr_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66__to_t_string_memory_ptr_t_string_memory_ptr_t_string_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_stringliteral_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        pos := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_stringliteral_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66_to_t_string_memory_ptr_nonPadded_inplace_fromStack( pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_t_array$_t_int128_$dyn_memory_ptr__to_t_array$_t_int128_$dyn_memory_ptr__fromStack_library_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_int128_$dyn_memory_ptr_to_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_int32_$dyn_memory_ptr__to_t_array$_t_int32_$dyn_memory_ptr__fromStack_library_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_int32_$dyn_memory_ptr_to_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_string_memory_ptr_$dyn_memory_ptr__to_t_array$_t_string_memory_ptr_$dyn_memory_ptr__fromStack_library_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_string_memory_ptr_$dyn_memory_ptr_to_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_array$_t_uint64_$dyn_memory_ptr__to_t_array$_t_uint64_$dyn_memory_ptr__fromStack_library_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_uint64_$dyn_memory_ptr_to_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_bool__to_t_bool__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_bool_to_t_bool_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_bytes32_to_t_bytes32_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_library_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_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_enum$_ErrorCodes_$4618__to_t_uint8__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_enum$_ErrorCodes_$4618_t_string_memory_ptr__to_t_uint8_t_string_memory_ptr__fromStack_library_reversed(headStart , value1, value0) -> tail {\n        tail := add(headStart, 64)\n\n        abi_encode_t_enum$_ErrorCodes_$4618_to_t_uint8_fromStack_library(value0,  add(headStart, 0))\n\n        mstore(add(headStart, 32), sub(tail, headStart))\n        tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack_library(value1,  tail)\n\n    }\n\n    function abi_encode_tuple_t_int128__to_t_int128__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int128_to_t_int128_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_int32__to_t_int32__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_int32_to_t_int32_fromStack_library(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_library_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_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e__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_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de__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_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340__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_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5__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_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1__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_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0__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_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395__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_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6__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_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8__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_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d__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_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207__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_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a__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_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_CBOR_$4356_memory_ptr__to_t_struct$_CBOR_$4356_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        mstore(add(headStart, 0), sub(tail, headStart))\n        tail := abi_encode_t_struct$_CBOR_$4356_memory_ptr_to_t_struct$_CBOR_$4356_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_Result_$4342_memory_ptr__to_t_struct$_Result_$4342_memory_ptr__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        mstore(add(headStart, 0), sub(tail, headStart))\n        tail := abi_encode_t_struct$_Result_$4342_memory_ptr_to_t_struct$_Result_$4342_memory_ptr_fromStack_library(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_uint64__to_t_uint64__fromStack_library_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint64_to_t_uint64_fromStack_library(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_int128_$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_array$_t_int32_$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_array$_t_string_memory_ptr_$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_array$_t_uint64_$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_allocation_size_t_string_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_int128_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_int32_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_dataslot_t_array$_t_uint64_$dyn_memory_ptr(ptr) -> data {\n        data := ptr\n\n        data := add(ptr, 0x20)\n\n    }\n\n    function array_length_t_array$_t_int128_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_int32_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_string_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n        length := mload(value)\n\n    }\n\n    function array_length_t_array$_t_uint64_$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_int128_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_int32_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_string_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_nextElement_t_array$_t_uint64_$dyn_memory_ptr(ptr) -> next {\n        next := add(ptr, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_int128_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_int32_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_string_memory_ptr_$dyn_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_array$_t_uint64_$dyn_memory_ptr_fromStack_library(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_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_bytes_memory_ptr_library(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 array_storeLengthForEncoding_t_string_memory_ptr_fromStack_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\n    }\n\n    function array_storeLengthForEncoding_t_string_memory_ptr_library(pos, length) -> updated_pos {\n        mstore(pos, length)\n        updated_pos := add(pos, 0x20)\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 checked_add_t_uint8(x, y) -> sum {\n        x := cleanup_t_uint8(x)\n        y := cleanup_t_uint8(y)\n\n        // overflow, if x > (maxValue - y)\n        if gt(x, sub(0xff, y)) { panic_error_0x11() }\n\n        sum := add(x, y)\n    }\n\n    function checked_div_t_uint64(x, y) -> r {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n        if iszero(y) { panic_error_0x12() }\n\n        r := div(x, y)\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_enum$_ErrorCodes_$4618(value) -> cleaned {\n        cleaned := value validator_assert_t_enum$_ErrorCodes_$4618(value)\n    }\n\n    function cleanup_t_int128(value) -> cleaned {\n        cleaned := signextend(15, value)\n    }\n\n    function cleanup_t_int32(value) -> cleaned {\n        cleaned := signextend(3, value)\n    }\n\n    function cleanup_t_uint32(value) -> cleaned {\n        cleaned := and(value, 0xffffffff)\n    }\n\n    function cleanup_t_uint64(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffff)\n    }\n\n    function cleanup_t_uint8(value) -> cleaned {\n        cleaned := and(value, 0xff)\n    }\n\n    function convert_t_enum$_ErrorCodes_$4618_to_t_uint8(value) -> converted {\n        converted := cleanup_t_enum$_ErrorCodes_$4618(value)\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 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 mod_t_uint64(x, y) -> r {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n        if iszero(y) { panic_error_0x12() }\n        r := mod(x, y)\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_0x21() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x21)\n        revert(0, 0x24)\n    }\n\n    function panic_error_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490() {\n        revert(0, 0)\n    }\n\n    function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_3538a459e4a0eb828f1aed5ebe5dc96fe59620a31d9b33e41259bb820cae769f() {\n        revert(0, 0)\n    }\n\n    function revert_error_5e8f644817bc4960744f35c15999b6eff64ae702f94b1c46297cfd4e1aec2421() {\n        revert(0, 0)\n    }\n\n    function revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function store_literal_in_memory_06fad0051889b339312d16eb4a22ce922cb939c7a74f3a087fb28315293ae2e1(memPtr) {\n\n        mstore(add(memPtr, 0), \" could not be retrieved. Failed \")\n\n        mstore(add(memPtr, 32), \"with HTTP error code: \")\n\n    }\n\n    function store_literal_in_memory_0fdce60631188ec72ee63fc1361d0a4c4be32af3243f9d750ff56d3026640c5d(memPtr) {\n\n        mstore(add(memPtr, 0), \" stage is not supported\")\n\n    }\n\n    function store_literal_in_memory_10326a398e4ebae30db45e432dffe0bcbf9bb42c1ddf0acdf95f81f6937c3e6e(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read b\")\n\n        mstore(add(memPtr, 32), \"ytes value from errored Witnet.R\")\n\n        mstore(add(memPtr, 64), \"esult\")\n\n    }\n\n    function store_literal_in_memory_1592131424a8311c1140099f1562782fc79cb4437b828b679e0e77389ade83e5(memPtr) {\n\n        mstore(add(memPtr, 0), \"Unknown error (0x\")\n\n        }\n\n        function store_literal_in_memory_1d02783bfdf9fcb10987fa30c69580dc05995a395206f98f8571e50bdc55f1de(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n            mstore(add(memPtr, 32), \"int128[]` value from errored Wit\")\n\n            mstore(add(memPtr, 64), \"net.Result\")\n\n        }\n\n        function store_literal_in_memory_20219570d77827fb39a2615f42463838b5337135103169e6edf382cc9747ecb0(memPtr) {\n\n            mstore(add(memPtr, 0), \"Underflow at operator code 0x\")\n\n        }\n\n        function store_literal_in_memory_228199271ce289649ae01771685d0d853e66e8def661ebe092180ffff30e3240(memPtr) {\n\n            mstore(add(memPtr, 0), \" stage\")\n\n        }\n\n        function store_literal_in_memory_35d560c02aa8345814ff1f3323ab22fdca5038d982e35a8bd24bf31def042340(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n            mstore(add(memPtr, 32), \"fixed16[]` value from errored Wi\")\n\n            mstore(add(memPtr, 64), \"tnet.Result\")\n\n        }\n\n        function store_literal_in_memory_38aad4b191165ea835c2dd674387b75fe0bd732e02a4f0a28df91297da890cb1(memPtr) {\n\n            mstore(add(memPtr, 0), \" was not a valid CBOR value\")\n\n        }\n\n        function store_literal_in_memory_3901bb2e94f0903cb8c3d04caa6989483e39249a328a7790ca4b4dfad12665a7(memPtr) {\n\n            mstore(add(memPtr, 0), \"Operator code 0x\")\n\n        }\n\n        function store_literal_in_memory_4ec62780e6e71ad9c36f6f1c8b5d02daa88788dbb872d9876464dbb3ea85fc66(memPtr) {\n\n            mstore(add(memPtr, 0), \" could not be retrieved because \")\n\n            mstore(add(memPtr, 32), \"of a timeout\")\n\n        }\n\n        function store_literal_in_memory_4ff103044b32139865c8582aa6a4cb8cfea297b0e275f15a2b83d02eb8c83ff5(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n            mstore(add(memPtr, 32), \"int128` value from errored Witne\")\n\n            mstore(add(memPtr, 64), \"t.Result\")\n\n        }\n\n        function store_literal_in_memory_576922de47c1df1bc0e8b07adab099debc58183313be535e248442e158f09d2b(memPtr) {\n\n            mstore(add(memPtr, 0), \" in script #\")\n\n        }\n\n        function store_literal_in_memory_59d76dc3b33357eda30db1508968fbb18f21b9cd2442f1559b20154ddaa4d7ed(memPtr) {\n\n        mstore(add(memPtr, 0), \")\")\n\n    }\n\n    function store_literal_in_memory_5afbd3336312b41fa5f0aba762fd16cfc8f77171ea0a11e245b84a6908cb181b(memPtr) {\n\n        mstore(add(memPtr, 0), \" from \")\n\n    }\n\n    function store_literal_in_memory_5bfa9355c289a68288e465573f0cee9515462e9a79ed698ecc1d95d0eccfb916(memPtr) {\n\n        mstore(add(memPtr, 0), \"Source script #\")\n\n    }\n\n    function store_literal_in_memory_5c8a9e5034d6996add1c3633267ae82cc51190f2746c4ebbc6652dbd2b8f82f1(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n        mstore(add(memPtr, 32), \"uint64` value from errored Witne\")\n\n        mstore(add(memPtr, 64), \"t.Result\")\n\n    }\n\n    function store_literal_in_memory_5e4efa8250584e86929b41788e358072bdafa0a97f8a75ace8696822f401f4b5(memPtr) {\n\n        mstore(add(memPtr, 0), \" found at call #\")\n\n    }\n\n    function store_literal_in_memory_645b5c892a1df9140a78ebb02f8cc9c52a58fd09049d30c9306d829f3e4067c0(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n        mstore(add(memPtr, 32), \"uint64[]` value from errored Wit\")\n\n        mstore(add(memPtr, 64), \"net.Result\")\n\n    }\n\n    function store_literal_in_memory_7cc2288f465823067474bbeb87210c75f7bfd4766f0c6b5247cfd60b08383395(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n        mstore(add(memPtr, 32), \"string[]` value from errored Wit\")\n\n        mstore(add(memPtr, 64), \"net.Result\")\n\n    }\n\n    function store_literal_in_memory_88bb78c033779307de44be2567efd46e965cf6e46a3adeb9f4ff105453daf69a(memPtr) {\n\n        mstore(add(memPtr, 0), \" stage contained too many calls \")\n\n        mstore(add(memPtr, 32), \"(\")\n\n        }\n\n        function store_literal_in_memory_8ef34c94c12bfb3b89b23a8cf5312739770812e6628f56af30b56f1ffca49ea6(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: tried to read b\")\n\n            mstore(add(memPtr, 32), \"ytes32 value from errored Witnet\")\n\n            mstore(add(memPtr, 64), \".Result\")\n\n        }\n\n        function store_literal_in_memory_9284e9e320638704d942d2f95e83ba0c405a6a96259c3d9b83ed3e7166e675f8(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n            mstore(add(memPtr, 32), \"string` value from errored Witne\")\n\n            mstore(add(memPtr, 64), \"t.Result\")\n\n        }\n\n        function store_literal_in_memory_974710c668dd6e16ebf5515f4f47405fcb81d0b23362b2ad9c0cf9345899315d(memPtr) {\n\n            mstore(add(memPtr, 0), \"The CBOR value in script #\")\n\n        }\n\n        function store_literal_in_memory_987c65b83200eb14cc0e666fee30940e97d5c2fdb5e2afde3f82dca6f8a3bcb5(memPtr) {\n\n            mstore(add(memPtr, 0), \"Division by zero at operator cod\")\n\n            mstore(add(memPtr, 32), \"e 0x\")\n\n        }\n\n        function store_literal_in_memory_992d311c2b79570206080f0d7329953f913948b02046ef1f45a3c3e0d8b8ee9d(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read e\")\n\n            mstore(add(memPtr, 32), \"rror code from successful Witnet\")\n\n            mstore(add(memPtr, 64), \".Result\")\n\n        }\n\n        function store_literal_in_memory_9f69785389796d4b79459ae31c417869f46a1322b1e3456a4a22df0663d28a58(memPtr) {\n\n            mstore(add(memPtr, 0), \"Overflow at operator code 0x\")\n\n        }\n\n        function store_literal_in_memory_9ff666b38f4f949d93ee79bab5b7529f286ad35ae4e512164a783a0808de8dc2(memPtr) {\n\n            mstore(add(memPtr, 0), \" was not an Array of calls\")\n\n        }\n\n        function store_literal_in_memory_b00a459d7874d8bc3d50440f99e23d9ac253a6ad184d53dfe2c9de75b7b30207(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n            mstore(add(memPtr, 32), \"bool` value from errored Witnet.\")\n\n            mstore(add(memPtr, 64), \"Result\")\n\n        }\n\n        function store_literal_in_memory_c8cb671b33240e09b97d3439dbe9ccd2970edc93a4c23a9327e4a03d0ff44594(memPtr) {\n\n            mstore(add(memPtr, 0), \" was not a valid Data Request\")\n\n        }\n\n        function store_literal_in_memory_cfa2b01b7f859ef10d698a8c97747b54ae5c2a99791045421f797714f2c56277(memPtr) {\n\n            mstore(add(memPtr, 0), \" from the \")\n\n        }\n\n        function store_literal_in_memory_d38a6c7b702dbeba4dc6ea7575dfd8e441cc0edf53099fa173ced98029f4fc5a(memPtr) {\n\n            mstore(add(memPtr, 0), \"WitnetParserLib: Tried to read `\")\n\n            mstore(add(memPtr, 32), \"fixed16` value from errored Witn\")\n\n            mstore(add(memPtr, 64), \"et.Result\")\n\n        }\n\n        function store_literal_in_memory_dbad668f9a07384d40f3edacb1152b2613ed53a278c32ba014d9d3a6d99980f2(memPtr) {\n\n            mstore(add(memPtr, 0), \"The request contained too many s\")\n\n            mstore(add(memPtr, 32), \"ources (\")\n\n            }\n\n            function store_literal_in_memory_e7c4a6c38904320dd9a75bb779cf633704c4654e0ab698509b157354859e4100(memPtr) {\n\n                mstore(add(memPtr, 0), \"Script #\")\n\n            }\n\n            function store_literal_in_memory_f165ec18714352e5091dd2c6c219155ecf112e2eb5b52f8ed5193724bc1b520e(memPtr) {\n\n                mstore(add(memPtr, 0), \"Source #\")\n\n            }\n\n            function validator_assert_t_enum$_ErrorCodes_$4618(value) {\n                if iszero(lt(value, 256)) { panic_error_0x21() }\n            }\n\n            function validator_revert_t_bool(value) {\n                if iszero(eq(value, cleanup_t_bool(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_int128(value) {\n                if iszero(eq(value, cleanup_t_int128(value))) { revert(0, 0) }\n            }\n\n            function validator_revert_t_int32(value) {\n                if iszero(eq(value, cleanup_t_int32(value))) { revert(0, 0) }\n            }\n\n            function validator_revert_t_uint32(value) {\n                if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n            }\n\n            function validator_revert_t_uint64(value) {\n                if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n            }\n\n            function validator_revert_t_uint8(value) {\n                if iszero(eq(value, cleanup_t_uint8(value))) { revert(0, 0) }\n            }\n\n        }\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{},"linkReferences":{"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol":{"WitnetDecoderLib":[{"length":20,"start":1295},{"length":20,"start":1518},{"length":20,"start":1803},{"length":20,"start":2026},{"length":20,"start":2263},{"length":20,"start":5085},{"length":20,"start":5323},{"length":20,"start":5541},{"length":20,"start":5759},{"length":20,"start":6360},{"length":20,"start":6582},{"length":20,"start":6818},{"length":20,"start":7041}]}},"object":"730000000000000000000000000000000000000000301460806040526004361061012b5760003560e01c8063a1d45d56116100b7578063d45d097d1161007b578063d45d097d146103d1578063d8868db614610401578063e99e47f314610431578063f417daf514610461578063fc853c37146104915761012b565b8063a1d45d56146102e1578063a2e8765514610311578063abf82f4c14610341578063c71db52114610371578063cb5371c0146103a15761012b565b80632d26b9e2116100fe5780632d26b9e2146101f05780636646c119146102205780638233f9b3146102505780638cc5eb5414610280578063a1b90891146102b15761012b565b80630879730d1461013057806308efc09714610160578063130283ee14610190578063147e5c8f146101c0575b600080fd5b61014a60048036038101906101459190612ccf565b6104c1565b6040516101579190613b74565b60405180910390f35b61017a60048036038101906101759190612ccf565b6105a1565b6040516101879190613b30565b60405180910390f35b6101aa60048036038101906101a59190612c3d565b610680565b6040516101b79190613e33565b60405180910390f35b6101da60048036038101906101d59190612ccf565b6106be565b6040516101e79190613b74565b60405180910390f35b61020a60048036038101906102059190612ccf565b61079d565b6040516102179190613b52565b60405180910390f35b61023a60048036038101906102359190612ccf565b61087c565b6040516102479190613b96565b60405180910390f35b61026a60048036038101906102659190612ccf565b61088a565b6040516102779190613e55565b60405180910390f35b61029a60048036038101906102959190612ccf565b610964565b6040516102a8929190613c09565b60405180910390f35b6102cb60048036038101906102c69190612ccf565b611390565b6040516102d89190613bcc565b60405180910390f35b6102fb60048036038101906102f69190612ccf565b61146f565b6040516103089190613b96565b60405180910390f35b61032b60048036038101906103269190612ccf565b61147e565b6040516103389190613bb1565b60405180910390f35b61035b60048036038101906103569190612ccf565b611558565b6040516103689190613b96565b60405180910390f35b61038b60048036038101906103869190612ccf565b611632565b6040516103989190613c39565b60405180910390f35b6103bb60048036038101906103b69190612d18565b61170c565b6040516103c89190613c6f565b60405180910390f35b6103eb60048036038101906103e69190612ccf565b61183c565b6040516103f89190613bee565b60405180910390f35b61041b60048036038101906104169190612ccf565b61188b565b6040516104289190613c54565b60405180910390f35b61044b60048036038101906104469190612b04565b611965565b6040516104589190613e33565b60405180910390f35b61047b60048036038101906104769190612ccf565b611a55565b6040516104889190613c6f565b60405180910390f35b6104ab60048036038101906104a69190612ccf565b611b34565b6040516104b89190613b0e565b60405180910390f35b6060816000015115610508576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ff90613db1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63f8a597d390916040518263ffffffff1660e01b81526004016105459190613e11565b60006040518083038186803b15801561055d57600080fd5b505af4158015610571573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061059a9190612a61565b9050919050565b606081600001516105e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105de90613cd1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63531f4ba790916040518263ffffffff1660e01b81526004016106249190613e11565b60006040518083038186803b15801561063c57600080fd5b505af4158015610650573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061067991906129cf565b9050919050565b61068861210c565b600060278360a0015167ffffffffffffffff16141590506040518060400160405280821515815260200184815250915050919050565b60608160000151610704576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106fb90613d31565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63f8a597d390916040518263ffffffff1660e01b81526004016107419190613e11565b60006040518083038186803b15801561075957600080fd5b505af415801561076d573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906107969190612a61565b9050919050565b606081600001516107e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107da90613d51565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63c5e88ff290916040518263ffffffff1660e01b81526004016108209190613e11565b60006040518083038186803b15801561083857600080fd5b505af415801561084c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906108759190612a18565b9050919050565b600081600001519050919050565b600081600001516108d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c790613d11565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__637a8acab190916040518263ffffffff1660e01b815260040161090d9190613e11565b60206040518083038186803b15801561092557600080fd5b505af4158015610939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061095d9190612d45565b9050919050565b600060606000610973846104c1565b90506000815114156109c15760006040518060400160405280601d81526020017f556e6b6e6f776e206572726f7220286e6f206572726f7220636f646529000000815250925092505061138b565b60006109e7826000815181106109da576109d9614320565b5b6020026020010151611c13565b90506060600160ff8111156109ff576109fe6142f1565b5b8260ff811115610a1257610a116142f1565b5b148015610a2157506002835110155b15610a7057610a4a83600181518110610a3d57610a3c614320565b5b6020026020010151611c39565b604051602001610a5a9190613892565b6040516020818303038152906040529050611381565b600260ff811115610a8457610a836142f1565b5b8260ff811115610a9757610a966142f1565b5b148015610aa657506002835110155b15610af557610acf83600181518110610ac257610ac1614320565b5b6020026020010151611c39565b604051602001610adf91906138bf565b6040516020818303038152906040529050611380565b600360ff811115610b0957610b086142f1565b5b8260ff811115610b1c57610b1b6142f1565b5b148015610b2b57506002835110155b15610b7a57610b5483600181518110610b4757610b46614320565b5b6020026020010151611c39565b604051602001610b6491906138ec565b604051602081830303815290604052905061137f565b601060ff811115610b8e57610b8d6142f1565b5b8260ff811115610ba157610ba06142f1565b5b148015610bb057506002835110155b15610bff57610bd983600181518110610bcc57610bcb614320565b5b6020026020010151611c39565b604051602001610be99190613a03565b604051602081830303815290604052905061137e565b601160ff811115610c1357610c126142f1565b5b8260ff811115610c2657610c256142f1565b5b148015610c3557506004835110155b15610cce57610c5e83600281518110610c5157610c50614320565b5b6020026020010151611c39565b610c8284600181518110610c7557610c74614320565b5b602002602001015161170c565b610ca685600381518110610c9957610c98614320565b5b6020026020010151611c39565b604051602001610cb893929190613a30565b604051602081830303815290604052905061137d565b602060ff811115610ce257610ce16142f1565b5b8260ff811115610cf557610cf46142f1565b5b148015610d0457506005835110155b15610dc257610d2d83600481518110610d2057610d1f614320565b5b6020026020010151611fad565b610d5184600381518110610d4457610d43614320565b5b6020026020010151611c39565b610d7585600281518110610d6857610d67614320565b5b6020026020010151611c39565b610d9986600181518110610d8c57610d8b614320565b5b602002602001015161170c565b604051602001610dac949392919061381d565b604051602081830303815290604052905061137c565b603060ff811115610dd657610dd56142f1565b5b8260ff811115610de957610de86142f1565b5b148015610df857506003835110155b15610ee657610e2183600181518110610e1457610e13614320565b5b6020026020010151611c39565b610e51606485600281518110610e3a57610e39614320565b5b6020026020010151610e4c9190614138565b611c39565b610e8d600a606487600281518110610e6c57610e6b614320565b5b6020026020010151610e7e9190614262565b610e889190614138565b611c39565b610ebd600a87600281518110610ea657610ea5614320565b5b6020026020010151610eb89190614262565b611c39565b604051602001610ed09493929190613a8d565b604051602081830303815290604052905061137b565b603160ff811115610efa57610ef96142f1565b5b8260ff811115610f0d57610f0c6142f1565b5b148015610f1c57506002835110155b15610f6b57610f4583600181518110610f3857610f37614320565b5b6020026020010151611c39565b604051602001610f559190613ae1565b604051602081830303815290604052905061137a565b604060ff811115610f7f57610f7e6142f1565b5b8260ff811115610f9257610f916142f1565b5b148015610fa157506005835110155b1561105f57610fca83600481518110610fbd57610fbc614320565b5b6020026020010151611fad565b610fee84600381518110610fe157610fe0614320565b5b6020026020010151611c39565b6110128560028151811061100557611004614320565b5b6020026020010151611c39565b6110368660018151811061102957611028614320565b5b602002602001015161170c565b60405160200161104994939291906137a8565b6040516020818303038152906040529050611379565b604160ff811115611073576110726142f1565b5b8260ff811115611086576110856142f1565b5b14801561109557506005835110155b15611153576110be836004815181106110b1576110b0614320565b5b6020026020010151611fad565b6110e2846003815181106110d5576110d4614320565b5b6020026020010151611c39565b611106856002815181106110f9576110f8614320565b5b6020026020010151611c39565b61112a8660018151811061111d5761111c614320565b5b602002602001015161170c565b60405160200161113d949392919061398e565b6040516020818303038152906040529050611378565b604260ff811115611167576111666142f1565b5b8260ff81111561117a576111796142f1565b5b14801561118957506005835110155b15611247576111b2836004815181106111a5576111a4614320565b5b6020026020010151611fad565b6111d6846003815181106111c9576111c8614320565b5b6020026020010151611c39565b6111fa856002815181106111ed576111ec614320565b5b6020026020010151611c39565b61121e8660018151811061121157611210614320565b5b602002602001015161170c565b6040516020016112319493929190613919565b6040516020818303038152906040529050611377565b60e060ff81111561125b5761125a6142f1565b5b8260ff81111561126e5761126d6142f1565b5b1415611294576040518060600160405280603f8152602001614e57603f91399050611376565b60e160ff8111156112a8576112a76142f1565b5b8260ff8111156112bb576112ba6142f1565b5b14156112e157604051806080016040528060478152602001614ed7604791399050611375565b60e260ff8111156112f5576112f46142f1565b5b8260ff811115611308576113076142f1565b5b141561132e57604051806080016040528060418152602001614e96604191399050611374565b6113528360008151811061134557611344614320565b5b6020026020010151611fad565b604051602001611362919061377b565b60405160208183030381529060405290505b5b5b5b5b5b5b5b5b5b5b5b5b5b8181945094505050505b915091565b606081600001516113d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113cd90613c91565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63bb6ef6cf90916040518263ffffffff1660e01b81526004016114139190613e11565b60006040518083038186803b15801561142b57600080fd5b505af415801561143f573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906114689190612b51565b9050919050565b60008160000151159050919050565b600081600001516114c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114bb90613d71565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__6308c05c3390916040518263ffffffff1660e01b81526004016115019190613e11565b60206040518083038186803b15801561151957600080fd5b505af415801561152d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115519190612ad7565b9050919050565b6000816000015161159e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161159590613dd1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__639eee60ca90916040518263ffffffff1660e01b81526004016115db9190613e11565b60206040518083038186803b1580156115f357600080fd5b505af4158015611607573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061162b9190612aaa565b9050919050565b60008160000151611678576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166f90613cf1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__6394863ea490916040518263ffffffff1660e01b81526004016116b59190613e11565b60206040518083038186803b1580156116cd57600080fd5b505af41580156116e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117059190612b9a565b9050919050565b606060008267ffffffffffffffff16141561175e576040518060400160405280600981526020017f72657472696576616c00000000000000000000000000000000000000000000008152509050611837565b60018267ffffffffffffffff1614156117ae576040518060400160405280600b81526020017f6167677265676174696f6e0000000000000000000000000000000000000000008152509050611837565b60028267ffffffffffffffff1614156117fe576040518060400160405280600581526020017f74616c6c790000000000000000000000000000000000000000000000000000008152509050611837565b6040518060400160405280600781526020017f756e6b6e6f776e0000000000000000000000000000000000000000000000000081525090505b919050565b600080611848836104c1565b905060008151141561185e576000915050611886565b6118828160008151811061187557611874614320565b5b6020026020010151611c13565b9150505b919050565b600081600001516118d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118c890613df1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__638138799a90916040518263ffffffff1660e01b815260040161190e9190613e11565b60206040518083038186803b15801561192657600080fd5b505af415801561193a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195e9190612bc7565b9050919050565b61196d61210c565b600083838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505073__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63dfca5d3490916040518263ffffffff1660e01b81526004016119ec9190613bcc565b60006040518083038186803b158015611a0457600080fd5b505af4158015611a18573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611a419190612c86565b9050611a4c81610680565b91505092915050565b60608160000151611a9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9290613d91565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__63e67c5bd190916040518263ffffffff1660e01b8152600401611ad89190613e11565b60006040518083038186803b158015611af057600080fd5b505af4158015611b04573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611b2d9190612bf4565b9050919050565b60608160000151611b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b7190613cb1565b60405180910390fd5b816020015173__$5e1c92a0c8bd25d9fa2d358c0bb6bbd582$__633380d81690916040518263ffffffff1660e01b8152600401611bb79190613e11565b60006040518083038186803b158015611bcf57600080fd5b505af4158015611be3573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611c0c9190612986565b9050919050565b60008167ffffffffffffffff1660ff811115611c3257611c316142f1565b5b9050919050565b6060600a8267ffffffffffffffff161015611cfc576000600167ffffffffffffffff811115611c6b57611c6a61434f565b5b6040519080825280601f01601f191660200182016040528015611c9d5781602001600182028036833780820191505090505b509050603083611cad9190614101565b60f81b81600081518110611cc457611cc3614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080915050611fa8565b60648267ffffffffffffffff161015611e28576000600267ffffffffffffffff811115611d2c57611d2b61434f565b5b6040519080825280601f01601f191660200182016040528015611d5e5781602001600182028036833780820191505090505b5090506030600a84611d709190614138565b611d7a9190614101565b60f81b81600081518110611d9157611d90614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506030600a84611dcf9190614262565b611dd99190614101565b60f81b81600181518110611df057611def614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080915050611fa8565b6000600367ffffffffffffffff811115611e4557611e4461434f565b5b6040519080825280601f01601f191660200182016040528015611e775781602001600182028036833780820191505090505b5090506030606484611e899190614138565b611e939190614101565b60f81b81600081518110611eaa57611ea9614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506030600a606485611eea9190614262565b611ef49190614138565b611efe9190614101565b60f81b81600181518110611f1557611f14614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506030600a84611f539190614262565b611f5d9190614101565b60f81b81600281518110611f7457611f73614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350809150505b919050565b60606000600267ffffffffffffffff811115611fcc57611fcb61434f565b5b6040519080825280601f01601f191660200182016040528015611ffe5781602001600182028036833780820191505090505b509050600060306010856120129190614138565b61201c9190614101565b90506000603060108661202f9190614262565b6120399190614101565b905060398260ff161115612057576007826120549190614101565b91505b60398160ff161115612073576007816120709190614101565b90505b8160f81b8360008151811061208b5761208a614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053508060f81b836001815181106120d2576120d1614320565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350829350505050919050565b604051806040016040528060001515815260200161212861212e565b81525090565b6040518060c00160405280612141612187565b8152602001600060ff168152602001600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b604051806040016040528060608152602001600063ffffffff1681525090565b60006121ba6121b584613e95565b613e70565b905080838252602082019050828560208602820111156121dd576121dc614392565b5b60005b8581101561220d57816121f388826125f4565b8452602084019350602083019250506001810190506121e0565b5050509392505050565b600061222a61222584613ec1565b613e70565b9050808382526020820190508285602086028201111561224d5761224c614392565b5b60005b8581101561227d57816122638882612609565b845260208401935060208301925050600181019050612250565b5050509392505050565b600061229a61229584613eed565b613e70565b905080838252602082019050828560208602820111156122bd576122bc614392565b5b60005b8581101561230b57815167ffffffffffffffff8111156122e3576122e2614383565b5b8086016122f0898261261e565b855260208501945060208401935050506001810190506122c0565b5050509392505050565b600061232861232384613f19565b613e70565b9050808382526020820190508285602086028201111561234b5761234a614392565b5b60005b8581101561237b57816123618882612947565b84526020840193506020830192505060018101905061234e565b5050509392505050565b600061239861239384613f45565b613e70565b9050828152602081018484840111156123b4576123b3614397565b5b6123bf8482856141ef565b509392505050565b60006123da6123d584613f45565b613e70565b9050828152602081018484840111156123f6576123f5614397565b5b6124018482856141fe565b509392505050565b600061241c61241784613f76565b613e70565b90508281526020810184848401111561243857612437614397565b5b6124438482856141fe565b509392505050565b600082601f8301126124605761245f614383565b5b81516124708482602086016121a7565b91505092915050565b600082601f83011261248e5761248d614383565b5b815161249e848260208601612217565b91505092915050565b600082601f8301126124bc576124bb614383565b5b81516124cc848260208601612287565b91505092915050565b600082601f8301126124ea576124e9614383565b5b81516124fa848260208601612315565b91505092915050565b60008135905061251281614db5565b92915050565b60008151905061252781614db5565b92915050565b60008151905061253c81614dcc565b92915050565b60008083601f84011261255857612557614383565b5b8235905067ffffffffffffffff8111156125755761257461437e565b5b60208301915083600182028301111561259157612590614392565b5b9250929050565b600082601f8301126125ad576125ac614383565b5b81356125bd848260208601612385565b91505092915050565b600082601f8301126125db576125da614383565b5b81516125eb8482602086016123c7565b91505092915050565b60008151905061260381614de3565b92915050565b60008151905061261881614dfa565b92915050565b600082601f83011261263357612632614383565b5b8151612643848260208601612409565b91505092915050565b60006040828403121561266257612661614388565b5b61266c6040613e70565b9050600082013567ffffffffffffffff81111561268c5761268b61438d565b5b61269884828501612598565b60008301525060206126ac84828501612908565b60208301525092915050565b6000604082840312156126ce576126cd614388565b5b6126d86040613e70565b9050600082015167ffffffffffffffff8111156126f8576126f761438d565b5b612704848285016125c6565b60008301525060206127188482850161291d565b60208301525092915050565b600060c0828403121561273a57612739614388565b5b61274460c0613e70565b9050600082013567ffffffffffffffff8111156127645761276361438d565b5b6127708482850161264c565b60008301525060206127848482850161295c565b60208301525060406127988482850161295c565b60408301525060606127ac8482850161295c565b60608301525060806127c084828501612932565b60808301525060a06127d484828501612932565b60a08301525092915050565b600060c082840312156127f6576127f5614388565b5b61280060c0613e70565b9050600082015167ffffffffffffffff8111156128205761281f61438d565b5b61282c848285016126b8565b600083015250602061284084828501612971565b602083015250604061285484828501612971565b604083015250606061286884828501612971565b606083015250608061287c84828501612947565b60808301525060a061289084828501612947565b60a08301525092915050565b6000604082840312156128b2576128b1614388565b5b6128bc6040613e70565b905060006128cc84828501612503565b600083015250602082013567ffffffffffffffff8111156128f0576128ef61438d565b5b6128fc84828501612724565b60208301525092915050565b60008135905061291781614e11565b92915050565b60008151905061292c81614e11565b92915050565b60008135905061294181614e28565b92915050565b60008151905061295681614e28565b92915050565b60008135905061296b81614e3f565b92915050565b60008151905061298081614e3f565b92915050565b60006020828403121561299c5761299b6143a1565b5b600082015167ffffffffffffffff8111156129ba576129b961439c565b5b6129c68482850161244b565b91505092915050565b6000602082840312156129e5576129e46143a1565b5b600082015167ffffffffffffffff811115612a0357612a0261439c565b5b612a0f84828501612479565b91505092915050565b600060208284031215612a2e57612a2d6143a1565b5b600082015167ffffffffffffffff811115612a4c57612a4b61439c565b5b612a58848285016124a7565b91505092915050565b600060208284031215612a7757612a766143a1565b5b600082015167ffffffffffffffff811115612a9557612a9461439c565b5b612aa1848285016124d5565b91505092915050565b600060208284031215612ac057612abf6143a1565b5b6000612ace84828501612518565b91505092915050565b600060208284031215612aed57612aec6143a1565b5b6000612afb8482850161252d565b91505092915050565b60008060208385031215612b1b57612b1a6143a1565b5b600083013567ffffffffffffffff811115612b3957612b3861439c565b5b612b4585828601612542565b92509250509250929050565b600060208284031215612b6757612b666143a1565b5b600082015167ffffffffffffffff811115612b8557612b8461439c565b5b612b91848285016125c6565b91505092915050565b600060208284031215612bb057612baf6143a1565b5b6000612bbe848285016125f4565b91505092915050565b600060208284031215612bdd57612bdc6143a1565b5b6000612beb84828501612609565b91505092915050565b600060208284031215612c0a57612c096143a1565b5b600082015167ffffffffffffffff811115612c2857612c2761439c565b5b612c348482850161261e565b91505092915050565b600060208284031215612c5357612c526143a1565b5b600082013567ffffffffffffffff811115612c7157612c7061439c565b5b612c7d84828501612724565b91505092915050565b600060208284031215612c9c57612c9b6143a1565b5b600082015167ffffffffffffffff811115612cba57612cb961439c565b5b612cc6848285016127e0565b91505092915050565b600060208284031215612ce557612ce46143a1565b5b600082013567ffffffffffffffff811115612d0357612d0261439c565b5b612d0f8482850161289c565b91505092915050565b600060208284031215612d2e57612d2d6143a1565b5b6000612d3c84828501612932565b91505092915050565b600060208284031215612d5b57612d5a6143a1565b5b6000612d6984828501612947565b91505092915050565b6000612d7e838361301a565b60208301905092915050565b6000612d968383613038565b60208301905092915050565b6000612dae8383613080565b905092915050565b6000612dc2838361375d565b60208301905092915050565b6000612dd982613fe7565b612de3818561405d565b9350612dee83613fa7565b8060005b83811015612e1f578151612e068882612d72565b9750612e1183614029565b925050600181019050612df2565b5085935050505092915050565b6000612e3782613ff2565b612e41818561406e565b9350612e4c83613fb7565b8060005b83811015612e7d578151612e648882612d8a565b9750612e6f83614036565b925050600181019050612e50565b5085935050505092915050565b6000612e9582613ffd565b612e9f818561407f565b935083602082028501612eb185613fc7565b8060005b85811015612eed5784840389528151612ece8582612da2565b9450612ed983614043565b925060208a01995050600181019050612eb5565b50829750879550505050505092915050565b6000612f0a82614008565b612f148185614090565b9350612f1f83613fd7565b8060005b83811015612f50578151612f378882612db6565b9750612f4283614050565b925050600181019050612f23565b5085935050505092915050565b612f6681614169565b82525050565b612f7581614169565b82525050565b612f8481614175565b82525050565b6000612f9582614013565b612f9f81856140a1565b9350612faf8185602086016141fe565b612fb8816143a6565b840191505092915050565b6000612fce82614013565b612fd881856140b2565b9350612fe88185602086016141fe565b612ff1816143a6565b840191505092915050565b613005816141dd565b82525050565b61301481614192565b82525050565b61302381614192565b82525050565b6130328161419f565b82525050565b6130418161419f565b82525050565b60006130528261401e565b61305c81856140d4565b935061306c8185602086016141fe565b613075816143a6565b840191505092915050565b600061308b8261401e565b61309581856140e5565b93506130a58185602086016141fe565b6130ae816143a6565b840191505092915050565b60006130c48261401e565b6130ce81856140f6565b93506130de8185602086016141fe565b80840191505092915050565b60006130f76036836140f6565b9150613102826143b7565b603682019050919050565b600061311a6017836140f6565b915061312582614406565b601782019050919050565b600061313d6045836140c3565b91506131488261442f565b606082019050919050565b60006131606011836140f6565b915061316b826144a4565b601182019050919050565b6000613183604a836140c3565b915061318e826144cd565b606082019050919050565b60006131a6601d836140f6565b91506131b182614542565b601d82019050919050565b60006131c96006836140f6565b91506131d48261456b565b600682019050919050565b60006131ec604b836140c3565b91506131f782614594565b606082019050919050565b600061320f601b836140f6565b915061321a82614609565b601b82019050919050565b60006132326010836140f6565b915061323d82614632565b601082019050919050565b6000613255602c836140f6565b91506132608261465b565b602c82019050919050565b60006132786048836140c3565b9150613283826146aa565b606082019050919050565b600061329b600c836140f6565b91506132a68261471f565b600c82019050919050565b60006132be6001836140f6565b91506132c982614748565b600182019050919050565b60006132e16006836140f6565b91506132ec82614771565b600682019050919050565b6000613304600f836140f6565b915061330f8261479a565b600f82019050919050565b60006133276048836140c3565b9150613332826147c3565b606082019050919050565b600061334a6010836140f6565b915061335582614838565b601082019050919050565b600061336d604a836140c3565b915061337882614861565b606082019050919050565b6000613390604a836140c3565b915061339b826148d6565b606082019050919050565b60006133b36021836140f6565b91506133be8261494b565b602182019050919050565b60006133d66047836140c3565b91506133e18261499a565b606082019050919050565b60006133f96048836140c3565b915061340482614a0f565b606082019050919050565b600061341c601a836140f6565b915061342782614a84565b601a82019050919050565b600061343f6024836140f6565b915061344a82614aad565b602482019050919050565b60006134626047836140c3565b915061346d82614afc565b606082019050919050565b6000613485601c836140f6565b915061349082614b71565b601c82019050919050565b60006134a8601a836140f6565b91506134b382614b9a565b601a82019050919050565b60006134cb6046836140c3565b91506134d682614bc3565b606082019050919050565b60006134ee601d836140f6565b91506134f982614c38565b601d82019050919050565b6000613511600a836140f6565b915061351c82614c61565b600a82019050919050565b60006135346049836140c3565b915061353f82614c8a565b606082019050919050565b60006135576028836140f6565b915061356282614cff565b602882019050919050565b600061357a6008836140f6565b915061358582614d4e565b600882019050919050565b600061359d6008836140f6565b91506135a882614d77565b600882019050919050565b600060408301600083015184820360008601526135d08282612fc3565b91505060208301516135e5602086018261373f565b508091505092915050565b600060c083016000830151848203600086015261360d82826135b3565b9150506020830151613622602086018261376c565b506040830151613635604086018261376c565b506060830151613648606086018261376c565b50608083015161365b608086018261375d565b5060a083015161366e60a086018261375d565b508091505092915050565b600060c083016000830151848203600086015261369682826135b3565b91505060208301516136ab602086018261376c565b5060408301516136be604086018261376c565b5060608301516136d1606086018261376c565b5060808301516136e4608086018261375d565b5060a08301516136f760a086018261375d565b508091505092915050565b600060408301600083015161371a6000860182612f6c565b50602083015184820360208601526137328282613679565b9150508091505092915050565b613748816141ac565b82525050565b613757816141bc565b82525050565b613766816141bc565b82525050565b613775816141d0565b82525050565b600061378682613153565b915061379282846130b9565b915061379d826132b1565b915081905092915050565b60006137b382613199565b91506137bf82876130b9565b91506137ca8261333d565b91506137d682866130b9565b91506137e18261328e565b91506137ed82856130b9565b91506137f8826132d4565b915061380482846130b9565b915061380f826131bc565b915081905095945050505050565b600061382882613225565b915061383482876130b9565b915061383f8261333d565b915061384b82866130b9565b91506138568261328e565b915061386282856130b9565b915061386d826132d4565b915061387982846130b9565b91506138848261310d565b915081905095945050505050565b600061389d826132f7565b91506138a982846130b9565b91506138b482613202565b915081905092915050565b60006138ca8261340f565b91506138d682846130b9565b91506138e18261349b565b915081905092915050565b60006138f78261340f565b915061390382846130b9565b915061390e826134e1565b915081905092915050565b600061392482613432565b915061393082876130b9565b915061393b8261333d565b915061394782866130b9565b91506139528261328e565b915061395e82856130b9565b9150613969826132d4565b915061397582846130b9565b9150613980826131bc565b915081905095945050505050565b600061399982613478565b91506139a582876130b9565b91506139b08261333d565b91506139bc82866130b9565b91506139c78261328e565b91506139d382856130b9565b91506139de826132d4565b91506139ea82846130b9565b91506139f5826131bc565b915081905095945050505050565b6000613a0e8261354a565b9150613a1a82846130b9565b9150613a25826132b1565b915081905092915050565b6000613a3b8261356d565b9150613a4782866130b9565b9150613a5282613504565b9150613a5e82856130b9565b9150613a69826133a6565b9150613a7582846130b9565b9150613a80826132b1565b9150819050949350505050565b6000613a9882613590565b9150613aa482876130b9565b9150613aaf826130ea565b9150613abb82866130b9565b9150613ac782856130b9565b9150613ad382846130b9565b915081905095945050505050565b6000613aec82613590565b9150613af882846130b9565b9150613b0382613248565b915081905092915050565b60006020820190508181036000830152613b288184612dce565b905092915050565b60006020820190508181036000830152613b4a8184612e2c565b905092915050565b60006020820190508181036000830152613b6c8184612e8a565b905092915050565b60006020820190508181036000830152613b8e8184612eff565b905092915050565b6000602082019050613bab6000830184612f5d565b92915050565b6000602082019050613bc66000830184612f7b565b92915050565b60006020820190508181036000830152613be68184612f8a565b905092915050565b6000602082019050613c036000830184612ffc565b92915050565b6000604082019050613c1e6000830185612ffc565b8181036020830152613c308184613047565b90509392505050565b6000602082019050613c4e600083018461300b565b92915050565b6000602082019050613c696000830184613029565b92915050565b60006020820190508181036000830152613c898184613047565b905092915050565b60006020820190508181036000830152613caa81613130565b9050919050565b60006020820190508181036000830152613cca81613176565b9050919050565b60006020820190508181036000830152613cea816131df565b9050919050565b60006020820190508181036000830152613d0a8161326b565b9050919050565b60006020820190508181036000830152613d2a8161331a565b9050919050565b60006020820190508181036000830152613d4a81613360565b9050919050565b60006020820190508181036000830152613d6a81613383565b9050919050565b60006020820190508181036000830152613d8a816133c9565b9050919050565b60006020820190508181036000830152613daa816133ec565b9050919050565b60006020820190508181036000830152613dca81613455565b9050919050565b60006020820190508181036000830152613dea816134be565b9050919050565b60006020820190508181036000830152613e0a81613527565b9050919050565b60006020820190508181036000830152613e2b81846135f0565b905092915050565b60006020820190508181036000830152613e4d8184613702565b905092915050565b6000602082019050613e6a600083018461374e565b92915050565b6000613e7a613e8b565b9050613e868282614231565b919050565b6000604051905090565b600067ffffffffffffffff821115613eb057613eaf61434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613edc57613edb61434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613f0857613f0761434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613f3457613f3361434f565b5b602082029050602081019050919050565b600067ffffffffffffffff821115613f6057613f5f61434f565b5b613f69826143a6565b9050602081019050919050565b600067ffffffffffffffff821115613f9157613f9061434f565b5b613f9a826143a6565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b600061410c826141d0565b9150614117836141d0565b92508260ff0382111561412d5761412c614293565b5b828201905092915050565b6000614143826141bc565b915061414e836141bc565b92508261415e5761415d6142c2565b5b828204905092915050565b60008115159050919050565b6000819050919050565b600081905061418d82614da0565b919050565b600081600f0b9050919050565b60008160030b9050919050565b600063ffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b60006141e88261417f565b9050919050565b82818337600083830152505050565b60005b8381101561421c578082015181840152602081019050614201565b8381111561422b576000848401525b50505050565b61423a826143a6565b810181811067ffffffffffffffff821117156142595761425861434f565b5b80604052505050565b600061426d826141bc565b9150614278836141bc565b925082614288576142876142c2565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f20636f756c64206e6f74206265207265747269657665642e204661696c65642060008201527f776974682048545450206572726f7220636f64653a2000000000000000000000602082015250565b7f207374616765206973206e6f7420737570706f72746564000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206260008201527f797465732076616c75652066726f6d206572726f726564205769746e65742e5260208201527f6573756c74000000000000000000000000000000000000000000000000000000604082015250565b7f556e6b6e6f776e206572726f7220283078000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f696e743132385b5d602076616c75652066726f6d206572726f7265642057697460208201527f6e65742e526573756c7400000000000000000000000000000000000000000000604082015250565b7f556e646572666c6f77206174206f70657261746f7220636f6465203078000000600082015250565b7f2073746167650000000000000000000000000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f666978656431365b5d602076616c75652066726f6d206572726f72656420576960208201527f746e65742e526573756c74000000000000000000000000000000000000000000604082015250565b7f20776173206e6f7420612076616c69642043424f522076616c75650000000000600082015250565b7f4f70657261746f7220636f646520307800000000000000000000000000000000600082015250565b7f20636f756c64206e6f742062652072657472696576656420626563617573652060008201527f6f6620612074696d656f75740000000000000000000000000000000000000000602082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f696e74313238602076616c75652066726f6d206572726f726564205769746e6560208201527f742e526573756c74000000000000000000000000000000000000000000000000604082015250565b7f20696e2073637269707420230000000000000000000000000000000000000000600082015250565b7f2900000000000000000000000000000000000000000000000000000000000000600082015250565b7f2066726f6d200000000000000000000000000000000000000000000000000000600082015250565b7f536f757263652073637269707420230000000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f75696e743634602076616c75652066726f6d206572726f726564205769746e6560208201527f742e526573756c74000000000000000000000000000000000000000000000000604082015250565b7f20666f756e642061742063616c6c202300000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f75696e7436345b5d602076616c75652066726f6d206572726f7265642057697460208201527f6e65742e526573756c7400000000000000000000000000000000000000000000604082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f737472696e675b5d602076616c75652066726f6d206572726f7265642057697460208201527f6e65742e526573756c7400000000000000000000000000000000000000000000604082015250565b7f20737461676520636f6e7461696e656420746f6f206d616e792063616c6c732060008201527f2800000000000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e65745061727365724c69623a20747269656420746f2072656164206260008201527f7974657333322076616c75652066726f6d206572726f726564205769746e657460208201527f2e526573756c7400000000000000000000000000000000000000000000000000604082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f737472696e67602076616c75652066726f6d206572726f726564205769746e6560208201527f742e526573756c74000000000000000000000000000000000000000000000000604082015250565b7f5468652043424f522076616c756520696e207363726970742023000000000000600082015250565b7f4469766973696f6e206279207a65726f206174206f70657261746f7220636f6460008201527f6520307800000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206560008201527f72726f7220636f64652066726f6d207375636365737366756c205769746e657460208201527f2e526573756c7400000000000000000000000000000000000000000000000000604082015250565b7f4f766572666c6f77206174206f70657261746f7220636f646520307800000000600082015250565b7f20776173206e6f7420616e204172726179206f662063616c6c73000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f626f6f6c602076616c75652066726f6d206572726f726564205769746e65742e60208201527f526573756c740000000000000000000000000000000000000000000000000000604082015250565b7f20776173206e6f7420612076616c696420446174612052657175657374000000600082015250565b7f2066726f6d207468652000000000000000000000000000000000000000000000600082015250565b7f5769746e65745061727365724c69623a20547269656420746f2072656164206060008201527f66697865643136602076616c75652066726f6d206572726f726564205769746e60208201527f65742e526573756c740000000000000000000000000000000000000000000000604082015250565b7f546865207265717565737420636f6e7461696e656420746f6f206d616e79207360008201527f6f75726365732028000000000000000000000000000000000000000000000000602082015250565b7f5363726970742023000000000000000000000000000000000000000000000000600082015250565b7f536f757263652023000000000000000000000000000000000000000000000000600082015250565b6101008110614db257614db16142f1565b5b50565b614dbe81614169565b8114614dc957600080fd5b50565b614dd581614175565b8114614de057600080fd5b50565b614dec81614192565b8114614df757600080fd5b50565b614e038161419f565b8114614e0e57600080fd5b50565b614e1a816141ac565b8114614e2557600080fd5b50565b614e31816141bc565b8114614e3c57600080fd5b50565b614e48816141d0565b8114614e5357600080fd5b5056fe54686520737472756374757265206f6620746865207265717565737420697320696e76616c696420616e642069742063616e6e6f7420626520706172736564546865207265717565737420726573756c74206c656e677468206578636565647320612062726964676520636f6e747261637420646566696e6564206c696d6974546865207265717565737420686173206265656e2072656a65637465642062792074686520627269646765206e6f64652064756520746f20706f6f7220696e63656e7469766573a26469706673582212207c84347b582e34d3c229ca790843f11ad8ed7d0539a9ec821d76a66dc1e0331064736f6c63430008070033","opcodes":"PUSH20 0x0 ADDRESS EQ PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x12B JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0xA1D45D56 GT PUSH2 0xB7 JUMPI DUP1 PUSH4 0xD45D097D GT PUSH2 0x7B JUMPI DUP1 PUSH4 0xD45D097D EQ PUSH2 0x3D1 JUMPI DUP1 PUSH4 0xD8868DB6 EQ PUSH2 0x401 JUMPI DUP1 PUSH4 0xE99E47F3 EQ PUSH2 0x431 JUMPI DUP1 PUSH4 0xF417DAF5 EQ PUSH2 0x461 JUMPI DUP1 PUSH4 0xFC853C37 EQ PUSH2 0x491 JUMPI PUSH2 0x12B JUMP JUMPDEST DUP1 PUSH4 0xA1D45D56 EQ PUSH2 0x2E1 JUMPI DUP1 PUSH4 0xA2E87655 EQ PUSH2 0x311 JUMPI DUP1 PUSH4 0xABF82F4C EQ PUSH2 0x341 JUMPI DUP1 PUSH4 0xC71DB521 EQ PUSH2 0x371 JUMPI DUP1 PUSH4 0xCB5371C0 EQ PUSH2 0x3A1 JUMPI PUSH2 0x12B JUMP JUMPDEST DUP1 PUSH4 0x2D26B9E2 GT PUSH2 0xFE JUMPI DUP1 PUSH4 0x2D26B9E2 EQ PUSH2 0x1F0 JUMPI DUP1 PUSH4 0x6646C119 EQ PUSH2 0x220 JUMPI DUP1 PUSH4 0x8233F9B3 EQ PUSH2 0x250 JUMPI DUP1 PUSH4 0x8CC5EB54 EQ PUSH2 0x280 JUMPI DUP1 PUSH4 0xA1B90891 EQ PUSH2 0x2B1 JUMPI PUSH2 0x12B JUMP JUMPDEST DUP1 PUSH4 0x879730D EQ PUSH2 0x130 JUMPI DUP1 PUSH4 0x8EFC097 EQ PUSH2 0x160 JUMPI DUP1 PUSH4 0x130283EE EQ PUSH2 0x190 JUMPI DUP1 PUSH4 0x147E5C8F EQ PUSH2 0x1C0 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x14A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x145 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x4C1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x157 SWAP2 SWAP1 PUSH2 0x3B74 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x175 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x187 SWAP2 SWAP1 PUSH2 0x3B30 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1A5 SWAP2 SWAP1 PUSH2 0x2C3D JUMP JUMPDEST PUSH2 0x680 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1B7 SWAP2 SWAP1 PUSH2 0x3E33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1DA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1D5 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x6BE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E7 SWAP2 SWAP1 PUSH2 0x3B74 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x205 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x79D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x217 SWAP2 SWAP1 PUSH2 0x3B52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x235 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x87C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x247 SWAP2 SWAP1 PUSH2 0x3B96 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x26A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x265 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x88A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x277 SWAP2 SWAP1 PUSH2 0x3E55 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x29A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x295 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x964 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2A8 SWAP3 SWAP2 SWAP1 PUSH2 0x3C09 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2CB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2C6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1390 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2D8 SWAP2 SWAP1 PUSH2 0x3BCC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2FB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x146F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x308 SWAP2 SWAP1 PUSH2 0x3B96 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x32B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x326 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x147E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x338 SWAP2 SWAP1 PUSH2 0x3BB1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x35B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x356 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1558 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x368 SWAP2 SWAP1 PUSH2 0x3B96 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 0x2CCF JUMP JUMPDEST PUSH2 0x1632 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x398 SWAP2 SWAP1 PUSH2 0x3C39 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3BB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B6 SWAP2 SWAP1 PUSH2 0x2D18 JUMP JUMPDEST PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3C8 SWAP2 SWAP1 PUSH2 0x3C6F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x183C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3F8 SWAP2 SWAP1 PUSH2 0x3BEE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x416 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x188B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x428 SWAP2 SWAP1 PUSH2 0x3C54 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x44B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x446 SWAP2 SWAP1 PUSH2 0x2B04 JUMP JUMPDEST PUSH2 0x1965 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x458 SWAP2 SWAP1 PUSH2 0x3E33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x47B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x476 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1A55 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x488 SWAP2 SWAP1 PUSH2 0x3C6F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4AB PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4A6 SWAP2 SWAP1 PUSH2 0x2CCF JUMP JUMPDEST PUSH2 0x1B34 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4B8 SWAP2 SWAP1 PUSH2 0x3B0E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD ISZERO PUSH2 0x508 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x4FF SWAP1 PUSH2 0x3DB1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xF8A597D3 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x545 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x55D JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x571 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 0x59A SWAP2 SWAP1 PUSH2 0x2A61 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x5E7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5DE SWAP1 PUSH2 0x3CD1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x531F4BA7 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x624 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x63C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x650 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 0x679 SWAP2 SWAP1 PUSH2 0x29CF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x688 PUSH2 0x210C JUMP JUMPDEST PUSH1 0x0 PUSH1 0x27 DUP4 PUSH1 0xA0 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 DUP3 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP5 DUP2 MSTORE POP SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x704 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6FB SWAP1 PUSH2 0x3D31 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xF8A597D3 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x741 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x759 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x76D 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 0x796 SWAP2 SWAP1 PUSH2 0x2A61 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x7E3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7DA SWAP1 PUSH2 0x3D51 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xC5E88FF2 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x820 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x838 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x84C 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 0x875 SWAP2 SWAP1 PUSH2 0x2A18 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x8D0 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8C7 SWAP1 PUSH2 0x3D11 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x7A8ACAB1 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x90D SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x925 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x939 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 0x95D SWAP2 SWAP1 PUSH2 0x2D45 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x60 PUSH1 0x0 PUSH2 0x973 DUP5 PUSH2 0x4C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD EQ ISZERO PUSH2 0x9C1 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x1D DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x556E6B6E6F776E206572726F7220286E6F206572726F7220636F646529000000 DUP2 MSTORE POP SWAP3 POP SWAP3 POP POP PUSH2 0x138B JUMP JUMPDEST PUSH1 0x0 PUSH2 0x9E7 DUP3 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x9DA JUMPI PUSH2 0x9D9 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C13 JUMP JUMPDEST SWAP1 POP PUSH1 0x60 PUSH1 0x1 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x9FF JUMPI PUSH2 0x9FE PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xA12 JUMPI PUSH2 0xA11 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xA21 JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xA70 JUMPI PUSH2 0xA4A DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xA3D JUMPI PUSH2 0xA3C PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xA5A SWAP2 SWAP1 PUSH2 0x3892 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1381 JUMP JUMPDEST PUSH1 0x2 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xA84 JUMPI PUSH2 0xA83 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xA97 JUMPI PUSH2 0xA96 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xAA6 JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xAF5 JUMPI PUSH2 0xACF DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xAC2 JUMPI PUSH2 0xAC1 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xADF SWAP2 SWAP1 PUSH2 0x38BF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1380 JUMP JUMPDEST PUSH1 0x3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xB09 JUMPI PUSH2 0xB08 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xB1C JUMPI PUSH2 0xB1B PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xB2B JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xB7A JUMPI PUSH2 0xB54 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xB47 JUMPI PUSH2 0xB46 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB64 SWAP2 SWAP1 PUSH2 0x38EC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137F JUMP JUMPDEST PUSH1 0x10 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xB8E JUMPI PUSH2 0xB8D PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xBA1 JUMPI PUSH2 0xBA0 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xBB0 JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xBFF JUMPI PUSH2 0xBD9 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xBCC JUMPI PUSH2 0xBCB PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xBE9 SWAP2 SWAP1 PUSH2 0x3A03 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137E JUMP JUMPDEST PUSH1 0x11 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xC13 JUMPI PUSH2 0xC12 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xC26 JUMPI PUSH2 0xC25 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xC35 JUMPI POP PUSH1 0x4 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xCCE JUMPI PUSH2 0xC5E DUP4 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xC51 JUMPI PUSH2 0xC50 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xC82 DUP5 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xC75 JUMPI PUSH2 0xC74 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH2 0xCA6 DUP6 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0xC99 JUMPI PUSH2 0xC98 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xCB8 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3A30 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137D JUMP JUMPDEST PUSH1 0x20 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xCE2 JUMPI PUSH2 0xCE1 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xCF5 JUMPI PUSH2 0xCF4 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xD04 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xDC2 JUMPI PUSH2 0xD2D DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0xD20 JUMPI PUSH2 0xD1F PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0xD51 DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0xD44 JUMPI PUSH2 0xD43 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xD75 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xD68 JUMPI PUSH2 0xD67 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xD99 DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xD8C JUMPI PUSH2 0xD8B PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xDAC SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x381D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137C JUMP JUMPDEST PUSH1 0x30 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xDD6 JUMPI PUSH2 0xDD5 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xDE9 JUMPI PUSH2 0xDE8 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xDF8 JUMPI POP PUSH1 0x3 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xEE6 JUMPI PUSH2 0xE21 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xE14 JUMPI PUSH2 0xE13 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xE51 PUSH1 0x64 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xE3A JUMPI PUSH2 0xE39 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0xE4C SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xE8D PUSH1 0xA PUSH1 0x64 DUP8 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xE6C JUMPI PUSH2 0xE6B PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0xE7E SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0xE88 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0xEBD PUSH1 0xA DUP8 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0xEA6 JUMPI PUSH2 0xEA5 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0xEB8 SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xED0 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3A8D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137B JUMP JUMPDEST PUSH1 0x31 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xEFA JUMPI PUSH2 0xEF9 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xF0D JUMPI PUSH2 0xF0C PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xF1C JUMPI POP PUSH1 0x2 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0xF6B JUMPI PUSH2 0xF45 DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0xF38 JUMPI PUSH2 0xF37 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xF55 SWAP2 SWAP1 PUSH2 0x3AE1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x137A JUMP JUMPDEST PUSH1 0x40 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xF7F JUMPI PUSH2 0xF7E PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0xF92 JUMPI PUSH2 0xF91 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0xFA1 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0x105F JUMPI PUSH2 0xFCA DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0xFBD JUMPI PUSH2 0xFBC PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0xFEE DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0xFE1 JUMPI PUSH2 0xFE0 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x1012 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x1005 JUMPI PUSH2 0x1004 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x1036 DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1029 JUMPI PUSH2 0x1028 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1049 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x37A8 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1379 JUMP JUMPDEST PUSH1 0x41 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1073 JUMPI PUSH2 0x1072 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1086 JUMPI PUSH2 0x1085 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0x1095 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0x1153 JUMPI PUSH2 0x10BE DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0x10B1 JUMPI PUSH2 0x10B0 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0x10E2 DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0x10D5 JUMPI PUSH2 0x10D4 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x1106 DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x10F9 JUMPI PUSH2 0x10F8 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x112A DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x111D JUMPI PUSH2 0x111C PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x113D SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x398E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1378 JUMP JUMPDEST PUSH1 0x42 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1167 JUMPI PUSH2 0x1166 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x117A JUMPI PUSH2 0x1179 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ DUP1 ISZERO PUSH2 0x1189 JUMPI POP PUSH1 0x5 DUP4 MLOAD LT ISZERO JUMPDEST ISZERO PUSH2 0x1247 JUMPI PUSH2 0x11B2 DUP4 PUSH1 0x4 DUP2 MLOAD DUP2 LT PUSH2 0x11A5 JUMPI PUSH2 0x11A4 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH2 0x11D6 DUP5 PUSH1 0x3 DUP2 MLOAD DUP2 LT PUSH2 0x11C9 JUMPI PUSH2 0x11C8 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x11FA DUP6 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x11ED JUMPI PUSH2 0x11EC PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C39 JUMP JUMPDEST PUSH2 0x121E DUP7 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1211 JUMPI PUSH2 0x1210 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x170C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1231 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x3919 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP PUSH2 0x1377 JUMP JUMPDEST PUSH1 0xE0 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x125B JUMPI PUSH2 0x125A PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x126E JUMPI PUSH2 0x126D PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x1294 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x3F DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4E57 PUSH1 0x3F SWAP2 CODECOPY SWAP1 POP PUSH2 0x1376 JUMP JUMPDEST PUSH1 0xE1 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x12A8 JUMPI PUSH2 0x12A7 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x12BB JUMPI PUSH2 0x12BA PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x12E1 JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x47 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4ED7 PUSH1 0x47 SWAP2 CODECOPY SWAP1 POP PUSH2 0x1375 JUMP JUMPDEST PUSH1 0xE2 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x12F5 JUMPI PUSH2 0x12F4 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST DUP3 PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1308 JUMPI PUSH2 0x1307 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST EQ ISZERO PUSH2 0x132E JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x80 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x41 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x4E96 PUSH1 0x41 SWAP2 CODECOPY SWAP1 POP PUSH2 0x1374 JUMP JUMPDEST PUSH2 0x1352 DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1345 JUMPI PUSH2 0x1344 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1FAD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1362 SWAP2 SWAP1 PUSH2 0x377B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE SWAP1 POP JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST JUMPDEST DUP2 DUP2 SWAP5 POP SWAP5 POP POP POP POP JUMPDEST SWAP2 POP SWAP2 JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x13D6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13CD SWAP1 PUSH2 0x3C91 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xBB6EF6CF SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1413 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x142B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x143F 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 0x1468 SWAP2 SWAP1 PUSH2 0x2B51 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x14C4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x14BB SWAP1 PUSH2 0x3D71 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x8C05C33 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1501 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1519 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x152D 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 0x1551 SWAP2 SWAP1 PUSH2 0x2AD7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x159E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1595 SWAP1 PUSH2 0x3DD1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x9EEE60CA SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x15DB SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x15F3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1607 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 0x162B SWAP2 SWAP1 PUSH2 0x2AAA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x1678 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x166F SWAP1 PUSH2 0x3CF1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x94863EA4 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16B5 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x16CD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x16E1 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 0x1705 SWAP2 SWAP1 PUSH2 0x2B9A JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x175E JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x9 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x72657472696576616C0000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP PUSH2 0x1837 JUMP JUMPDEST PUSH1 0x1 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x17AE JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x6167677265676174696F6E000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP PUSH2 0x1837 JUMP JUMPDEST PUSH1 0x2 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x17FE JUMPI PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x74616C6C79000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP PUSH2 0x1837 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x7 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x756E6B6E6F776E00000000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x1848 DUP4 PUSH2 0x4C1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP2 MLOAD EQ ISZERO PUSH2 0x185E JUMPI PUSH1 0x0 SWAP2 POP POP PUSH2 0x1886 JUMP JUMPDEST PUSH2 0x1882 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1875 JUMPI PUSH2 0x1874 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD MLOAD PUSH2 0x1C13 JUMP JUMPDEST SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x18D1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x18C8 SWAP1 PUSH2 0x3DF1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x8138799A SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x190E SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1926 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x193A 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 0x195E SWAP2 SWAP1 PUSH2 0x2BC7 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x196D PUSH2 0x210C JUMP JUMPDEST PUSH1 0x0 DUP4 DUP4 DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH20 0x0 PUSH4 0xDFCA5D34 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x19EC SWAP2 SWAP1 PUSH2 0x3BCC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1A04 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1A18 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 0x1A41 SWAP2 SWAP1 PUSH2 0x2C86 JUMP JUMPDEST SWAP1 POP PUSH2 0x1A4C DUP2 PUSH2 0x680 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x1A9B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A92 SWAP1 PUSH2 0x3D91 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0xE67C5BD1 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AD8 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1AF0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1B04 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 0x1B2D SWAP2 SWAP1 PUSH2 0x2BF4 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 DUP2 PUSH1 0x0 ADD MLOAD PUSH2 0x1B7A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B71 SWAP1 PUSH2 0x3CB1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH1 0x20 ADD MLOAD PUSH20 0x0 PUSH4 0x3380D816 SWAP1 SWAP2 PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1BB7 SWAP2 SWAP1 PUSH2 0x3E11 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1BCF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS DELEGATECALL ISZERO DUP1 ISZERO PUSH2 0x1BE3 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 0x1C0C SWAP2 SWAP1 PUSH2 0x2986 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0xFF DUP2 GT ISZERO PUSH2 0x1C32 JUMPI PUSH2 0x1C31 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0xA DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1CFC JUMPI PUSH1 0x0 PUSH1 0x1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C6B JUMPI PUSH2 0x1C6A PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1C9D JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x30 DUP4 PUSH2 0x1CAD SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1CC4 JUMPI PUSH2 0x1CC3 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP2 POP POP PUSH2 0x1FA8 JUMP JUMPDEST PUSH1 0x64 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1E28 JUMPI PUSH1 0x0 PUSH1 0x2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1D2C JUMPI PUSH2 0x1D2B PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1D5E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x30 PUSH1 0xA DUP5 PUSH2 0x1D70 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1D7A SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1D91 JUMPI PUSH2 0x1D90 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x30 PUSH1 0xA DUP5 PUSH2 0x1DCF SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1DD9 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1DF0 JUMPI PUSH2 0x1DEF PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP2 POP POP PUSH2 0x1FA8 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1E45 JUMPI PUSH2 0x1E44 PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1E77 JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x30 PUSH1 0x64 DUP5 PUSH2 0x1E89 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1E93 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1EAA JUMPI PUSH2 0x1EA9 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x30 PUSH1 0xA PUSH1 0x64 DUP6 PUSH2 0x1EEA SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1EF4 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x1EFE SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x1F15 JUMPI PUSH2 0x1F14 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x30 PUSH1 0xA DUP5 PUSH2 0x1F53 SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x1F5D SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST PUSH1 0xF8 SHL DUP2 PUSH1 0x2 DUP2 MLOAD DUP2 LT PUSH2 0x1F74 JUMPI PUSH2 0x1F73 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x2 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1FCC JUMPI PUSH2 0x1FCB PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1FFE JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 PUSH1 0x30 PUSH1 0x10 DUP6 PUSH2 0x2012 SWAP2 SWAP1 PUSH2 0x4138 JUMP JUMPDEST PUSH2 0x201C SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x30 PUSH1 0x10 DUP7 PUSH2 0x202F SWAP2 SWAP1 PUSH2 0x4262 JUMP JUMPDEST PUSH2 0x2039 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP1 POP PUSH1 0x39 DUP3 PUSH1 0xFF AND GT ISZERO PUSH2 0x2057 JUMPI PUSH1 0x7 DUP3 PUSH2 0x2054 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x39 DUP2 PUSH1 0xFF AND GT ISZERO PUSH2 0x2073 JUMPI PUSH1 0x7 DUP2 PUSH2 0x2070 SWAP2 SWAP1 PUSH2 0x4101 JUMP JUMPDEST SWAP1 POP JUMPDEST DUP2 PUSH1 0xF8 SHL DUP4 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x208B JUMPI PUSH2 0x208A PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 PUSH1 0xF8 SHL DUP4 PUSH1 0x1 DUP2 MLOAD DUP2 LT PUSH2 0x20D2 JUMPI PUSH2 0x20D1 PUSH2 0x4320 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP3 SWAP4 POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x2128 PUSH2 0x212E JUMP JUMPDEST DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xC0 ADD PUSH1 0x40 MSTORE DUP1 PUSH2 0x2141 PUSH2 0x2187 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH4 0xFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x21BA PUSH2 0x21B5 DUP5 PUSH2 0x3E95 JUMP JUMPDEST PUSH2 0x3E70 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 0x21DD JUMPI PUSH2 0x21DC PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x220D JUMPI DUP2 PUSH2 0x21F3 DUP9 DUP3 PUSH2 0x25F4 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x21E0 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x222A PUSH2 0x2225 DUP5 PUSH2 0x3EC1 JUMP JUMPDEST PUSH2 0x3E70 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 0x224D JUMPI PUSH2 0x224C PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x227D JUMPI DUP2 PUSH2 0x2263 DUP9 DUP3 PUSH2 0x2609 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2250 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x229A PUSH2 0x2295 DUP5 PUSH2 0x3EED JUMP JUMPDEST PUSH2 0x3E70 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 0x22BD JUMPI PUSH2 0x22BC PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x230B JUMPI DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x22E3 JUMPI PUSH2 0x22E2 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP1 DUP7 ADD PUSH2 0x22F0 DUP10 DUP3 PUSH2 0x261E JUMP JUMPDEST DUP6 MSTORE PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP5 ADD SWAP4 POP POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x22C0 JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2328 PUSH2 0x2323 DUP5 PUSH2 0x3F19 JUMP JUMPDEST PUSH2 0x3E70 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 0x234B JUMPI PUSH2 0x234A PUSH2 0x4392 JUMP JUMPDEST JUMPDEST PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x237B JUMPI DUP2 PUSH2 0x2361 DUP9 DUP3 PUSH2 0x2947 JUMP JUMPDEST DUP5 MSTORE PUSH1 0x20 DUP5 ADD SWAP4 POP PUSH1 0x20 DUP4 ADD SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x234E JUMP JUMPDEST POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2398 PUSH2 0x2393 DUP5 PUSH2 0x3F45 JUMP JUMPDEST PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x23B4 JUMPI PUSH2 0x23B3 PUSH2 0x4397 JUMP JUMPDEST JUMPDEST PUSH2 0x23BF DUP5 DUP3 DUP6 PUSH2 0x41EF JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x23DA PUSH2 0x23D5 DUP5 PUSH2 0x3F45 JUMP JUMPDEST PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x23F6 JUMPI PUSH2 0x23F5 PUSH2 0x4397 JUMP JUMPDEST JUMPDEST PUSH2 0x2401 DUP5 DUP3 DUP6 PUSH2 0x41FE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x241C PUSH2 0x2417 DUP5 PUSH2 0x3F76 JUMP JUMPDEST PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2438 JUMPI PUSH2 0x2437 PUSH2 0x4397 JUMP JUMPDEST JUMPDEST PUSH2 0x2443 DUP5 DUP3 DUP6 PUSH2 0x41FE JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2460 JUMPI PUSH2 0x245F PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2470 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x21A7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x248E JUMPI PUSH2 0x248D PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x249E DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2217 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x24BC JUMPI PUSH2 0x24BB PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x24CC DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2287 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x24EA JUMPI PUSH2 0x24E9 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x24FA DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2315 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2512 DUP2 PUSH2 0x4DB5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2527 DUP2 PUSH2 0x4DB5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x253C DUP2 PUSH2 0x4DCC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x2558 JUMPI PUSH2 0x2557 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2575 JUMPI PUSH2 0x2574 PUSH2 0x437E JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x1 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x2591 JUMPI PUSH2 0x2590 PUSH2 0x4392 JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x25AD JUMPI PUSH2 0x25AC PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x25BD DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2385 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x25DB JUMPI PUSH2 0x25DA PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x25EB DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x23C7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2603 DUP2 PUSH2 0x4DE3 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2618 DUP2 PUSH2 0x4DFA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2633 JUMPI PUSH2 0x2632 PUSH2 0x4383 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x2643 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2409 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2662 JUMPI PUSH2 0x2661 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x266C PUSH1 0x40 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x268C JUMPI PUSH2 0x268B PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x2698 DUP5 DUP3 DUP6 ADD PUSH2 0x2598 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x26AC DUP5 DUP3 DUP6 ADD PUSH2 0x2908 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x26CE JUMPI PUSH2 0x26CD PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x26D8 PUSH1 0x40 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x26F8 JUMPI PUSH2 0x26F7 PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x2704 DUP5 DUP3 DUP6 ADD PUSH2 0x25C6 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x2718 DUP5 DUP3 DUP6 ADD PUSH2 0x291D JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x273A JUMPI PUSH2 0x2739 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x2744 PUSH1 0xC0 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2764 JUMPI PUSH2 0x2763 PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x2770 DUP5 DUP3 DUP6 ADD PUSH2 0x264C JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x2784 DUP5 DUP3 DUP6 ADD PUSH2 0x295C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x2798 DUP5 DUP3 DUP6 ADD PUSH2 0x295C JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x27AC DUP5 DUP3 DUP6 ADD PUSH2 0x295C JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x27C0 DUP5 DUP3 DUP6 ADD PUSH2 0x2932 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x27D4 DUP5 DUP3 DUP6 ADD PUSH2 0x2932 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x27F6 JUMPI PUSH2 0x27F5 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x2800 PUSH1 0xC0 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2820 JUMPI PUSH2 0x281F PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x282C DUP5 DUP3 DUP6 ADD PUSH2 0x26B8 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 PUSH2 0x2840 DUP5 DUP3 DUP6 ADD PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP PUSH1 0x40 PUSH2 0x2854 DUP5 DUP3 DUP6 ADD PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x40 DUP4 ADD MSTORE POP PUSH1 0x60 PUSH2 0x2868 DUP5 DUP3 DUP6 ADD PUSH2 0x2971 JUMP JUMPDEST PUSH1 0x60 DUP4 ADD MSTORE POP PUSH1 0x80 PUSH2 0x287C DUP5 DUP3 DUP6 ADD PUSH2 0x2947 JUMP JUMPDEST PUSH1 0x80 DUP4 ADD MSTORE POP PUSH1 0xA0 PUSH2 0x2890 DUP5 DUP3 DUP6 ADD PUSH2 0x2947 JUMP JUMPDEST PUSH1 0xA0 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x28B2 JUMPI PUSH2 0x28B1 PUSH2 0x4388 JUMP JUMPDEST JUMPDEST PUSH2 0x28BC PUSH1 0x40 PUSH2 0x3E70 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH2 0x28CC DUP5 DUP3 DUP6 ADD PUSH2 0x2503 JUMP JUMPDEST PUSH1 0x0 DUP4 ADD MSTORE POP PUSH1 0x20 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x28F0 JUMPI PUSH2 0x28EF PUSH2 0x438D JUMP JUMPDEST JUMPDEST PUSH2 0x28FC DUP5 DUP3 DUP6 ADD PUSH2 0x2724 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD MSTORE POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2917 DUP2 PUSH2 0x4E11 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x292C DUP2 PUSH2 0x4E11 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2941 DUP2 PUSH2 0x4E28 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2956 DUP2 PUSH2 0x4E28 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x296B DUP2 PUSH2 0x4E3F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x2980 DUP2 PUSH2 0x4E3F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x299C JUMPI PUSH2 0x299B PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x29BA JUMPI PUSH2 0x29B9 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x29C6 DUP5 DUP3 DUP6 ADD PUSH2 0x244B JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x29E5 JUMPI PUSH2 0x29E4 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2A03 JUMPI PUSH2 0x2A02 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2A0F DUP5 DUP3 DUP6 ADD PUSH2 0x2479 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2A2E JUMPI PUSH2 0x2A2D PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2A4C JUMPI PUSH2 0x2A4B PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2A58 DUP5 DUP3 DUP6 ADD PUSH2 0x24A7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2A77 JUMPI PUSH2 0x2A76 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2A95 JUMPI PUSH2 0x2A94 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2AA1 DUP5 DUP3 DUP6 ADD PUSH2 0x24D5 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2AC0 JUMPI PUSH2 0x2ABF PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2ACE DUP5 DUP3 DUP6 ADD PUSH2 0x2518 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2AED JUMPI PUSH2 0x2AEC PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2AFB DUP5 DUP3 DUP6 ADD PUSH2 0x252D JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2B1B JUMPI PUSH2 0x2B1A PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2B39 JUMPI PUSH2 0x2B38 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2B45 DUP6 DUP3 DUP7 ADD PUSH2 0x2542 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2B67 JUMPI PUSH2 0x2B66 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2B85 JUMPI PUSH2 0x2B84 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2B91 DUP5 DUP3 DUP6 ADD PUSH2 0x25C6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BB0 JUMPI PUSH2 0x2BAF PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2BBE DUP5 DUP3 DUP6 ADD PUSH2 0x25F4 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2BDD JUMPI PUSH2 0x2BDC PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2BEB DUP5 DUP3 DUP6 ADD PUSH2 0x2609 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2C0A JUMPI PUSH2 0x2C09 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2C28 JUMPI PUSH2 0x2C27 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2C34 DUP5 DUP3 DUP6 ADD PUSH2 0x261E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2C53 JUMPI PUSH2 0x2C52 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2C71 JUMPI PUSH2 0x2C70 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2C7D DUP5 DUP3 DUP6 ADD PUSH2 0x2724 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2C9C JUMPI PUSH2 0x2C9B PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2CBA JUMPI PUSH2 0x2CB9 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2CC6 DUP5 DUP3 DUP6 ADD PUSH2 0x27E0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2CE5 JUMPI PUSH2 0x2CE4 PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2D03 JUMPI PUSH2 0x2D02 PUSH2 0x439C JUMP JUMPDEST JUMPDEST PUSH2 0x2D0F DUP5 DUP3 DUP6 ADD PUSH2 0x289C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D2E JUMPI PUSH2 0x2D2D PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2D3C DUP5 DUP3 DUP6 ADD PUSH2 0x2932 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2D5B JUMPI PUSH2 0x2D5A PUSH2 0x43A1 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2D69 DUP5 DUP3 DUP6 ADD PUSH2 0x2947 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D7E DUP4 DUP4 PUSH2 0x301A JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2D96 DUP4 DUP4 PUSH2 0x3038 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DAE DUP4 DUP4 PUSH2 0x3080 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DC2 DUP4 DUP4 PUSH2 0x375D JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2DD9 DUP3 PUSH2 0x3FE7 JUMP JUMPDEST PUSH2 0x2DE3 DUP2 DUP6 PUSH2 0x405D JUMP JUMPDEST SWAP4 POP PUSH2 0x2DEE DUP4 PUSH2 0x3FA7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2E1F JUMPI DUP2 MLOAD PUSH2 0x2E06 DUP9 DUP3 PUSH2 0x2D72 JUMP JUMPDEST SWAP8 POP PUSH2 0x2E11 DUP4 PUSH2 0x4029 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2DF2 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E37 DUP3 PUSH2 0x3FF2 JUMP JUMPDEST PUSH2 0x2E41 DUP2 DUP6 PUSH2 0x406E JUMP JUMPDEST SWAP4 POP PUSH2 0x2E4C DUP4 PUSH2 0x3FB7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2E7D JUMPI DUP2 MLOAD PUSH2 0x2E64 DUP9 DUP3 PUSH2 0x2D8A JUMP JUMPDEST SWAP8 POP PUSH2 0x2E6F DUP4 PUSH2 0x4036 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2E50 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2E95 DUP3 PUSH2 0x3FFD JUMP JUMPDEST PUSH2 0x2E9F DUP2 DUP6 PUSH2 0x407F JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2EB1 DUP6 PUSH2 0x3FC7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x2EED JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x2ECE DUP6 DUP3 PUSH2 0x2DA2 JUMP JUMPDEST SWAP5 POP PUSH2 0x2ED9 DUP4 PUSH2 0x4043 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2EB5 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F0A DUP3 PUSH2 0x4008 JUMP JUMPDEST PUSH2 0x2F14 DUP2 DUP6 PUSH2 0x4090 JUMP JUMPDEST SWAP4 POP PUSH2 0x2F1F DUP4 PUSH2 0x3FD7 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2F50 JUMPI DUP2 MLOAD PUSH2 0x2F37 DUP9 DUP3 PUSH2 0x2DB6 JUMP JUMPDEST SWAP8 POP PUSH2 0x2F42 DUP4 PUSH2 0x4050 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2F23 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2F66 DUP2 PUSH2 0x4169 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2F75 DUP2 PUSH2 0x4169 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2F84 DUP2 PUSH2 0x4175 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2F95 DUP3 PUSH2 0x4013 JUMP JUMPDEST PUSH2 0x2F9F DUP2 DUP6 PUSH2 0x40A1 JUMP JUMPDEST SWAP4 POP PUSH2 0x2FAF DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x2FB8 DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2FCE DUP3 PUSH2 0x4013 JUMP JUMPDEST PUSH2 0x2FD8 DUP2 DUP6 PUSH2 0x40B2 JUMP JUMPDEST SWAP4 POP PUSH2 0x2FE8 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x2FF1 DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3005 DUP2 PUSH2 0x41DD JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3014 DUP2 PUSH2 0x4192 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3023 DUP2 PUSH2 0x4192 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3032 DUP2 PUSH2 0x419F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3041 DUP2 PUSH2 0x419F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3052 DUP3 PUSH2 0x401E JUMP JUMPDEST PUSH2 0x305C DUP2 DUP6 PUSH2 0x40D4 JUMP JUMPDEST SWAP4 POP PUSH2 0x306C DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x3075 DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x308B DUP3 PUSH2 0x401E JUMP JUMPDEST PUSH2 0x3095 DUP2 DUP6 PUSH2 0x40E5 JUMP JUMPDEST SWAP4 POP PUSH2 0x30A5 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST PUSH2 0x30AE DUP2 PUSH2 0x43A6 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30C4 DUP3 PUSH2 0x401E JUMP JUMPDEST PUSH2 0x30CE DUP2 DUP6 PUSH2 0x40F6 JUMP JUMPDEST SWAP4 POP PUSH2 0x30DE DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x41FE JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x30F7 PUSH1 0x36 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3102 DUP3 PUSH2 0x43B7 JUMP JUMPDEST PUSH1 0x36 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x311A PUSH1 0x17 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3125 DUP3 PUSH2 0x4406 JUMP JUMPDEST PUSH1 0x17 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x313D PUSH1 0x45 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3148 DUP3 PUSH2 0x442F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3160 PUSH1 0x11 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x316B DUP3 PUSH2 0x44A4 JUMP JUMPDEST PUSH1 0x11 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3183 PUSH1 0x4A DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x318E DUP3 PUSH2 0x44CD JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31A6 PUSH1 0x1D DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x31B1 DUP3 PUSH2 0x4542 JUMP JUMPDEST PUSH1 0x1D DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31C9 PUSH1 0x6 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x31D4 DUP3 PUSH2 0x456B JUMP JUMPDEST PUSH1 0x6 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x31EC PUSH1 0x4B DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x31F7 DUP3 PUSH2 0x4594 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x320F PUSH1 0x1B DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x321A DUP3 PUSH2 0x4609 JUMP JUMPDEST PUSH1 0x1B DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3232 PUSH1 0x10 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x323D DUP3 PUSH2 0x4632 JUMP JUMPDEST PUSH1 0x10 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3255 PUSH1 0x2C DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3260 DUP3 PUSH2 0x465B JUMP JUMPDEST PUSH1 0x2C DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3278 PUSH1 0x48 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3283 DUP3 PUSH2 0x46AA JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x329B PUSH1 0xC DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x32A6 DUP3 PUSH2 0x471F JUMP JUMPDEST PUSH1 0xC DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32BE PUSH1 0x1 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x32C9 DUP3 PUSH2 0x4748 JUMP JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x32E1 PUSH1 0x6 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x32EC DUP3 PUSH2 0x4771 JUMP JUMPDEST PUSH1 0x6 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3304 PUSH1 0xF DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x330F DUP3 PUSH2 0x479A JUMP JUMPDEST PUSH1 0xF DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3327 PUSH1 0x48 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3332 DUP3 PUSH2 0x47C3 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x334A PUSH1 0x10 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3355 DUP3 PUSH2 0x4838 JUMP JUMPDEST PUSH1 0x10 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x336D PUSH1 0x4A DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3378 DUP3 PUSH2 0x4861 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3390 PUSH1 0x4A DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x339B DUP3 PUSH2 0x48D6 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33B3 PUSH1 0x21 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x33BE DUP3 PUSH2 0x494B JUMP JUMPDEST PUSH1 0x21 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33D6 PUSH1 0x47 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x33E1 DUP3 PUSH2 0x499A JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x33F9 PUSH1 0x48 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x3404 DUP3 PUSH2 0x4A0F JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x341C PUSH1 0x1A DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3427 DUP3 PUSH2 0x4A84 JUMP JUMPDEST PUSH1 0x1A DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x343F PUSH1 0x24 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x344A DUP3 PUSH2 0x4AAD JUMP JUMPDEST PUSH1 0x24 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3462 PUSH1 0x47 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x346D DUP3 PUSH2 0x4AFC JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3485 PUSH1 0x1C DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3490 DUP3 PUSH2 0x4B71 JUMP JUMPDEST PUSH1 0x1C DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34A8 PUSH1 0x1A DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x34B3 DUP3 PUSH2 0x4B9A JUMP JUMPDEST PUSH1 0x1A DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34CB PUSH1 0x46 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x34D6 DUP3 PUSH2 0x4BC3 JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x34EE PUSH1 0x1D DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x34F9 DUP3 PUSH2 0x4C38 JUMP JUMPDEST PUSH1 0x1D DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3511 PUSH1 0xA DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x351C DUP3 PUSH2 0x4C61 JUMP JUMPDEST PUSH1 0xA DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3534 PUSH1 0x49 DUP4 PUSH2 0x40C3 JUMP JUMPDEST SWAP2 POP PUSH2 0x353F DUP3 PUSH2 0x4C8A JUMP JUMPDEST PUSH1 0x60 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3557 PUSH1 0x28 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3562 DUP3 PUSH2 0x4CFF JUMP JUMPDEST PUSH1 0x28 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x357A PUSH1 0x8 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3585 DUP3 PUSH2 0x4D4E JUMP JUMPDEST PUSH1 0x8 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x359D PUSH1 0x8 DUP4 PUSH2 0x40F6 JUMP JUMPDEST SWAP2 POP PUSH2 0x35A8 DUP3 PUSH2 0x4D77 JUMP JUMPDEST PUSH1 0x8 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x35D0 DUP3 DUP3 PUSH2 0x2FC3 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x35E5 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x373F JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x360D DUP3 DUP3 PUSH2 0x35B3 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x3622 PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x3635 PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x3648 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x365B PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x366E PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x0 DUP7 ADD MSTORE PUSH2 0x3696 DUP3 DUP3 PUSH2 0x35B3 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x36AB PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x36BE PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x36D1 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x376C JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x36E4 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x36F7 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x375D JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x371A PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x2F6C JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x3732 DUP3 DUP3 PUSH2 0x3679 JUMP JUMPDEST SWAP2 POP POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3748 DUP2 PUSH2 0x41AC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3757 DUP2 PUSH2 0x41BC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3766 DUP2 PUSH2 0x41BC JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x3775 DUP2 PUSH2 0x41D0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3786 DUP3 PUSH2 0x3153 JUMP JUMPDEST SWAP2 POP PUSH2 0x3792 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x379D DUP3 PUSH2 0x32B1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x37B3 DUP3 PUSH2 0x3199 JUMP JUMPDEST SWAP2 POP PUSH2 0x37BF DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x37CA DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x37D6 DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x37E1 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x37ED DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x37F8 DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x3804 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x380F DUP3 PUSH2 0x31BC JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3828 DUP3 PUSH2 0x3225 JUMP JUMPDEST SWAP2 POP PUSH2 0x3834 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x383F DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x384B DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3856 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x3862 DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x386D DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x3879 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3884 DUP3 PUSH2 0x310D JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x389D DUP3 PUSH2 0x32F7 JUMP JUMPDEST SWAP2 POP PUSH2 0x38A9 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x38B4 DUP3 PUSH2 0x3202 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x38CA DUP3 PUSH2 0x340F JUMP JUMPDEST SWAP2 POP PUSH2 0x38D6 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x38E1 DUP3 PUSH2 0x349B JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x38F7 DUP3 PUSH2 0x340F JUMP JUMPDEST SWAP2 POP PUSH2 0x3903 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x390E DUP3 PUSH2 0x34E1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3924 DUP3 PUSH2 0x3432 JUMP JUMPDEST SWAP2 POP PUSH2 0x3930 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x393B DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x3947 DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3952 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x395E DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3969 DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x3975 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3980 DUP3 PUSH2 0x31BC JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3999 DUP3 PUSH2 0x3478 JUMP JUMPDEST SWAP2 POP PUSH2 0x39A5 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39B0 DUP3 PUSH2 0x333D JUMP JUMPDEST SWAP2 POP PUSH2 0x39BC DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39C7 DUP3 PUSH2 0x328E JUMP JUMPDEST SWAP2 POP PUSH2 0x39D3 DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39DE DUP3 PUSH2 0x32D4 JUMP JUMPDEST SWAP2 POP PUSH2 0x39EA DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x39F5 DUP3 PUSH2 0x31BC JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A0E DUP3 PUSH2 0x354A JUMP JUMPDEST SWAP2 POP PUSH2 0x3A1A DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A25 DUP3 PUSH2 0x32B1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A3B DUP3 PUSH2 0x356D JUMP JUMPDEST SWAP2 POP PUSH2 0x3A47 DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A52 DUP3 PUSH2 0x3504 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A5E DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A69 DUP3 PUSH2 0x33A6 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A75 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3A80 DUP3 PUSH2 0x32B1 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3A98 DUP3 PUSH2 0x3590 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AA4 DUP3 DUP8 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AAF DUP3 PUSH2 0x30EA JUMP JUMPDEST SWAP2 POP PUSH2 0x3ABB DUP3 DUP7 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AC7 DUP3 DUP6 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AD3 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3AEC DUP3 PUSH2 0x3590 JUMP JUMPDEST SWAP2 POP PUSH2 0x3AF8 DUP3 DUP5 PUSH2 0x30B9 JUMP JUMPDEST SWAP2 POP PUSH2 0x3B03 DUP3 PUSH2 0x3248 JUMP JUMPDEST SWAP2 POP DUP2 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 0x3B28 DUP2 DUP5 PUSH2 0x2DCE 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 0x3B4A DUP2 DUP5 PUSH2 0x2E2C 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 0x3B6C DUP2 DUP5 PUSH2 0x2E8A 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 0x3B8E DUP2 DUP5 PUSH2 0x2EFF JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3BAB PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2F5D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3BC6 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2F7B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3BE6 DUP2 DUP5 PUSH2 0x2F8A JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C03 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2FFC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x3C1E PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x2FFC JUMP JUMPDEST DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x3C30 DUP2 DUP5 PUSH2 0x3047 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C4E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x300B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3C69 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x3029 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x3C89 DUP2 DUP5 PUSH2 0x3047 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 0x3CAA DUP2 PUSH2 0x3130 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 0x3CCA DUP2 PUSH2 0x3176 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 0x3CEA DUP2 PUSH2 0x31DF 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 0x3D0A DUP2 PUSH2 0x326B 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 0x3D2A DUP2 PUSH2 0x331A 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 0x3D4A DUP2 PUSH2 0x3360 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 0x3D6A DUP2 PUSH2 0x3383 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 0x3D8A DUP2 PUSH2 0x33C9 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 0x3DAA DUP2 PUSH2 0x33EC 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 0x3DCA DUP2 PUSH2 0x3455 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 0x3DEA DUP2 PUSH2 0x34BE 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 0x3E0A DUP2 PUSH2 0x3527 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 0x3E2B DUP2 DUP5 PUSH2 0x35F0 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 0x3E4D DUP2 DUP5 PUSH2 0x3702 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x3E6A PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x374E JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x3E7A PUSH2 0x3E8B JUMP JUMPDEST SWAP1 POP PUSH2 0x3E86 DUP3 DUP3 PUSH2 0x4231 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 0x3EB0 JUMPI PUSH2 0x3EAF PUSH2 0x434F 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 0x3EDC JUMPI PUSH2 0x3EDB PUSH2 0x434F 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 0x3F08 JUMPI PUSH2 0x3F07 PUSH2 0x434F 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 0x3F34 JUMPI PUSH2 0x3F33 PUSH2 0x434F 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 0x3F60 JUMPI PUSH2 0x3F5F PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH2 0x3F69 DUP3 PUSH2 0x43A6 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x3F91 JUMPI PUSH2 0x3F90 PUSH2 0x434F JUMP JUMPDEST JUMPDEST PUSH2 0x3F9A DUP3 PUSH2 0x43A6 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 SWAP1 POP PUSH1 0x20 DUP3 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 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 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 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD 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 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 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 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x410C DUP3 PUSH2 0x41D0 JUMP JUMPDEST SWAP2 POP PUSH2 0x4117 DUP4 PUSH2 0x41D0 JUMP JUMPDEST SWAP3 POP DUP3 PUSH1 0xFF SUB DUP3 GT ISZERO PUSH2 0x412D JUMPI PUSH2 0x412C PUSH2 0x4293 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x4143 DUP3 PUSH2 0x41BC JUMP JUMPDEST SWAP2 POP PUSH2 0x414E DUP4 PUSH2 0x41BC JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x415E JUMPI PUSH2 0x415D PUSH2 0x42C2 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP 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 PUSH2 0x418D DUP3 PUSH2 0x4DA0 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0xF SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x3 SIGNEXTEND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x41E8 DUP3 PUSH2 0x417F JUMP JUMPDEST 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 0x421C JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x4201 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x422B JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x423A DUP3 PUSH2 0x43A6 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x4259 JUMPI PUSH2 0x4258 PUSH2 0x434F JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x426D DUP3 PUSH2 0x41BC JUMP JUMPDEST SWAP2 POP PUSH2 0x4278 DUP4 PUSH2 0x41BC JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x4288 JUMPI PUSH2 0x4287 PUSH2 0x42C2 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MOD SWAP1 POP SWAP3 SWAP2 POP 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 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x20636F756C64206E6F74206265207265747269657665642E204661696C656420 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x776974682048545450206572726F7220636F64653A2000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x207374616765206973206E6F7420737570706F72746564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x797465732076616C75652066726F6D206572726F726564205769746E65742E52 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6573756C74000000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x556E6B6E6F776E206572726F7220283078000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x696E743132385B5D602076616C75652066726F6D206572726F72656420576974 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6E65742E526573756C7400000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x556E646572666C6F77206174206F70657261746F7220636F6465203078000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2073746167650000000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x666978656431365B5D602076616C75652066726F6D206572726F726564205769 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x746E65742E526573756C74000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20776173206E6F7420612076616C69642043424F522076616C75650000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F70657261746F7220636F646520307800000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20636F756C64206E6F7420626520726574726965766564206265636175736520 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F6620612074696D656F75740000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x696E74313238602076616C75652066726F6D206572726F726564205769746E65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x742E526573756C74000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20696E2073637269707420230000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2900000000000000000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2066726F6D200000000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x536F757263652073637269707420230000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x75696E743634602076616C75652066726F6D206572726F726564205769746E65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x742E526573756C74000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20666F756E642061742063616C6C202300000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x75696E7436345B5D602076616C75652066726F6D206572726F72656420576974 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6E65742E526573756C7400000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x737472696E675B5D602076616C75652066726F6D206572726F72656420576974 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x6E65742E526573756C7400000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20737461676520636F6E7461696E656420746F6F206D616E792063616C6C7320 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x2800000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20747269656420746F20726561642062 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x7974657333322076616C75652066726F6D206572726F726564205769746E6574 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x2E526573756C7400000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x737472696E67602076616C75652066726F6D206572726F726564205769746E65 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x742E526573756C74000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5468652043424F522076616C756520696E207363726970742023000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4469766973696F6E206279207A65726F206174206F70657261746F7220636F64 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6520307800000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642065 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x72726F7220636F64652066726F6D207375636365737366756C205769746E6574 PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x2E526573756C7400000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F766572666C6F77206174206F70657261746F7220636F646520307800000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20776173206E6F7420616E204172726179206F662063616C6C73000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x626F6F6C602076616C75652066726F6D206572726F726564205769746E65742E PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x526573756C740000000000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x20776173206E6F7420612076616C696420446174612052657175657374000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x2066726F6D207468652000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E65745061727365724C69623A20547269656420746F20726561642060 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x66697865643136602076616C75652066726F6D206572726F726564205769746E PUSH1 0x20 DUP3 ADD MSTORE PUSH32 0x65742E526573756C740000000000000000000000000000000000000000000000 PUSH1 0x40 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x546865207265717565737420636F6E7461696E656420746F6F206D616E792073 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F75726365732028000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5363726970742023000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x536F757263652023000000000000000000000000000000000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x100 DUP2 LT PUSH2 0x4DB2 JUMPI PUSH2 0x4DB1 PUSH2 0x42F1 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH2 0x4DBE DUP2 PUSH2 0x4169 JUMP JUMPDEST DUP2 EQ PUSH2 0x4DC9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4DD5 DUP2 PUSH2 0x4175 JUMP JUMPDEST DUP2 EQ PUSH2 0x4DE0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4DEC DUP2 PUSH2 0x4192 JUMP JUMPDEST DUP2 EQ PUSH2 0x4DF7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E03 DUP2 PUSH2 0x419F JUMP JUMPDEST DUP2 EQ PUSH2 0x4E0E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E1A DUP2 PUSH2 0x41AC JUMP JUMPDEST DUP2 EQ PUSH2 0x4E25 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E31 DUP2 PUSH2 0x41BC JUMP JUMPDEST DUP2 EQ PUSH2 0x4E3C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x4E48 DUP2 PUSH2 0x41D0 JUMP JUMPDEST DUP2 EQ PUSH2 0x4E53 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID SLOAD PUSH9 0x652073747275637475 PUSH19 0x65206F66207468652072657175657374206973 KECCAK256 PUSH10 0x6E76616C696420616E64 KECCAK256 PUSH10 0x742063616E6E6F742062 PUSH6 0x207061727365 PUSH5 0x5468652072 PUSH6 0x717565737420 PUSH19 0x6573756C74206C656E67746820657863656564 PUSH20 0x20612062726964676520636F6E74726163742064 PUSH6 0x66696E656420 PUSH13 0x696D6974546865207265717565 PUSH20 0x7420686173206265656E2072656A656374656420 PUSH3 0x792074 PUSH9 0x652062726964676520 PUSH15 0x6F64652064756520746F20706F6F72 KECCAK256 PUSH10 0x6E63656E7469766573A2 PUSH5 0x6970667358 0x22 SLT KECCAK256 PUSH29 0x84347B582E34D3C229CA790843F11AD8ED7D0539A9EC821D76A66DC1E0 CALLER LT PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"375:16523:32:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9331:308;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11161:284;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1090:418;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14076:282;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13101;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1680:132;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13592:260;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4035:5082;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;2310:261;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1981:132;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2772:262;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9837:253;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11655:257;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14606:363;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3266:317;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10681:263;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;673:243;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12619:267;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12137:282;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9331:308;9417:15;9470:7;:15;;;9469:16;9448:134;;;;;;;;;;;;:::i;:::-;;;;;;;;;9599:7;:13;;;:31;;;;:33;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9592:40;;9331:308;;;:::o;11161:284::-;11254:14;11292:7;:15;;;11284:103;;;;;;;;;;;;:::i;:::-;;;;;;;;;11404:7;:13;;;:32;;;;:34;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11397:41;;11161:284;;;:::o;1090:418::-;1187:20;;:::i;:::-;1415:12;1448:2;1430:10;:14;;;:20;;;;1415:35;;1467:34;;;;;;;;1481:7;1467:34;;;;;;1490:10;1467:34;;;1460:41;;;1090:418;;;:::o;14076:282::-;14168:15;14207:7;:15;;;14199:102;;;;;;;;;;;;:::i;:::-;;;;;;;;;14318:7;:13;;;:31;;;;:33;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14311:40;;14076:282;;;:::o;13101:::-;13193:15;13232:7;:15;;;13224:102;;;;;;;;;;;;:::i;:::-;;;;;;;;;13343:7;:13;;;:31;;;;:33;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13336:40;;13101:282;;;:::o;1680:132::-;1763:4;1790:7;:15;;;1783:22;;1680:132;;;:::o;13592:260::-;13678:6;13708:7;:15;;;13700:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;13817:7;:13;;;:26;;;;:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13810:35;;13592:260;;;:::o;4035:5082::-;4122:17;4141:13;4170:21;4194:19;4205:7;4194:10;:19::i;:::-;4170:43;;4243:1;4227:5;:12;:17;4223:115;;;4268:25;4260:67;;;;;;;;;;;;;;;;;;;;;;;;4223:115;4347:27;4377:38;4406:5;4412:1;4406:8;;;;;;;;:::i;:::-;;;;;;;;4377:28;:38::i;:::-;4347:68;;4425:25;4478:37;4465:50;;;;;;;;:::i;:::-;;:9;:50;;;;;;;;:::i;:::-;;;:71;;;;;4535:1;4519:5;:12;:17;;4465:71;4461:4600;;;4636:15;4642:5;4648:1;4642:8;;;;;;;;:::i;:::-;;;;;;;;4636:5;:15::i;:::-;4567:145;;;;;;;;:::i;:::-;;;;;;;;;;;;;4552:160;;4461:4600;;;4746:38;4733:51;;;;;;;;:::i;:::-;;:9;:51;;;;;;;;:::i;:::-;;;:72;;;;;4804:1;4788:5;:12;:17;;4733:72;4729:4332;;;4916:15;4922:5;4928:1;4922:8;;;;;;;;:::i;:::-;;;;;;;;4916:5;:15::i;:::-;4836:155;;;;;;;;:::i;:::-;;;;;;;;;;;;;4821:170;;4729:4332;;;5025:38;5012:51;;;;;;;;:::i;:::-;;:9;:51;;;;;;;;:::i;:::-;;;:72;;;;;5083:1;5067:5;:12;:17;;5012:72;5008:4053;;;5195:15;5201:5;5207:1;5201:8;;;;;;;;:::i;:::-;;;;;;;;5195:5;:15::i;:::-;5115:158;;;;;;;;:::i;:::-;;;;;;;;;;;;;5100:173;;5008:4053;;;5307:39;5294:52;;;;;;;;:::i;:::-;;:9;:52;;;;;;;;:::i;:::-;;;:73;;;;;5366:1;5350:5;:12;:17;;5294:73;5290:3771;;;5493:15;5499:5;5505:1;5499:8;;;;;;;;:::i;:::-;;;;;;;;5493:5;:15::i;:::-;5398:146;;;;;;;;:::i;:::-;;;;;;;;;;;;;5383:161;;5290:3771;;;5578:36;5565:49;;;;;;;;:::i;:::-;;:9;:49;;;;;;;;:::i;:::-;;;:70;;;;;5634:1;5618:5;:12;:17;;5565:70;5561:3500;;;5728:15;5734:5;5740:1;5734:8;;;;;;;;:::i;:::-;;;;;;;;5728:5;:15::i;:::-;5791:19;5801:5;5807:1;5801:8;;;;;;;;:::i;:::-;;;;;;;;5791:9;:19::i;:::-;5881:15;5887:5;5893:1;5887:8;;;;;;;;:::i;:::-;;;;;;;;5881:5;:15::i;:::-;5666:265;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;5651:280;;5561:3500;;;5965:37;5952:50;;;;;;;;:::i;:::-;;:9;:50;;;;;;;;:::i;:::-;;;:71;;;;;6022:1;6006:5;:12;:17;;5952:71;5948:3113;;;6124:17;6132:5;6138:1;6132:8;;;;;;;;:::i;:::-;;;;;;;;6124:7;:17::i;:::-;6195:15;6201:5;6207:1;6201:8;;;;;;;;:::i;:::-;;;;;;;;6195:5;:15::i;:::-;6260;6266:5;6272:1;6266:8;;;;;;;;:::i;:::-;;;;;;;;6260:5;:15::i;:::-;6319:19;6329:5;6335:1;6329:8;;;;;;;;:::i;:::-;;;;;;;;6319:9;:19::i;:::-;6054:341;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6039:356;;5948:3113;;;6429:22;6416:35;;;;;;;;:::i;:::-;;:9;:35;;;;;;;;:::i;:::-;;;:56;;;;;6471:1;6455:5;:12;:17;;6416:56;6412:2649;;;6565:15;6571:5;6577:1;6571:8;;;;;;;;:::i;:::-;;;;;;;;6565:5;:15::i;:::-;6672:21;6689:3;6678:5;6684:1;6678:8;;;;;;;;:::i;:::-;;;;;;;;:14;;;;:::i;:::-;6672:5;:21::i;:::-;6711:26;6734:2;6728:3;6717:5;6723:1;6717:8;;;;;;;;:::i;:::-;;;;;;;;:14;;;;:::i;:::-;:19;;;;:::i;:::-;6711:5;:26::i;:::-;6755:20;6772:2;6761:5;6767:1;6761:8;;;;;;;;:::i;:::-;;;;;;;;:13;;;;:::i;:::-;6755:5;:20::i;:::-;6503:286;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6488:301;;6412:2649;;;6823:34;6810:47;;;;;;;;:::i;:::-;;:9;:47;;;;;;;;:::i;:::-;;;:68;;;;;6877:1;6861:5;:12;:17;;6810:68;6806:2255;;;6971:15;6977:5;6983:1;6977:8;;;;;;;;:::i;:::-;;;;;;;;6971:5;:15::i;:::-;6909:155;;;;;;;;:::i;:::-;;;;;;;;;;;;;6894:170;;6806:2255;;;7098:27;7085:40;;;;;;;;:::i;:::-;;:9;:40;;;;;;;;:::i;:::-;;;:61;;;;;7145:1;7129:5;:12;:17;;7085:61;7081:1980;;;7262:17;7270:5;7276:1;7270:8;;;;;;;;:::i;:::-;;;;;;;;7262:7;:17::i;:::-;7333:15;7339:5;7345:1;7339:8;;;;;;;;:::i;:::-;;;;;;;;7333:5;:15::i;:::-;7398;7404:5;7410:1;7404:8;;;;;;;;:::i;:::-;;;;;;;;7398:5;:15::i;:::-;7457:19;7467:5;7473:1;7467:8;;;;;;;;:::i;:::-;;;;;;;;7457:9;:19::i;:::-;7179:337;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7164:352;;7081:1980;;;7550:26;7537:39;;;;;;;;:::i;:::-;;:9;:39;;;;;;;;:::i;:::-;;;:60;;;;;7596:1;7580:5;:12;:17;;7537:60;7533:1528;;;7710:17;7718:5;7724:1;7718:8;;;;;;;;:::i;:::-;;;;;;;;7710:7;:17::i;:::-;7781:15;7787:5;7793:1;7787:8;;;;;;;;:::i;:::-;;;;;;;;7781:5;:15::i;:::-;7846;7852:5;7858:1;7852:8;;;;;;;;:::i;:::-;;;;;;;;7846:5;:15::i;:::-;7905:19;7915:5;7921:1;7915:8;;;;;;;;:::i;:::-;;;;;;;;7905:9;:19::i;:::-;7628:336;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7613:351;;7533:1528;;;7998:32;7985:45;;;;;;;;:::i;:::-;;:9;:45;;;;;;;;:::i;:::-;;;:66;;;;;8050:1;8034:5;:12;:17;;7985:66;7981:1080;;;8172:17;8180:5;8186:1;8180:8;;;;;;;;:::i;:::-;;;;;;;;8172:7;:17::i;:::-;8243:15;8249:5;8255:1;8249:8;;;;;;;;:::i;:::-;;;;;;;;8243:5;:15::i;:::-;8308;8314:5;8320:1;8314:8;;;;;;;;:::i;:::-;;;;;;;;8308:5;:15::i;:::-;8367:19;8377:5;8383:1;8377:8;;;;;;;;:::i;:::-;;;;;;;;8367:9;:19::i;:::-;8082:344;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;8067:359;;7981:1080;;;8460:40;8447:53;;;;;;;;:::i;:::-;;:9;:53;;;;;;;;:::i;:::-;;;8443:618;;;8516:80;;;;;;;;;;;;;;;;;;;8443:618;;;8630:38;8617:51;;;;;;;;:::i;:::-;;:9;:51;;;;;;;;:::i;:::-;;;8613:448;;;8684:88;;;;;;;;;;;;;;;;;;;8613:448;;;8806:39;8793:52;;;;;;;;:::i;:::-;;:9;:52;;;;;;;;:::i;:::-;;;8789:272;;;8861:82;;;;;;;;;;;;;;;;;;;8789:272;;;9027:17;9035:5;9041:1;9035:8;;;;;;;;:::i;:::-;;;;;;;;9027:7;:17::i;:::-;8989:61;;;;;;;;:::i;:::-;;;;;;;;;;;;;8974:76;;8789:272;8613:448;8443:618;7981:1080;7533:1528;7081:1980;6806:2255;6412:2649;5948:3113;5561:3500;5290:3771;5008:4053;4729:4332;4461:4600;9078:9;9096:12;9070:40;;;;;;;4035:5082;;;;:::o;2310:261::-;2395:12;2431:7;:15;;;2423:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;2537:7;:13;;;:25;;;;:27;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2530:34;;2310:261;;;:::o;1981:132::-;2063:4;2091:7;:15;;;2090:16;2083:23;;1981:132;;;:::o;2772:262::-;2859:7;2890;:15;;;2882:99;;;;;;;;;;;;:::i;:::-;;;;;;;;;2998:7;:13;;;:27;;;;:29;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2991:36;;2772:262;;;:::o;9837:253::-;9922:4;9950:7;:15;;;9942:98;;;;;;;;;;;;:::i;:::-;;;;;;;;;10057:7;:13;;;:24;;;;:26;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10050:33;;9837:253;;;:::o;11655:257::-;11738:6;11768:7;:15;;;11760:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;11877:7;:13;;;:26;;;;:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11870:35;;11655:257;;;:::o;14606:363::-;14682:13;14730:1;14715:11;:16;;;14711:252;;;14747:18;;;;;;;;;;;;;;;;;;;;;14711:252;14801:1;14786:11;:16;;;14782:181;;;14818:20;;;;;;;;;;;;;;;;;;;;;14782:181;14874:1;14859:11;:16;;;14855:108;;;14891:14;;;;;;;;;;;;;;;;;;;;;14855:108;14936:16;;;;;;;;;;;;;;;;;;;14606:363;;;;:::o;3266:317::-;3356:17;3389:21;3413:19;3424:7;3413:10;:19::i;:::-;3389:43;;3462:1;3446:5;:12;:17;3442:80;;;3486:25;3479:32;;;;;3442:80;3538:38;3567:5;3573:1;3567:8;;;;;;;;:::i;:::-;;;;;;;;3538:28;:38::i;:::-;3531:45;;;3266:317;;;;:::o;10681:263::-;10769:5;10798:7;:15;;;10790:101;;;;;;;;;;;;:::i;:::-;;;;;;;;;10908:7;:13;;;:27;;;;:29;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10901:36;;10681:263;;;:::o;673:243::-;768:20;;:::i;:::-;804:28;835:10;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;804:58;;879:30;899:9;879:19;:30::i;:::-;872:37;;;673:243;;;;:::o;12619:267::-;12705:13;12742:7;:15;;;12734:100;;;;;;;;;;;;:::i;:::-;;;;;;;;;12851:7;:13;;;:26;;;;:28;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12844:35;;12619:267;;;:::o;12137:282::-;12229:15;12268:7;:15;;;12260:102;;;;;;;;;;;;:::i;:::-;;;;;;;;;12379:7;:13;;;:31;;;;:33;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12372:40;;12137:282;;;:::o;15169:177::-;15267:17;15325:13;15307:32;;;;;;;;;;:::i;:::-;;15300:39;;15169:177;;;:::o;15591:692::-;15655:13;15693:2;15688;:7;;;15684:593;;;15711:15;15739:1;15729:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15711:30;;15782:2;15776;15770:14;;;;:::i;:::-;15763:22;;15755:2;15758:1;15755:5;;;;;;;;:::i;:::-;;;;;:30;;;;;;;;;;;15813:2;15799:17;;;;;15684:593;15842:3;15837:2;:8;;;15833:444;;;15861:15;15889:1;15879:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15861:30;;15937:2;15931;15926;:7;;;;:::i;:::-;15920:19;;;;:::i;:::-;15913:27;;15905:2;15908:1;15905:5;;;;;;;;:::i;:::-;;;;;:35;;;;;;;;;;;15986:2;15980;15975;:7;;;;:::i;:::-;15969:19;;;;:::i;:::-;15962:27;;15954:2;15957:1;15954:5;;;;;;;;:::i;:::-;;;;;:35;;;;;;;;;;;16017:2;16003:17;;;;;15833:444;16051:15;16079:1;16069:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16051:30;;16128:2;16121:3;16116:2;:8;;;;:::i;:::-;16110:20;;;;:::i;:::-;16103:28;;16095:2;16098:1;16095:5;;;;;;;;:::i;:::-;;;;;:36;;;;;;;;;;;16183:2;16177;16171:3;16166:2;:8;;;;:::i;:::-;:13;;;;:::i;:::-;16160:25;;;;:::i;:::-;16153:33;;16145:2;16148:1;16145:5;;;;;;;;:::i;:::-;;;;;:41;;;;;;;;;;;16232:2;16226;16221;:7;;;;:::i;:::-;16215:19;;;;:::i;:::-;16208:27;;16200:2;16203:1;16200:5;;;;;;;;:::i;:::-;;;;;:35;;;;;;;;;;;16263:2;16249:17;;;15591:692;;;;:::o;16517:379::-;16583:13;16612:15;16640:1;16630:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16612:30;;16652:8;16680:2;16674;16669;:7;;;;:::i;:::-;16663:19;;;;:::i;:::-;16652:30;;16692:8;16720:2;16714;16709;:7;;;;:::i;:::-;16703:19;;;;:::i;:::-;16692:30;;16741:2;16736;:7;;;16732:32;;;16763:1;16757:7;;;;;:::i;:::-;;;16732:32;16783:2;16778;:7;;;16774:32;;;16805:1;16799:7;;;;;:::i;:::-;;;16774:32;16831:2;16824:10;;16816:2;16819:1;16816:5;;;;;;;;:::i;:::-;;;;;:18;;;;;;;;;;;16859:2;16852:10;;16844:2;16847:1;16844:5;;;;;;;;:::i;:::-;;;;;:18;;;;;;;;;;;16886:2;16872:17;;;;;16517:379;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;23:741:46:-;129:5;154:80;170:63;226:6;170:63;:::i;:::-;154:80;:::i;:::-;145:89;;254:5;283:6;276:5;269:21;317:4;310:5;306:16;299:23;;343:6;393:3;385:4;377:6;373:17;368:3;364:27;361:36;358:143;;;412:79;;:::i;:::-;358:143;525:1;510:248;535:6;532:1;529:13;510:248;;;603:3;632:47;675:3;663:10;632:47;:::i;:::-;627:3;620:60;709:4;704:3;700:14;693:21;;743:4;738:3;734:14;727:21;;570:188;557:1;554;550:9;545:14;;510:248;;;514:14;135:629;;23:741;;;;;:::o;785:738::-;890:5;915:79;931:62;986:6;931:62;:::i;:::-;915:79;:::i;:::-;906:88;;1014:5;1043:6;1036:5;1029:21;1077:4;1070:5;1066:16;1059:23;;1103:6;1153:3;1145:4;1137:6;1133:17;1128:3;1124:27;1121:36;1118:143;;;1172:79;;:::i;:::-;1118:143;1285:1;1270:247;1295:6;1292:1;1289:13;1270:247;;;1363:3;1392:46;1434:3;1422:10;1392:46;:::i;:::-;1387:3;1380:59;1468:4;1463:3;1459:14;1452:21;;1502:4;1497:3;1493:14;1486:21;;1330:187;1317:1;1314;1310:9;1305:14;;1270:247;;;1274:14;896:627;;785:738;;;;;:::o;1545:972::-;1662:5;1687:91;1703:74;1770:6;1703:74;:::i;:::-;1687:91;:::i;:::-;1678:100;;1798:5;1827:6;1820:5;1813:21;1861:4;1854:5;1850:16;1843:23;;1887:6;1937:3;1929:4;1921:6;1917:17;1912:3;1908:27;1905:36;1902:143;;;1956:79;;:::i;:::-;1902:143;2069:1;2054:457;2079:6;2076:1;2073:13;2054:457;;;2154:3;2148:10;2190:18;2177:11;2174:35;2171:122;;;2212:79;;:::i;:::-;2171:122;2336:11;2328:6;2324:24;2374:58;2428:3;2416:10;2374:58;:::i;:::-;2369:3;2362:71;2462:4;2457:3;2453:14;2446:21;;2496:4;2491:3;2487:14;2480:21;;2114:397;;2101:1;2098;2094:9;2089:14;;2054:457;;;2058:14;1668:849;;1545:972;;;;;:::o;2539:741::-;2645:5;2670:80;2686:63;2742:6;2686:63;:::i;:::-;2670:80;:::i;:::-;2661:89;;2770:5;2799:6;2792:5;2785:21;2833:4;2826:5;2822:16;2815:23;;2859:6;2909:3;2901:4;2893:6;2889:17;2884:3;2880:27;2877:36;2874:143;;;2928:79;;:::i;:::-;2874:143;3041:1;3026:248;3051:6;3048:1;3045:13;3026:248;;;3119:3;3148:47;3191:3;3179:10;3148:47;:::i;:::-;3143:3;3136:60;3225:4;3220:3;3216:14;3209:21;;3259:4;3254:3;3250:14;3243:21;;3086:188;3073:1;3070;3066:9;3061:14;;3026:248;;;3030:14;2651:629;;2539:741;;;;;:::o;3286:410::-;3363:5;3388:65;3404:48;3445:6;3404:48;:::i;:::-;3388:65;:::i;:::-;3379:74;;3476:6;3469:5;3462:21;3514:4;3507:5;3503:16;3552:3;3543:6;3538:3;3534:16;3531:25;3528:112;;;3559:79;;:::i;:::-;3528:112;3649:41;3683:6;3678:3;3673;3649:41;:::i;:::-;3369:327;3286:410;;;;;:::o;3702:419::-;3790:5;3815:65;3831:48;3872:6;3831:48;:::i;:::-;3815:65;:::i;:::-;3806:74;;3903:6;3896:5;3889:21;3941:4;3934:5;3930:16;3979:3;3970:6;3965:3;3961:16;3958:25;3955:112;;;3986:79;;:::i;:::-;3955:112;4076:39;4108:6;4103:3;4098;4076:39;:::i;:::-;3796:325;3702:419;;;;;:::o;4127:421::-;4216:5;4241:66;4257:49;4299:6;4257:49;:::i;:::-;4241:66;:::i;:::-;4232:75;;4330:6;4323:5;4316:21;4368:4;4361:5;4357:16;4406:3;4397:6;4392:3;4388:16;4385:25;4382:112;;;4413:79;;:::i;:::-;4382:112;4503:39;4535:6;4530:3;4525;4503:39;:::i;:::-;4222:326;4127:421;;;;;:::o;4570:383::-;4651:5;4700:3;4693:4;4685:6;4681:17;4677:27;4667:122;;4708:79;;:::i;:::-;4667:122;4818:6;4812:13;4843:104;4943:3;4935:6;4928:4;4920:6;4916:17;4843:104;:::i;:::-;4834:113;;4657:296;4570:383;;;;:::o;4974:381::-;5054:5;5103:3;5096:4;5088:6;5084:17;5080:27;5070:122;;5111:79;;:::i;:::-;5070:122;5221:6;5215:13;5246:103;5345:3;5337:6;5330:4;5322:6;5318:17;5246:103;:::i;:::-;5237:112;;5060:295;4974:381;;;;:::o;5377:405::-;5469:5;5518:3;5511:4;5503:6;5499:17;5495:27;5485:122;;5526:79;;:::i;:::-;5485:122;5636:6;5630:13;5661:115;5772:3;5764:6;5757:4;5749:6;5745:17;5661:115;:::i;:::-;5652:124;;5475:307;5377:405;;;;:::o;5804:383::-;5885:5;5934:3;5927:4;5919:6;5915:17;5911:27;5901:122;;5942:79;;:::i;:::-;5901:122;6052:6;6046:13;6077:104;6177:3;6169:6;6162:4;6154:6;6150:17;6077:104;:::i;:::-;6068:113;;5891:296;5804:383;;;;:::o;6193:133::-;6236:5;6274:6;6261:20;6252:29;;6290:30;6314:5;6290:30;:::i;:::-;6193:133;;;;:::o;6332:137::-;6386:5;6417:6;6411:13;6402:22;;6433:30;6457:5;6433:30;:::i;:::-;6332:137;;;;:::o;6475:143::-;6532:5;6563:6;6557:13;6548:22;;6579:33;6606:5;6579:33;:::i;:::-;6475:143;;;;:::o;6637:552::-;6694:8;6704:6;6754:3;6747:4;6739:6;6735:17;6731:27;6721:122;;6762:79;;:::i;:::-;6721:122;6875:6;6862:20;6852:30;;6905:18;6897:6;6894:30;6891:117;;;6927:79;;:::i;:::-;6891:117;7041:4;7033:6;7029:17;7017:29;;7095:3;7087:4;7079:6;7075:17;7065:8;7061:32;7058:41;7055:128;;;7102:79;;:::i;:::-;7055:128;6637:552;;;;;:::o;7208:338::-;7263:5;7312:3;7305:4;7297:6;7293:17;7289:27;7279:122;;7320:79;;:::i;:::-;7279:122;7437:6;7424:20;7462:78;7536:3;7528:6;7521:4;7513:6;7509:17;7462:78;:::i;:::-;7453:87;;7269:277;7208:338;;;;:::o;7565:353::-;7631:5;7680:3;7673:4;7665:6;7661:17;7657:27;7647:122;;7688:79;;:::i;:::-;7647:122;7798:6;7792:13;7823:89;7908:3;7900:6;7893:4;7885:6;7881:17;7823:89;:::i;:::-;7814:98;;7637:281;7565:353;;;;:::o;7924:141::-;7980:5;8011:6;8005:13;7996:22;;8027:32;8053:5;8027:32;:::i;:::-;7924:141;;;;:::o;8071:139::-;8126:5;8157:6;8151:13;8142:22;;8173:31;8198:5;8173:31;:::i;:::-;8071:139;;;;:::o;8230:355::-;8297:5;8346:3;8339:4;8331:6;8327:17;8323:27;8313:122;;8354:79;;:::i;:::-;8313:122;8464:6;8458:13;8489:90;8575:3;8567:6;8560:4;8552:6;8548:17;8489:90;:::i;:::-;8480:99;;8303:282;8230:355;;;;:::o;8619:743::-;8692:5;8736:4;8724:9;8719:3;8715:19;8711:30;8708:117;;;8744:79;;:::i;:::-;8708:117;8843:21;8859:4;8843:21;:::i;:::-;8834:30;;8951:1;8940:9;8936:17;8923:31;8981:18;8973:6;8970:30;8967:117;;;9003:79;;:::i;:::-;8967:117;9123:58;9177:3;9168:6;9157:9;9153:22;9123:58;:::i;:::-;9116:4;9109:5;9105:16;9098:84;8874:319;9254:2;9295:48;9339:3;9330:6;9319:9;9315:22;9295:48;:::i;:::-;9288:4;9281:5;9277:16;9270:74;9203:152;8619:743;;;;:::o;9396:769::-;9480:5;9524:4;9512:9;9507:3;9503:19;9499:30;9496:117;;;9532:79;;:::i;:::-;9496:117;9631:21;9647:4;9631:21;:::i;:::-;9622:30;;9732:1;9721:9;9717:17;9711:24;9762:18;9754:6;9751:30;9748:117;;;9784:79;;:::i;:::-;9748:117;9904:69;9969:3;9960:6;9949:9;9945:22;9904:69;:::i;:::-;9897:4;9890:5;9886:16;9879:95;9662:323;10046:2;10087:59;10142:3;10133:6;10122:9;10118:22;10087:59;:::i;:::-;10080:4;10073:5;10069:16;10062:85;9995:163;9396:769;;;;:::o;10197:1422::-;10268:5;10312:4;10300:9;10295:3;10291:19;10287:30;10284:117;;;10320:79;;:::i;:::-;10284:117;10419:21;10435:4;10419:21;:::i;:::-;10410:30;;10529:1;10518:9;10514:17;10501:31;10559:18;10551:6;10548:30;10545:117;;;10581:79;;:::i;:::-;10545:117;10701:73;10770:3;10761:6;10750:9;10746:22;10701:73;:::i;:::-;10694:4;10687:5;10683:16;10676:99;10450:336;10852:2;10893:47;10936:3;10927:6;10916:9;10912:22;10893:47;:::i;:::-;10886:4;10879:5;10875:16;10868:73;10796:156;11016:2;11057:47;11100:3;11091:6;11080:9;11076:22;11057:47;:::i;:::-;11050:4;11043:5;11039:16;11032:73;10962:154;11192:2;11233:47;11276:3;11267:6;11256:9;11252:22;11233:47;:::i;:::-;11226:4;11219:5;11215:16;11208:73;11126:166;11350:3;11392:48;11436:3;11427:6;11416:9;11412:22;11392:48;:::i;:::-;11385:4;11378:5;11374:16;11367:74;11302:150;11510:3;11552:48;11596:3;11587:6;11576:9;11572:22;11552:48;:::i;:::-;11545:4;11538:5;11534:16;11527:74;11462:150;10197:1422;;;;:::o;11651:1492::-;11733:5;11777:4;11765:9;11760:3;11756:19;11752:30;11749:117;;;11785:79;;:::i;:::-;11749:117;11884:21;11900:4;11884:21;:::i;:::-;11875:30;;11987:1;11976:9;11972:17;11966:24;12017:18;12009:6;12006:30;12003:117;;;12039:79;;:::i;:::-;12003:117;12159:84;12239:3;12230:6;12219:9;12215:22;12159:84;:::i;:::-;12152:4;12145:5;12141:16;12134:110;11915:340;12321:2;12362:58;12416:3;12407:6;12396:9;12392:22;12362:58;:::i;:::-;12355:4;12348:5;12344:16;12337:84;12265:167;12496:2;12537:58;12591:3;12582:6;12571:9;12567:22;12537:58;:::i;:::-;12530:4;12523:5;12519:16;12512:84;12442:165;12683:2;12724:58;12778:3;12769:6;12758:9;12754:22;12724:58;:::i;:::-;12717:4;12710:5;12706:16;12699:84;12617:177;12852:3;12894:59;12949:3;12940:6;12929:9;12925:22;12894:59;:::i;:::-;12887:4;12880:5;12876:16;12869:85;12804:161;13023:3;13065:59;13120:3;13111:6;13100:9;13096:22;13065:59;:::i;:::-;13058:4;13051:5;13047:16;13040:85;12975:161;11651:1492;;;;:::o;13177:756::-;13250:5;13294:4;13282:9;13277:3;13273:19;13269:30;13266:117;;;13302:79;;:::i;:::-;13266:117;13401:21;13417:4;13401:21;:::i;:::-;13392:30;;13484:1;13524:46;13566:3;13557:6;13546:9;13542:22;13524:46;:::i;:::-;13517:4;13510:5;13506:16;13499:72;13432:150;13670:2;13659:9;13655:18;13642:32;13701:18;13693:6;13690:30;13687:117;;;13723:79;;:::i;:::-;13687:117;13843:71;13910:3;13901:6;13890:9;13886:22;13843:71;:::i;:::-;13836:4;13829:5;13825:16;13818:97;13592:334;13177:756;;;;:::o;13939:137::-;13984:5;14022:6;14009:20;14000:29;;14038:32;14064:5;14038:32;:::i;:::-;13939:137;;;;:::o;14082:141::-;14138:5;14169:6;14163:13;14154:22;;14185:32;14211:5;14185:32;:::i;:::-;14082:141;;;;:::o;14229:137::-;14274:5;14312:6;14299:20;14290:29;;14328:32;14354:5;14328:32;:::i;:::-;14229:137;;;;:::o;14372:141::-;14428:5;14459:6;14453:13;14444:22;;14475:32;14501:5;14475:32;:::i;:::-;14372:141;;;;:::o;14519:135::-;14563:5;14601:6;14588:20;14579:29;;14617:31;14642:5;14617:31;:::i;:::-;14519:135;;;;:::o;14660:139::-;14715:5;14746:6;14740:13;14731:22;;14762:31;14787:5;14762:31;:::i;:::-;14660:139;;;;:::o;14805:552::-;14899:6;14948:2;14936:9;14927:7;14923:23;14919:32;14916:119;;;14954:79;;:::i;:::-;14916:119;15095:1;15084:9;15080:17;15074:24;15125:18;15117:6;15114:30;15111:117;;;15147:79;;:::i;:::-;15111:117;15252:88;15332:7;15323:6;15312:9;15308:22;15252:88;:::i;:::-;15242:98;;15045:305;14805:552;;;;:::o;15363:550::-;15456:6;15505:2;15493:9;15484:7;15480:23;15476:32;15473:119;;;15511:79;;:::i;:::-;15473:119;15652:1;15641:9;15637:17;15631:24;15682:18;15674:6;15671:30;15668:117;;;15704:79;;:::i;:::-;15668:117;15809:87;15888:7;15879:6;15868:9;15864:22;15809:87;:::i;:::-;15799:97;;15602:304;15363:550;;;;:::o;15919:574::-;16024:6;16073:2;16061:9;16052:7;16048:23;16044:32;16041:119;;;16079:79;;:::i;:::-;16041:119;16220:1;16209:9;16205:17;16199:24;16250:18;16242:6;16239:30;16236:117;;;16272:79;;:::i;:::-;16236:117;16377:99;16468:7;16459:6;16448:9;16444:22;16377:99;:::i;:::-;16367:109;;16170:316;15919:574;;;;:::o;16499:552::-;16593:6;16642:2;16630:9;16621:7;16617:23;16613:32;16610:119;;;16648:79;;:::i;:::-;16610:119;16789:1;16778:9;16774:17;16768:24;16819:18;16811:6;16808:30;16805:117;;;16841:79;;:::i;:::-;16805:117;16946:88;17026:7;17017:6;17006:9;17002:22;16946:88;:::i;:::-;16936:98;;16739:305;16499:552;;;;:::o;17057:345::-;17124:6;17173:2;17161:9;17152:7;17148:23;17144:32;17141:119;;;17179:79;;:::i;:::-;17141:119;17299:1;17324:61;17377:7;17368:6;17357:9;17353:22;17324:61;:::i;:::-;17314:71;;17270:125;17057:345;;;;:::o;17408:351::-;17478:6;17527:2;17515:9;17506:7;17502:23;17498:32;17495:119;;;17533:79;;:::i;:::-;17495:119;17653:1;17678:64;17734:7;17725:6;17714:9;17710:22;17678:64;:::i;:::-;17668:74;;17624:128;17408:351;;;;:::o;17765:527::-;17835:6;17843;17892:2;17880:9;17871:7;17867:23;17863:32;17860:119;;;17898:79;;:::i;:::-;17860:119;18046:1;18035:9;18031:17;18018:31;18076:18;18068:6;18065:30;18062:117;;;18098:79;;:::i;:::-;18062:117;18211:64;18267:7;18258:6;18247:9;18243:22;18211:64;:::i;:::-;18193:82;;;;17989:296;17765:527;;;;;:::o;18298:522::-;18377:6;18426:2;18414:9;18405:7;18401:23;18397:32;18394:119;;;18432:79;;:::i;:::-;18394:119;18573:1;18562:9;18558:17;18552:24;18603:18;18595:6;18592:30;18589:117;;;18625:79;;:::i;:::-;18589:117;18730:73;18795:7;18786:6;18775:9;18771:22;18730:73;:::i;:::-;18720:83;;18523:290;18298:522;;;;:::o;18826:349::-;18895:6;18944:2;18932:9;18923:7;18919:23;18915:32;18912:119;;;18950:79;;:::i;:::-;18912:119;19070:1;19095:63;19150:7;19141:6;19130:9;19126:22;19095:63;:::i;:::-;19085:73;;19041:127;18826:349;;;;:::o;19181:347::-;19249:6;19298:2;19286:9;19277:7;19273:23;19269:32;19266:119;;;19304:79;;:::i;:::-;19266:119;19424:1;19449:62;19503:7;19494:6;19483:9;19479:22;19449:62;:::i;:::-;19439:72;;19395:126;19181:347;;;;:::o;19534:524::-;19614:6;19663:2;19651:9;19642:7;19638:23;19634:32;19631:119;;;19669:79;;:::i;:::-;19631:119;19810:1;19799:9;19795:17;19789:24;19840:18;19832:6;19829:30;19826:117;;;19862:79;;:::i;:::-;19826:117;19967:74;20033:7;20024:6;20013:9;20009:22;19967:74;:::i;:::-;19957:84;;19760:291;19534:524;;;;:::o;20064:533::-;20145:6;20194:2;20182:9;20173:7;20169:23;20165:32;20162:119;;;20200:79;;:::i;:::-;20162:119;20348:1;20337:9;20333:17;20320:31;20378:18;20370:6;20367:30;20364:117;;;20400:79;;:::i;:::-;20364:117;20505:75;20572:7;20563:6;20552:9;20548:22;20505:75;:::i;:::-;20495:85;;20291:299;20064:533;;;;:::o;20603:548::-;20695:6;20744:2;20732:9;20723:7;20719:23;20715:32;20712:119;;;20750:79;;:::i;:::-;20712:119;20891:1;20880:9;20876:17;20870:24;20921:18;20913:6;20910:30;20907:117;;;20943:79;;:::i;:::-;20907:117;21048:86;21126:7;21117:6;21106:9;21102:22;21048:86;:::i;:::-;21038:96;;20841:303;20603:548;;;;:::o;21157:537::-;21240:6;21289:2;21277:9;21268:7;21264:23;21260:32;21257:119;;;21295:79;;:::i;:::-;21257:119;21443:1;21432:9;21428:17;21415:31;21473:18;21465:6;21462:30;21459:117;;;21495:79;;:::i;:::-;21459:117;21600:77;21669:7;21660:6;21649:9;21645:22;21600:77;:::i;:::-;21590:87;;21386:301;21157:537;;;;:::o;21700:327::-;21758:6;21807:2;21795:9;21786:7;21782:23;21778:32;21775:119;;;21813:79;;:::i;:::-;21775:119;21933:1;21958:52;22002:7;21993:6;21982:9;21978:22;21958:52;:::i;:::-;21948:62;;21904:116;21700:327;;;;:::o;22033:349::-;22102:6;22151:2;22139:9;22130:7;22126:23;22122:32;22119:119;;;22157:79;;:::i;:::-;22119:119;22277:1;22302:63;22357:7;22348:6;22337:9;22333:22;22302:63;:::i;:::-;22292:73;;22248:127;22033:349;;;;:::o;22388:191::-;22463:10;22484:52;22532:3;22524:6;22484:52;:::i;:::-;22568:4;22563:3;22559:14;22545:28;;22388:191;;;;:::o;22585:187::-;22658:10;22679:50;22725:3;22717:6;22679:50;:::i;:::-;22761:4;22756:3;22752:14;22738:28;;22585:187;;;;:::o;22778:212::-;22875:10;22910:74;22980:3;22972:6;22910:74;:::i;:::-;22896:88;;22778:212;;;;:::o;22996:191::-;23071:10;23092:52;23140:3;23132:6;23092:52;:::i;:::-;23176:4;23171:3;23167:14;23153:28;;22996:191;;;;:::o;23221:748::-;23346:3;23375:53;23422:5;23375:53;:::i;:::-;23444:93;23530:6;23525:3;23444:93;:::i;:::-;23437:100;;23561:55;23610:5;23561:55;:::i;:::-;23639:7;23670:1;23655:289;23680:6;23677:1;23674:13;23655:289;;;23756:6;23750:13;23783:69;23848:3;23833:13;23783:69;:::i;:::-;23776:76;;23875:59;23927:6;23875:59;:::i;:::-;23865:69;;23715:229;23702:1;23699;23695:9;23690:14;;23655:289;;;23659:14;23960:3;23953:10;;23351:618;;;23221:748;;;;:::o;24001:740::-;24124:3;24153:52;24199:5;24153:52;:::i;:::-;24221:92;24306:6;24301:3;24221:92;:::i;:::-;24214:99;;24337:54;24385:5;24337:54;:::i;:::-;24414:7;24445:1;24430:286;24455:6;24452:1;24449:13;24430:286;;;24531:6;24525:13;24558:67;24621:3;24606:13;24558:67;:::i;:::-;24551:74;;24648:58;24699:6;24648:58;:::i;:::-;24638:68;;24490:226;24477:1;24474;24470:9;24465:14;;24430:286;;;24434:14;24732:3;24725:10;;24129:612;;;24001:740;;;;:::o;24775:1015::-;24922:3;24951:64;25009:5;24951:64;:::i;:::-;25031:104;25128:6;25123:3;25031:104;:::i;:::-;25024:111;;25161:3;25206:4;25198:6;25194:17;25189:3;25185:27;25236:66;25296:5;25236:66;:::i;:::-;25325:7;25356:1;25341:404;25366:6;25363:1;25360:13;25341:404;;;25437:9;25431:4;25427:20;25422:3;25415:33;25488:6;25482:13;25516:92;25603:4;25588:13;25516:92;:::i;:::-;25508:100;;25631:70;25694:6;25631:70;:::i;:::-;25621:80;;25730:4;25725:3;25721:14;25714:21;;25401:344;25388:1;25385;25381:9;25376:14;;25341:404;;;25345:14;25761:4;25754:11;;25781:3;25774:10;;24927:863;;;;;24775:1015;;;;:::o;25824:748::-;25949:3;25978:53;26025:5;25978:53;:::i;:::-;26047:93;26133:6;26128:3;26047:93;:::i;:::-;26040:100;;26164:55;26213:5;26164:55;:::i;:::-;26242:7;26273:1;26258:289;26283:6;26280:1;26277:13;26258:289;;;26359:6;26353:13;26386:69;26451:3;26436:13;26386:69;:::i;:::-;26379:76;;26478:59;26530:6;26478:59;:::i;:::-;26468:69;;26318:229;26305:1;26302;26298:9;26293:14;;26258:289;;;26262:14;26563:3;26556:10;;25954:618;;;25824:748;;;;:::o;26578:117::-;26667:21;26682:5;26667:21;:::i;:::-;26662:3;26655:34;26578:117;;:::o;26701:107::-;26780:21;26795:5;26780:21;:::i;:::-;26775:3;26768:34;26701:107;;:::o;26814:126::-;26909:24;26927:5;26909:24;:::i;:::-;26904:3;26897:37;26814:126;;:::o;26946:376::-;27040:3;27068:38;27100:5;27068:38;:::i;:::-;27122:78;27193:6;27188:3;27122:78;:::i;:::-;27115:85;;27209:52;27254:6;27249:3;27242:4;27235:5;27231:16;27209:52;:::i;:::-;27286:29;27308:6;27286:29;:::i;:::-;27281:3;27277:39;27270:46;;27044:278;26946:376;;;;:::o;27328:356::-;27412:3;27440:38;27472:5;27440:38;:::i;:::-;27494:68;27555:6;27550:3;27494:68;:::i;:::-;27487:75;;27571:52;27616:6;27611:3;27604:4;27597:5;27593:16;27571:52;:::i;:::-;27648:29;27670:6;27648:29;:::i;:::-;27643:3;27639:39;27632:46;;27416:268;27328:356;;;;:::o;27690:165::-;27798:50;27842:5;27798:50;:::i;:::-;27793:3;27786:63;27690:165;;:::o;27861:123::-;27954:23;27971:5;27954:23;:::i;:::-;27949:3;27942:36;27861:123;;:::o;27990:113::-;28073:23;28090:5;28073:23;:::i;:::-;28068:3;28061:36;27990:113;;:::o;28109:120::-;28200:22;28216:5;28200:22;:::i;:::-;28195:3;28188:35;28109:120;;:::o;28235:110::-;28316:22;28332:5;28316:22;:::i;:::-;28311:3;28304:35;28235:110;;:::o;28351:380::-;28447:3;28475:39;28508:5;28475:39;:::i;:::-;28530:79;28602:6;28597:3;28530:79;:::i;:::-;28523:86;;28618:52;28663:6;28658:3;28651:4;28644:5;28640:16;28618:52;:::i;:::-;28695:29;28717:6;28695:29;:::i;:::-;28690:3;28686:39;28679:46;;28451:280;28351:380;;;;:::o;28737:360::-;28823:3;28851:39;28884:5;28851:39;:::i;:::-;28906:69;28968:6;28963:3;28906:69;:::i;:::-;28899:76;;28984:52;29029:6;29024:3;29017:4;29010:5;29006:16;28984:52;:::i;:::-;29061:29;29083:6;29061:29;:::i;:::-;29056:3;29052:39;29045:46;;28827:270;28737:360;;;;:::o;29103:377::-;29209:3;29237:39;29270:5;29237:39;:::i;:::-;29292:89;29374:6;29369:3;29292:89;:::i;:::-;29285:96;;29390:52;29435:6;29430:3;29423:4;29416:5;29412:16;29390:52;:::i;:::-;29467:6;29462:3;29458:16;29451:23;;29213:267;29103:377;;;;:::o;29486:402::-;29646:3;29667:85;29749:2;29744:3;29667:85;:::i;:::-;29660:92;;29761:93;29850:3;29761:93;:::i;:::-;29879:2;29874:3;29870:12;29863:19;;29486:402;;;:::o;29894:::-;30054:3;30075:85;30157:2;30152:3;30075:85;:::i;:::-;30068:92;;30169:93;30258:3;30169:93;:::i;:::-;30287:2;30282:3;30278:12;30271:19;;29894:402;;;:::o;30302:366::-;30444:3;30465:67;30529:2;30524:3;30465:67;:::i;:::-;30458:74;;30541:93;30630:3;30541:93;:::i;:::-;30659:2;30654:3;30650:12;30643:19;;30302:366;;;:::o;30674:402::-;30834:3;30855:85;30937:2;30932:3;30855:85;:::i;:::-;30848:92;;30949:93;31038:3;30949:93;:::i;:::-;31067:2;31062:3;31058:12;31051:19;;30674:402;;;:::o;31082:366::-;31224:3;31245:67;31309:2;31304:3;31245:67;:::i;:::-;31238:74;;31321:93;31410:3;31321:93;:::i;:::-;31439:2;31434:3;31430:12;31423:19;;31082:366;;;:::o;31454:402::-;31614:3;31635:85;31717:2;31712:3;31635:85;:::i;:::-;31628:92;;31729:93;31818:3;31729:93;:::i;:::-;31847:2;31842:3;31838:12;31831:19;;31454:402;;;:::o;31862:400::-;32022:3;32043:84;32125:1;32120:3;32043:84;:::i;:::-;32036:91;;32136:93;32225:3;32136:93;:::i;:::-;32254:1;32249:3;32245:11;32238:18;;31862:400;;;:::o;32268:366::-;32410:3;32431:67;32495:2;32490:3;32431:67;:::i;:::-;32424:74;;32507:93;32596:3;32507:93;:::i;:::-;32625:2;32620:3;32616:12;32609:19;;32268:366;;;:::o;32640:402::-;32800:3;32821:85;32903:2;32898:3;32821:85;:::i;:::-;32814:92;;32915:93;33004:3;32915:93;:::i;:::-;33033:2;33028:3;33024:12;33017:19;;32640:402;;;:::o;33048:::-;33208:3;33229:85;33311:2;33306:3;33229:85;:::i;:::-;33222:92;;33323:93;33412:3;33323:93;:::i;:::-;33441:2;33436:3;33432:12;33425:19;;33048:402;;;:::o;33456:::-;33616:3;33637:85;33719:2;33714:3;33637:85;:::i;:::-;33630:92;;33731:93;33820:3;33731:93;:::i;:::-;33849:2;33844:3;33840:12;33833:19;;33456:402;;;:::o;33864:366::-;34006:3;34027:67;34091:2;34086:3;34027:67;:::i;:::-;34020:74;;34103:93;34192:3;34103:93;:::i;:::-;34221:2;34216:3;34212:12;34205:19;;33864:366;;;:::o;34236:402::-;34396:3;34417:85;34499:2;34494:3;34417:85;:::i;:::-;34410:92;;34511:93;34600:3;34511:93;:::i;:::-;34629:2;34624:3;34620:12;34613:19;;34236:402;;;:::o;34644:400::-;34804:3;34825:84;34907:1;34902:3;34825:84;:::i;:::-;34818:91;;34918:93;35007:3;34918:93;:::i;:::-;35036:1;35031:3;35027:11;35020:18;;34644:400;;;:::o;35050:::-;35210:3;35231:84;35313:1;35308:3;35231:84;:::i;:::-;35224:91;;35324:93;35413:3;35324:93;:::i;:::-;35442:1;35437:3;35433:11;35426:18;;35050:400;;;:::o;35456:402::-;35616:3;35637:85;35719:2;35714:3;35637:85;:::i;:::-;35630:92;;35731:93;35820:3;35731:93;:::i;:::-;35849:2;35844:3;35840:12;35833:19;;35456:402;;;:::o;35864:366::-;36006:3;36027:67;36091:2;36086:3;36027:67;:::i;:::-;36020:74;;36103:93;36192:3;36103:93;:::i;:::-;36221:2;36216:3;36212:12;36205:19;;35864:366;;;:::o;36236:402::-;36396:3;36417:85;36499:2;36494:3;36417:85;:::i;:::-;36410:92;;36511:93;36600:3;36511:93;:::i;:::-;36629:2;36624:3;36620:12;36613:19;;36236:402;;;:::o;36644:366::-;36786:3;36807:67;36871:2;36866:3;36807:67;:::i;:::-;36800:74;;36883:93;36972:3;36883:93;:::i;:::-;37001:2;36996:3;36992:12;36985:19;;36644:366;;;:::o;37016:::-;37158:3;37179:67;37243:2;37238:3;37179:67;:::i;:::-;37172:74;;37255:93;37344:3;37255:93;:::i;:::-;37373:2;37368:3;37364:12;37357:19;;37016:366;;;:::o;37388:402::-;37548:3;37569:85;37651:2;37646:3;37569:85;:::i;:::-;37562:92;;37663:93;37752:3;37663:93;:::i;:::-;37781:2;37776:3;37772:12;37765:19;;37388:402;;;:::o;37796:366::-;37938:3;37959:67;38023:2;38018:3;37959:67;:::i;:::-;37952:74;;38035:93;38124:3;38035:93;:::i;:::-;38153:2;38148:3;38144:12;38137:19;;37796:366;;;:::o;38168:::-;38310:3;38331:67;38395:2;38390:3;38331:67;:::i;:::-;38324:74;;38407:93;38496:3;38407:93;:::i;:::-;38525:2;38520:3;38516:12;38509:19;;38168:366;;;:::o;38540:402::-;38700:3;38721:85;38803:2;38798:3;38721:85;:::i;:::-;38714:92;;38815:93;38904:3;38815:93;:::i;:::-;38933:2;38928:3;38924:12;38917:19;;38540:402;;;:::o;38948:::-;39108:3;39129:85;39211:2;39206:3;39129:85;:::i;:::-;39122:92;;39223:93;39312:3;39223:93;:::i;:::-;39341:2;39336:3;39332:12;39325:19;;38948:402;;;:::o;39356:366::-;39498:3;39519:67;39583:2;39578:3;39519:67;:::i;:::-;39512:74;;39595:93;39684:3;39595:93;:::i;:::-;39713:2;39708:3;39704:12;39697:19;;39356:366;;;:::o;39728:402::-;39888:3;39909:85;39991:2;39986:3;39909:85;:::i;:::-;39902:92;;40003:93;40092:3;40003:93;:::i;:::-;40121:2;40116:3;40112:12;40105:19;;39728:402;;;:::o;40136:::-;40296:3;40317:85;40399:2;40394:3;40317:85;:::i;:::-;40310:92;;40411:93;40500:3;40411:93;:::i;:::-;40529:2;40524:3;40520:12;40513:19;;40136:402;;;:::o;40544:366::-;40686:3;40707:67;40771:2;40766:3;40707:67;:::i;:::-;40700:74;;40783:93;40872:3;40783:93;:::i;:::-;40901:2;40896:3;40892:12;40885:19;;40544:366;;;:::o;40916:402::-;41076:3;41097:85;41179:2;41174:3;41097:85;:::i;:::-;41090:92;;41191:93;41280:3;41191:93;:::i;:::-;41309:2;41304:3;41300:12;41293:19;;40916:402;;;:::o;41324:::-;41484:3;41505:85;41587:2;41582:3;41505:85;:::i;:::-;41498:92;;41599:93;41688:3;41599:93;:::i;:::-;41717:2;41712:3;41708:12;41701:19;;41324:402;;;:::o;41732:366::-;41874:3;41895:67;41959:2;41954:3;41895:67;:::i;:::-;41888:74;;41971:93;42060:3;41971:93;:::i;:::-;42089:2;42084:3;42080:12;42073:19;;41732:366;;;:::o;42104:402::-;42264:3;42285:85;42367:2;42362:3;42285:85;:::i;:::-;42278:92;;42379:93;42468:3;42379:93;:::i;:::-;42497:2;42492:3;42488:12;42481:19;;42104:402;;;:::o;42512:400::-;42672:3;42693:84;42775:1;42770:3;42693:84;:::i;:::-;42686:91;;42786:93;42875:3;42786:93;:::i;:::-;42904:1;42899:3;42895:11;42888:18;;42512:400;;;:::o;42918:::-;43078:3;43099:84;43181:1;43176:3;43099:84;:::i;:::-;43092:91;;43192:93;43281:3;43192:93;:::i;:::-;43310:1;43305:3;43301:11;43294:18;;42918:400;;;:::o;43376:616::-;43491:3;43527:4;43522:3;43518:14;43614:4;43607:5;43603:16;43597:23;43667:3;43661:4;43657:14;43650:4;43645:3;43641:14;43634:38;43693:79;43767:4;43753:12;43693:79;:::i;:::-;43685:87;;43542:241;43867:4;43860:5;43856:16;43850:23;43886:69;43949:4;43944:3;43940:14;43926:12;43886:69;:::i;:::-;43793:172;43982:4;43975:11;;43496:496;43376:616;;;;:::o;44046:1393::-;44167:3;44203:4;44198:3;44194:14;44292:4;44285:5;44281:16;44275:23;44345:3;44339:4;44335:14;44328:4;44323:3;44319:14;44312:38;44371:109;44475:4;44461:12;44371:109;:::i;:::-;44363:117;;44218:273;44580:4;44573:5;44569:16;44563:23;44599:67;44660:4;44655:3;44651:14;44637:12;44599:67;:::i;:::-;44501:175;44763:4;44756:5;44752:16;44746:23;44782:67;44843:4;44838:3;44834:14;44820:12;44782:67;:::i;:::-;44686:173;44958:4;44951:5;44947:16;44941:23;44977:67;45038:4;45033:3;45029:14;45015:12;44977:67;:::i;:::-;44869:185;45135:4;45128:5;45124:16;45118:23;45154:69;45217:4;45212:3;45208:14;45194:12;45154:69;:::i;:::-;45064:169;45314:4;45307:5;45303:16;45297:23;45333:69;45396:4;45391:3;45387:14;45373:12;45333:69;:::i;:::-;45243:169;45429:4;45422:11;;44172:1267;44046:1393;;;;:::o;45493:1383::-;45604:3;45640:4;45635:3;45631:14;45729:4;45722:5;45718:16;45712:23;45782:3;45776:4;45772:14;45765:4;45760:3;45756:14;45749:38;45808:109;45912:4;45898:12;45808:109;:::i;:::-;45800:117;;45655:273;46017:4;46010:5;46006:16;46000:23;46036:67;46097:4;46092:3;46088:14;46074:12;46036:67;:::i;:::-;45938:175;46200:4;46193:5;46189:16;46183:23;46219:67;46280:4;46275:3;46271:14;46257:12;46219:67;:::i;:::-;46123:173;46395:4;46388:5;46384:16;46378:23;46414:67;46475:4;46470:3;46466:14;46452:12;46414:67;:::i;:::-;46306:185;46572:4;46565:5;46561:16;46555:23;46591:69;46654:4;46649:3;46645:14;46631:12;46591:69;:::i;:::-;46501:169;46751:4;46744:5;46740:16;46734:23;46770:69;46833:4;46828:3;46824:14;46810:12;46770:69;:::i;:::-;46680:169;46866:4;46859:11;;45609:1267;45493:1383;;;;:::o;46934:650::-;47059:3;47095:4;47090:3;47086:14;47185:4;47178:5;47174:16;47168:23;47204:65;47263:4;47258:3;47254:14;47240:12;47204:65;:::i;:::-;47110:169;47362:4;47355:5;47351:16;47345:23;47415:3;47409:4;47405:14;47398:4;47393:3;47389:14;47382:38;47441:105;47541:4;47527:12;47441:105;:::i;:::-;47433:113;;47289:268;47574:4;47567:11;;47064:520;46934:650;;;;:::o;47590:113::-;47673:23;47690:5;47673:23;:::i;:::-;47668:3;47661:36;47590:113;;:::o;47709:123::-;47802:23;47819:5;47802:23;:::i;:::-;47797:3;47790:36;47709:123;;:::o;47838:113::-;47921:23;47938:5;47921:23;:::i;:::-;47916:3;47909:36;47838:113;;:::o;47957:110::-;48038:22;48054:5;48038:22;:::i;:::-;48033:3;48026:35;47957:110;;:::o;48073:807::-;48407:3;48429:148;48573:3;48429:148;:::i;:::-;48422:155;;48594:95;48685:3;48676:6;48594:95;:::i;:::-;48587:102;;48706:148;48850:3;48706:148;:::i;:::-;48699:155;;48871:3;48864:10;;48073:807;;;;:::o;48886:2085::-;49667:3;49689:148;49833:3;49689:148;:::i;:::-;49682:155;;49854:95;49945:3;49936:6;49854:95;:::i;:::-;49847:102;;49966:148;50110:3;49966:148;:::i;:::-;49959:155;;50131:95;50222:3;50213:6;50131:95;:::i;:::-;50124:102;;50243:148;50387:3;50243:148;:::i;:::-;50236:155;;50408:95;50499:3;50490:6;50408:95;:::i;:::-;50401:102;;50520:148;50664:3;50520:148;:::i;:::-;50513:155;;50685:95;50776:3;50767:6;50685:95;:::i;:::-;50678:102;;50797:148;50941:3;50797:148;:::i;:::-;50790:155;;50962:3;50955:10;;48886:2085;;;;;;;:::o;50977:::-;51758:3;51780:148;51924:3;51780:148;:::i;:::-;51773:155;;51945:95;52036:3;52027:6;51945:95;:::i;:::-;51938:102;;52057:148;52201:3;52057:148;:::i;:::-;52050:155;;52222:95;52313:3;52304:6;52222:95;:::i;:::-;52215:102;;52334:148;52478:3;52334:148;:::i;:::-;52327:155;;52499:95;52590:3;52581:6;52499:95;:::i;:::-;52492:102;;52611:148;52755:3;52611:148;:::i;:::-;52604:155;;52776:95;52867:3;52858:6;52776:95;:::i;:::-;52769:102;;52888:148;53032:3;52888:148;:::i;:::-;52881:155;;53053:3;53046:10;;50977:2085;;;;;;;:::o;53068:807::-;53402:3;53424:148;53568:3;53424:148;:::i;:::-;53417:155;;53589:95;53680:3;53671:6;53589:95;:::i;:::-;53582:102;;53701:148;53845:3;53701:148;:::i;:::-;53694:155;;53866:3;53859:10;;53068:807;;;;:::o;53881:::-;54215:3;54237:148;54381:3;54237:148;:::i;:::-;54230:155;;54402:95;54493:3;54484:6;54402:95;:::i;:::-;54395:102;;54514:148;54658:3;54514:148;:::i;:::-;54507:155;;54679:3;54672:10;;53881:807;;;;:::o;54694:::-;55028:3;55050:148;55194:3;55050:148;:::i;:::-;55043:155;;55215:95;55306:3;55297:6;55215:95;:::i;:::-;55208:102;;55327:148;55471:3;55327:148;:::i;:::-;55320:155;;55492:3;55485:10;;54694:807;;;;:::o;55507:2085::-;56288:3;56310:148;56454:3;56310:148;:::i;:::-;56303:155;;56475:95;56566:3;56557:6;56475:95;:::i;:::-;56468:102;;56587:148;56731:3;56587:148;:::i;:::-;56580:155;;56752:95;56843:3;56834:6;56752:95;:::i;:::-;56745:102;;56864:148;57008:3;56864:148;:::i;:::-;56857:155;;57029:95;57120:3;57111:6;57029:95;:::i;:::-;57022:102;;57141:148;57285:3;57141:148;:::i;:::-;57134:155;;57306:95;57397:3;57388:6;57306:95;:::i;:::-;57299:102;;57418:148;57562:3;57418:148;:::i;:::-;57411:155;;57583:3;57576:10;;55507:2085;;;;;;;:::o;57598:::-;58379:3;58401:148;58545:3;58401:148;:::i;:::-;58394:155;;58566:95;58657:3;58648:6;58566:95;:::i;:::-;58559:102;;58678:148;58822:3;58678:148;:::i;:::-;58671:155;;58843:95;58934:3;58925:6;58843:95;:::i;:::-;58836:102;;58955:148;59099:3;58955:148;:::i;:::-;58948:155;;59120:95;59211:3;59202:6;59120:95;:::i;:::-;59113:102;;59232:148;59376:3;59232:148;:::i;:::-;59225:155;;59397:95;59488:3;59479:6;59397:95;:::i;:::-;59390:102;;59509:148;59653:3;59509:148;:::i;:::-;59502:155;;59674:3;59667:10;;57598:2085;;;;;;;:::o;59689:807::-;60023:3;60045:148;60189:3;60045:148;:::i;:::-;60038:155;;60210:95;60301:3;60292:6;60210:95;:::i;:::-;60203:102;;60322:148;60466:3;60322:148;:::i;:::-;60315:155;;60487:3;60480:10;;59689:807;;;;:::o;60502:1659::-;61134:3;61156:148;61300:3;61156:148;:::i;:::-;61149:155;;61321:95;61412:3;61403:6;61321:95;:::i;:::-;61314:102;;61433:148;61577:3;61433:148;:::i;:::-;61426:155;;61598:95;61689:3;61680:6;61598:95;:::i;:::-;61591:102;;61710:148;61854:3;61710:148;:::i;:::-;61703:155;;61875:95;61966:3;61957:6;61875:95;:::i;:::-;61868:102;;61987:148;62131:3;61987:148;:::i;:::-;61980:155;;62152:3;62145:10;;60502:1659;;;;;;:::o;62167:1287::-;62645:3;62667:148;62811:3;62667:148;:::i;:::-;62660:155;;62832:95;62923:3;62914:6;62832:95;:::i;:::-;62825:102;;62944:148;63088:3;62944:148;:::i;:::-;62937:155;;63109:95;63200:3;63191:6;63109:95;:::i;:::-;63102:102;;63221:95;63312:3;63303:6;63221:95;:::i;:::-;63214:102;;63333:95;63424:3;63415:6;63333:95;:::i;:::-;63326:102;;63445:3;63438:10;;62167:1287;;;;;;;:::o;63460:807::-;63794:3;63816:148;63960:3;63816:148;:::i;:::-;63809:155;;63981:95;64072:3;64063:6;63981:95;:::i;:::-;63974:102;;64093:148;64237:3;64093:148;:::i;:::-;64086:155;;64258:3;64251:10;;63460:807;;;;:::o;64273:385::-;64422:4;64460:2;64449:9;64445:18;64437:26;;64509:9;64503:4;64499:20;64495:1;64484:9;64480:17;64473:47;64537:114;64646:4;64637:6;64537:114;:::i;:::-;64529:122;;64273:385;;;;:::o;64664:381::-;64811:4;64849:2;64838:9;64834:18;64826:26;;64898:9;64892:4;64888:20;64884:1;64873:9;64869:17;64862:47;64926:112;65033:4;65024:6;64926:112;:::i;:::-;64918:120;;64664:381;;;;:::o;65051:429::-;65222:4;65260:2;65249:9;65245:18;65237:26;;65309:9;65303:4;65299:20;65295:1;65284:9;65280:17;65273:47;65337:136;65468:4;65459:6;65337:136;:::i;:::-;65329:144;;65051:429;;;;:::o;65486:385::-;65635:4;65673:2;65662:9;65658:18;65650:26;;65722:9;65716:4;65712:20;65708:1;65697:9;65693:17;65686:47;65750:114;65859:4;65850:6;65750:114;:::i;:::-;65742:122;;65486:385;;;;:::o;65877:226::-;65972:4;66010:2;65999:9;65995:18;65987:26;;66023:73;66093:1;66082:9;66078:17;66069:6;66023:73;:::i;:::-;65877:226;;;;:::o;66109:238::-;66210:4;66248:2;66237:9;66233:18;66225:26;;66261:79;66337:1;66326:9;66322:17;66313:6;66261:79;:::i;:::-;66109:238;;;;:::o;66353:325::-;66472:4;66510:2;66499:9;66495:18;66487:26;;66559:9;66553:4;66549:20;66545:1;66534:9;66530:17;66523:47;66587:84;66666:4;66657:6;66587:84;:::i;:::-;66579:92;;66353:325;;;;:::o;66684:264::-;66798:4;66836:2;66825:9;66821:18;66813:26;;66849:92;66938:1;66927:9;66923:17;66914:6;66849:92;:::i;:::-;66684:264;;;;:::o;66954:473::-;67116:4;67154:2;67143:9;67139:18;67131:26;;67167:92;67256:1;67245:9;67241:17;67232:6;67167:92;:::i;:::-;67306:9;67300:4;67296:20;67291:2;67280:9;67276:18;67269:48;67334:86;67415:4;67406:6;67334:86;:::i;:::-;67326:94;;66954:473;;;;;:::o;67433:234::-;67532:4;67570:2;67559:9;67555:18;67547:26;;67583:77;67657:1;67646:9;67642:17;67633:6;67583:77;:::i;:::-;67433:234;;;;:::o;67673:230::-;67770:4;67808:2;67797:9;67793:18;67785:26;;67821:75;67893:1;67882:9;67878:17;67869:6;67821:75;:::i;:::-;67673:230;;;;:::o;67909:329::-;68030:4;68068:2;68057:9;68053:18;68045:26;;68117:9;68111:4;68107:20;68103:1;68092:9;68088:17;68081:47;68145:86;68226:4;68217:6;68145:86;:::i;:::-;68137:94;;67909:329;;;;:::o;68244:419::-;68410:4;68448:2;68437:9;68433:18;68425:26;;68497:9;68491:4;68487:20;68483:1;68472:9;68468:17;68461:47;68525:131;68651:4;68525:131;:::i;:::-;68517:139;;68244:419;;;:::o;68669:::-;68835:4;68873:2;68862:9;68858:18;68850:26;;68922:9;68916:4;68912:20;68908:1;68897:9;68893:17;68886:47;68950:131;69076:4;68950:131;:::i;:::-;68942:139;;68669:419;;;:::o;69094:::-;69260:4;69298:2;69287:9;69283:18;69275:26;;69347:9;69341:4;69337:20;69333:1;69322:9;69318:17;69311:47;69375:131;69501:4;69375:131;:::i;:::-;69367:139;;69094:419;;;:::o;69519:::-;69685:4;69723:2;69712:9;69708:18;69700:26;;69772:9;69766:4;69762:20;69758:1;69747:9;69743:17;69736:47;69800:131;69926:4;69800:131;:::i;:::-;69792:139;;69519:419;;;:::o;69944:::-;70110:4;70148:2;70137:9;70133:18;70125:26;;70197:9;70191:4;70187:20;70183:1;70172:9;70168:17;70161:47;70225:131;70351:4;70225:131;:::i;:::-;70217:139;;69944:419;;;:::o;70369:::-;70535:4;70573:2;70562:9;70558:18;70550:26;;70622:9;70616:4;70612:20;70608:1;70597:9;70593:17;70586:47;70650:131;70776:4;70650:131;:::i;:::-;70642:139;;70369:419;;;:::o;70794:::-;70960:4;70998:2;70987:9;70983:18;70975:26;;71047:9;71041:4;71037:20;71033:1;71022:9;71018:17;71011:47;71075:131;71201:4;71075:131;:::i;:::-;71067:139;;70794:419;;;:::o;71219:::-;71385:4;71423:2;71412:9;71408:18;71400:26;;71472:9;71466:4;71462:20;71458:1;71447:9;71443:17;71436:47;71500:131;71626:4;71500:131;:::i;:::-;71492:139;;71219:419;;;:::o;71644:::-;71810:4;71848:2;71837:9;71833:18;71825:26;;71897:9;71891:4;71887:20;71883:1;71872:9;71868:17;71861:47;71925:131;72051:4;71925:131;:::i;:::-;71917:139;;71644:419;;;:::o;72069:::-;72235:4;72273:2;72262:9;72258:18;72250:26;;72322:9;72316:4;72312:20;72308:1;72297:9;72293:17;72286:47;72350:131;72476:4;72350:131;:::i;:::-;72342:139;;72069:419;;;:::o;72494:::-;72660:4;72698:2;72687:9;72683:18;72675:26;;72747:9;72741:4;72737:20;72733:1;72722:9;72718:17;72711:47;72775:131;72901:4;72775:131;:::i;:::-;72767:139;;72494:419;;;:::o;72919:::-;73085:4;73123:2;73112:9;73108:18;73100:26;;73172:9;73166:4;73162:20;73158:1;73147:9;73143:17;73136:47;73200:131;73326:4;73200:131;:::i;:::-;73192:139;;72919:419;;;:::o;73344:377::-;73489:4;73527:2;73516:9;73512:18;73504:26;;73576:9;73570:4;73566:20;73562:1;73551:9;73547:17;73540:47;73604:110;73709:4;73700:6;73604:110;:::i;:::-;73596:118;;73344:377;;;;:::o;73727:385::-;73876:4;73914:2;73903:9;73899:18;73891:26;;73963:9;73957:4;73953:20;73949:1;73938:9;73934:17;73927:47;73991:114;74100:4;74091:6;73991:114;:::i;:::-;73983:122;;73727:385;;;;:::o;74118:234::-;74217:4;74255:2;74244:9;74240:18;74232:26;;74268:77;74342:1;74331:9;74327:17;74318:6;74268:77;:::i;:::-;74118:234;;;;:::o;74358:129::-;74392:6;74419:20;;:::i;:::-;74409:30;;74448:33;74476:4;74468:6;74448:33;:::i;:::-;74358:129;;;:::o;74493:75::-;74526:6;74559:2;74553:9;74543:19;;74493:75;:::o;74574:310::-;74650:4;74740:18;74732:6;74729:30;74726:56;;;74762:18;;:::i;:::-;74726:56;74812:4;74804:6;74800:17;74792:25;;74872:4;74866;74862:15;74854:23;;74574:310;;;:::o;74890:309::-;74965:4;75055:18;75047:6;75044:30;75041:56;;;75077:18;;:::i;:::-;75041:56;75127:4;75119:6;75115:17;75107:25;;75187:4;75181;75177:15;75169:23;;74890:309;;;:::o;75205:321::-;75292:4;75382:18;75374:6;75371:30;75368:56;;;75404:18;;:::i;:::-;75368:56;75454:4;75446:6;75442:17;75434:25;;75514:4;75508;75504:15;75496:23;;75205:321;;;:::o;75532:310::-;75608:4;75698:18;75690:6;75687:30;75684:56;;;75720:18;;:::i;:::-;75684:56;75770:4;75762:6;75758:17;75750:25;;75830:4;75824;75820:15;75812:23;;75532:310;;;:::o;75848:307::-;75909:4;75999:18;75991:6;75988:30;75985:56;;;76021:18;;:::i;:::-;75985:56;76059:29;76081:6;76059:29;:::i;:::-;76051:37;;76143:4;76137;76133:15;76125:23;;75848:307;;;:::o;76161:308::-;76223:4;76313:18;76305:6;76302:30;76299:56;;;76335:18;;:::i;:::-;76299:56;76373:29;76395:6;76373:29;:::i;:::-;76365:37;;76457:4;76451;76447:15;76439:23;;76161:308;;;:::o;76475:131::-;76541:4;76564:3;76556:11;;76594:4;76589:3;76585:14;76577:22;;76475:131;;;:::o;76612:130::-;76677:4;76700:3;76692:11;;76730:4;76725:3;76721:14;76713:22;;76612:130;;;:::o;76748:142::-;76825:4;76848:3;76840:11;;76878:4;76873:3;76869:14;76861:22;;76748:142;;;:::o;76896:131::-;76962:4;76985:3;76977:11;;77015:4;77010:3;77006:14;76998:22;;76896:131;;;:::o;77033:113::-;77099:6;77133:5;77127:12;77117:22;;77033:113;;;:::o;77152:112::-;77217:6;77251:5;77245:12;77235:22;;77152:112;;;:::o;77270:124::-;77347:6;77381:5;77375:12;77365:22;;77270:124;;;:::o;77400:113::-;77466:6;77500:5;77494:12;77484:22;;77400:113;;;:::o;77519:98::-;77570:6;77604:5;77598:12;77588:22;;77519:98;;;:::o;77623:99::-;77675:6;77709:5;77703:12;77693:22;;77623:99;;;:::o;77728:112::-;77797:4;77829;77824:3;77820:14;77812:22;;77728:112;;;:::o;77846:111::-;77914:4;77946;77941:3;77937:14;77929:22;;77846:111;;;:::o;77963:123::-;78043:4;78075;78070:3;78066:14;78058:22;;77963:123;;;:::o;78092:112::-;78161:4;78193;78188:3;78184:14;78176:22;;78092:112;;;:::o;78210:191::-;78316:11;78350:6;78345:3;78338:19;78390:4;78385:3;78381:14;78366:29;;78210:191;;;;:::o;78407:190::-;78512:11;78546:6;78541:3;78534:19;78586:4;78581:3;78577:14;78562:29;;78407:190;;;;:::o;78603:202::-;78720:11;78754:6;78749:3;78742:19;78794:4;78789:3;78785:14;78770:29;;78603:202;;;;:::o;78811:191::-;78917:11;78951:6;78946:3;78939:19;78991:4;78986:3;78982:14;78967:29;;78811:191;;;;:::o;79008:176::-;79099:11;79133:6;79128:3;79121:19;79173:4;79168:3;79164:14;79149:29;;79008:176;;;;:::o;79190:166::-;79271:11;79305:6;79300:3;79293:19;79345:4;79340:3;79336:14;79321:29;;79190:166;;;;:::o;79362:169::-;79446:11;79480:6;79475:3;79468:19;79520:4;79515:3;79511:14;79496:29;;79362:169;;;;:::o;79537:177::-;79629:11;79663:6;79658:3;79651:19;79703:4;79698:3;79694:14;79679:29;;79537:177;;;;:::o;79720:167::-;79802:11;79836:6;79831:3;79824:19;79876:4;79871:3;79867:14;79852:29;;79720:167;;;;:::o;79893:148::-;79995:11;80032:3;80017:18;;79893:148;;;;:::o;80047:237::-;80085:3;80104:18;80120:1;80104:18;:::i;:::-;80099:23;;80136:18;80152:1;80136:18;:::i;:::-;80131:23;;80226:1;80220:4;80216:12;80213:1;80210:19;80207:45;;;80232:18;;:::i;:::-;80207:45;80276:1;80273;80269:9;80262:16;;80047:237;;;;:::o;80290:182::-;80329:1;80346:19;80363:1;80346:19;:::i;:::-;80341:24;;80379:19;80396:1;80379:19;:::i;:::-;80374:24;;80417:1;80407:35;;80422:18;;:::i;:::-;80407:35;80464:1;80461;80457:9;80452:14;;80290:182;;;;:::o;80478:90::-;80512:7;80555:5;80548:13;80541:21;80530:32;;80478:90;;;:::o;80574:77::-;80611:7;80640:5;80629:16;;80574:77;;;:::o;80657:141::-;80709:7;80738:5;80727:16;;80744:48;80786:5;80744:48;:::i;:::-;80657:141;;;:::o;80804:92::-;80840:7;80884:5;80880:2;80869:21;80858:32;;80804:92;;;:::o;80902:90::-;80937:7;80980:5;80977:1;80966:20;80955:31;;80902:90;;;:::o;80998:93::-;81034:7;81074:10;81067:5;81063:22;81052:33;;80998:93;;;:::o;81097:101::-;81133:7;81173:18;81166:5;81162:30;81151:41;;81097:101;;;:::o;81204:86::-;81239:7;81279:4;81272:5;81268:16;81257:27;;81204:86;;;:::o;81296:141::-;81359:9;81392:39;81425:5;81392:39;:::i;:::-;81379:52;;81296:141;;;:::o;81443:154::-;81527:6;81522:3;81517;81504:30;81589:1;81580:6;81575:3;81571:16;81564:27;81443:154;;;:::o;81603:307::-;81671:1;81681:113;81695:6;81692:1;81689:13;81681:113;;;81780:1;81775:3;81771:11;81765:18;81761:1;81756:3;81752:11;81745:39;81717:2;81714:1;81710:10;81705:15;;81681:113;;;81812:6;81809:1;81806:13;81803:101;;;81892:1;81883:6;81878:3;81874:16;81867:27;81803:101;81652:258;81603:307;;;:::o;81916:281::-;81999:27;82021:4;81999:27;:::i;:::-;81991:6;81987:40;82129:6;82117:10;82114:22;82093:18;82081:10;82078:34;82075:62;82072:88;;;82140:18;;:::i;:::-;82072:88;82180:10;82176:2;82169:22;81959:238;81916:281;;:::o;82203:173::-;82234:1;82251:19;82268:1;82251:19;:::i;:::-;82246:24;;82284:19;82301:1;82284:19;:::i;:::-;82279:24;;82322:1;82312:35;;82327:18;;:::i;:::-;82312:35;82368:1;82365;82361:9;82356:14;;82203:173;;;;:::o;82382:180::-;82430:77;82427:1;82420:88;82527:4;82524:1;82517:15;82551:4;82548:1;82541:15;82568:180;82616:77;82613:1;82606:88;82713:4;82710:1;82703:15;82737:4;82734:1;82727:15;82754:180;82802:77;82799:1;82792:88;82899:4;82896:1;82889:15;82923:4;82920:1;82913:15;82940:180;82988:77;82985:1;82978:88;83085:4;83082:1;83075:15;83109:4;83106:1;83099:15;83126:180;83174:77;83171:1;83164:88;83271:4;83268:1;83261:15;83295:4;83292:1;83285:15;83312:117;83421:1;83418;83411:12;83435:117;83544:1;83541;83534:12;83558:117;83667:1;83664;83657:12;83681:117;83790:1;83787;83780:12;83804:117;83913:1;83910;83903:12;83927:117;84036:1;84033;84026:12;84050:117;84159:1;84156;84149:12;84173:117;84282:1;84279;84272:12;84296:102;84337:6;84388:2;84384:7;84379:2;84372:5;84368:14;84364:28;84354:38;;84296:102;;;:::o;84404:241::-;84544:34;84540:1;84532:6;84528:14;84521:58;84613:24;84608:2;84600:6;84596:15;84589:49;84404:241;:::o;84651:173::-;84791:25;84787:1;84779:6;84775:14;84768:49;84651:173;:::o;84830:293::-;84970:34;84966:1;84958:6;84954:14;84947:58;85039:34;85034:2;85026:6;85022:15;85015:59;85108:7;85103:2;85095:6;85091:15;85084:32;84830:293;:::o;85129:171::-;85269:19;85265:1;85257:6;85253:14;85246:43;85129:171;:::o;85310:314::-;85454:34;85450:1;85442:6;85438:14;85431:58;85527:34;85522:2;85514:6;85510:15;85503:59;85600:12;85595:2;85587:6;85583:15;85576:37;85310:314;:::o;85634:187::-;85778:31;85774:1;85766:6;85762:14;85755:55;85634:187;:::o;85831:164::-;85975:8;85971:1;85963:6;85959:14;85952:32;85831:164;:::o;86005:315::-;86149:34;86145:1;86137:6;86133:14;86126:58;86222:34;86217:2;86209:6;86205:15;86198:59;86295:13;86290:2;86282:6;86278:15;86271:38;86005:315;:::o;86330:185::-;86474:29;86470:1;86462:6;86458:14;86451:53;86330:185;:::o;86525:174::-;86669:18;86665:1;86657:6;86653:14;86646:42;86525:174;:::o;86709:243::-;86853:34;86849:1;86841:6;86837:14;86830:58;86926:14;86921:2;86913:6;86909:15;86902:39;86709:243;:::o;86962:312::-;87106:34;87102:1;87094:6;87090:14;87083:58;87179:34;87174:2;87166:6;87162:15;87155:59;87252:10;87247:2;87239:6;87235:15;87228:35;86962:312;:::o;87284:170::-;87428:14;87424:1;87416:6;87412:14;87405:38;87284:170;:::o;87464:151::-;87604:3;87600:1;87592:6;87588:14;87581:27;87464:151;:::o;87621:156::-;87761:8;87757:1;87749:6;87745:14;87738:32;87621:156;:::o;87783:165::-;87923:17;87919:1;87911:6;87907:14;87900:41;87783:165;:::o;87954:296::-;88094:34;88090:1;88082:6;88078:14;88071:58;88163:34;88158:2;88150:6;88146:15;88139:59;88232:10;88227:2;88219:6;88215:15;88208:35;87954:296;:::o;88256:166::-;88396:18;88392:1;88384:6;88380:14;88373:42;88256:166;:::o;88428:298::-;88568:34;88564:1;88556:6;88552:14;88545:58;88637:34;88632:2;88624:6;88620:15;88613:59;88706:12;88701:2;88693:6;88689:15;88682:37;88428:298;:::o;88732:::-;88872:34;88868:1;88860:6;88856:14;88849:58;88941:34;88936:2;88928:6;88924:15;88917:59;89010:12;89005:2;88997:6;88993:15;88986:37;88732:298;:::o;89036:224::-;89176:34;89172:1;89164:6;89160:14;89153:58;89245:3;89240:2;89232:6;89228:15;89221:28;89036:224;:::o;89270:311::-;89414:34;89410:1;89402:6;89398:14;89391:58;89487:34;89482:2;89474:6;89470:15;89463:59;89560:9;89555:2;89547:6;89543:15;89536:34;89270:311;:::o;89591:312::-;89735:34;89731:1;89723:6;89719:14;89712:58;89808:34;89803:2;89795:6;89791:15;89784:59;89881:10;89876:2;89868:6;89864:15;89857:35;89591:312;:::o;89913:184::-;90057:28;90053:1;90045:6;90041:14;90034:52;89913:184;:::o;90107:235::-;90251:34;90247:1;90239:6;90235:14;90228:58;90324:6;90319:2;90311:6;90307:15;90300:31;90107:235;:::o;90352:311::-;90496:34;90492:1;90484:6;90480:14;90473:58;90569:34;90564:2;90556:6;90552:15;90545:59;90642:9;90637:2;90629:6;90625:15;90618:34;90352:311;:::o;90673:186::-;90817:30;90813:1;90805:6;90801:14;90794:54;90673:186;:::o;90869:184::-;91013:28;91009:1;91001:6;90997:14;90990:52;90869:184;:::o;91063:310::-;91207:34;91203:1;91195:6;91191:14;91184:58;91280:34;91275:2;91267:6;91263:15;91256:59;91353:8;91348:2;91340:6;91336:15;91329:33;91063:310;:::o;91383:187::-;91527:31;91523:1;91515:6;91511:14;91504:55;91383:187;:::o;91580:168::-;91724:12;91720:1;91712:6;91708:14;91701:36;91580:168;:::o;91758:313::-;91902:34;91898:1;91890:6;91886:14;91879:58;91975:34;91970:2;91962:6;91958:15;91951:59;92048:11;92043:2;92035:6;92031:15;92024:36;91758:313;:::o;92081:243::-;92225:34;92221:1;92213:6;92209:14;92202:58;92298:10;92293:2;92285:6;92281:15;92274:35;92081:243;:::o;92338:174::-;92486:10;92482:1;92474:6;92470:14;92463:34;92338:174;:::o;92526:::-;92674:10;92670:1;92662:6;92658:14;92651:34;92526:174;:::o;92714:138::-;92810:3;92803:5;92800:14;92790:48;;92818:18;;:::i;:::-;92790:48;92714:138;:::o;92866:132::-;92944:21;92959:5;92944:21;:::i;:::-;92937:5;92934:32;92924:60;;92980:1;92977;92970:12;92924:60;92866:132;:::o;93012:138::-;93093:24;93111:5;93093:24;:::i;:::-;93086:5;93083:35;93073:63;;93132:1;93129;93122:12;93073:63;93012:138;:::o;93164:136::-;93244:23;93261:5;93244:23;:::i;:::-;93237:5;93234:34;93224:62;;93282:1;93279;93272:12;93224:62;93164:136;:::o;93314:134::-;93393:22;93409:5;93393:22;:::i;:::-;93386:5;93383:33;93373:61;;93430:1;93427;93420:12;93373:61;93314:134;:::o;93462:136::-;93542:23;93559:5;93542:23;:::i;:::-;93535:5;93532:34;93522:62;;93580:1;93577;93570:12;93522:62;93462:136;:::o;93612:::-;93692:23;93709:5;93692:23;:::i;:::-;93685:5;93682:34;93672:62;;93730:1;93727;93720:12;93672:62;93612:136;:::o;93762:134::-;93841:22;93857:5;93841:22;:::i;:::-;93834:5;93831:33;93821:61;;93878:1;93875;93868:12;93821:61;93762:134;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"4061400","executionCost":"4673","totalCost":"4066073"},"external":{"asBool(Witnet.Result)":"infinite","asBytes(Witnet.Result)":"infinite","asBytes32(Witnet.Result)":"infinite","asErrorCode(Witnet.Result)":"infinite","asErrorMessage(Witnet.Result)":"infinite","asFixed16(Witnet.Result)":"infinite","asFixed16Array(Witnet.Result)":"infinite","asInt128(Witnet.Result)":"infinite","asInt128Array(Witnet.Result)":"infinite","asRawError(Witnet.Result)":"infinite","asString(Witnet.Result)":"infinite","asStringArray(Witnet.Result)":"infinite","asUint64(Witnet.Result)":"infinite","asUint64Array(Witnet.Result)":"infinite","isError(Witnet.Result)":"infinite","isOk(Witnet.Result)":"infinite","resultFromCborBytes(bytes)":"infinite","resultFromCborValue(Witnet.CBOR)":"infinite","stageName(uint64)":"infinite"},"internal":{"_supportedErrorOrElseUnknown(uint64)":"83","_utoa(uint64)":"infinite","_utohex(uint64)":"infinite"}},"methodIdentifiers":{"asBool(Witnet.Result)":"abf82f4c","asBytes(Witnet.Result)":"a1b90891","asBytes32(Witnet.Result)":"a2e87655","asErrorCode(Witnet.Result)":"d45d097d","asErrorMessage(Witnet.Result)":"8cc5eb54","asFixed16(Witnet.Result)":"d8868db6","asFixed16Array(Witnet.Result)":"08efc097","asInt128(Witnet.Result)":"c71db521","asInt128Array(Witnet.Result)":"fc853c37","asRawError(Witnet.Result)":"0879730d","asString(Witnet.Result)":"f417daf5","asStringArray(Witnet.Result)":"2d26b9e2","asUint64(Witnet.Result)":"8233f9b3","asUint64Array(Witnet.Result)":"147e5c8f","isError(Witnet.Result)":"a1d45d56","isOk(Witnet.Result)":"6646c119","resultFromCborBytes(bytes)":"e99e47f3","resultFromCborValue(Witnet.CBOR)":"130283ee","stageName(uint64)":"cb5371c0"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBool\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asBytes32\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorCode\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"Witnet.ErrorCodes\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asErrorMessage\",\"outputs\":[{\"internalType\":\"enum Witnet.ErrorCodes\",\"name\":\"\",\"type\":\"Witnet.ErrorCodes\"},{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16\",\"outputs\":[{\"internalType\":\"int32\",\"name\":\"\",\"type\":\"int32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asFixed16Array\",\"outputs\":[{\"internalType\":\"int32[]\",\"name\":\"\",\"type\":\"int32[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128\",\"outputs\":[{\"internalType\":\"int128\",\"name\":\"\",\"type\":\"int128\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asInt128Array\",\"outputs\":[{\"internalType\":\"int128[]\",\"name\":\"\",\"type\":\"int128[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asRawError\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asString\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asStringArray\",\"outputs\":[{\"internalType\":\"string[]\",\"name\":\"\",\"type\":\"string[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64\",\"outputs\":[{\"internalType\":\"uint64\",\"name\":\"\",\"type\":\"uint64\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"asUint64Array\",\"outputs\":[{\"internalType\":\"uint64[]\",\"name\":\"\",\"type\":\"uint64[]\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isError\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"_result\",\"type\":\"tuple\"}],\"name\":\"isOk\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_cborBytes\",\"type\":\"bytes\"}],\"name\":\"resultFromCborBytes\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"_cborValue\",\"type\":\"tuple\"}],\"name\":\"resultFromCborValue\",\"outputs\":[{\"components\":[{\"internalType\":\"bool\",\"name\":\"success\",\"type\":\"bool\"},{\"components\":[{\"components\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint32\",\"name\":\"cursor\",\"type\":\"uint32\"}],\"internalType\":\"struct Witnet.Buffer\",\"name\":\"buffer\",\"type\":\"tuple\"},{\"internalType\":\"uint8\",\"name\":\"initialByte\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"majorType\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"additionalInformation\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"len\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"tag\",\"type\":\"uint64\"}],\"internalType\":\"struct Witnet.CBOR\",\"name\":\"value\",\"type\":\"tuple\"}],\"internalType\":\"struct Witnet.Result\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_stageIndex\",\"type\":\"uint64\"}],\"name\":\"stageName\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"The Witnet Foundation.\",\"kind\":\"dev\",\"methods\":{\"asBool(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bool` decoded from the Witnet.Result.\"}},\"asBytes(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes` decoded from the Witnet.Result.\"}},\"asBytes32(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `bytes32` decoded from the Witnet.Result.\"}},\"asErrorCode(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `CBORValue.Error memory` decoded from the Witnet.Result.\"}},\"asErrorMessage(Witnet.Result)\":{\"details\":\"WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\",\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\"}},\"asFixed16(Witnet.Result)\":{\"details\":\"Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values. by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`. use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\",\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asFixed16Array(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asInt128(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128` decoded from the Witnet.Result.\"}},\"asInt128Array(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `int128[]` decoded from the Witnet.Result.\"}},\"asRawError(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of `Witnet.Result`.\"},\"returns\":{\"_0\":\"The `uint64[]` raw error as decoded from the `Witnet.Result`.\"}},\"asString(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string` decoded from the Witnet.Result.\"}},\"asStringArray(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `string[]` decoded from the Witnet.Result.\"}},\"asUint64(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64` decoded from the Witnet.Result.\"}},\"asUint64Array(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"The `uint64[]` decoded from the Witnet.Result.\"}},\"isError(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if errored, `false` if successful.\"}},\"isOk(Witnet.Result)\":{\"params\":{\"_result\":\"An instance of Witnet.Result.\"},\"returns\":{\"_0\":\"`true` if successful, `false` if errored.\"}},\"resultFromCborBytes(bytes)\":{\"params\":{\"_cborBytes\":\"Raw bytes representing a CBOR-encoded value.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"resultFromCborValue(Witnet.CBOR)\":{\"params\":{\"_cborValue\":\"An instance of `Witnet.Value`.\"},\"returns\":{\"_0\":\"A `Witnet.Result` instance.\"}},\"stageName(uint64)\":{\"params\":{\"_stageIndex\":\"A `uint64` identifying the index of one of the Witnet request stages.\"},\"returns\":{\"_0\":\"The name of the matching stage.\"}}},\"title\":\"A library for decoding Witnet request results\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"asBool(Witnet.Result)\":{\"notice\":\"Decode a boolean value from a Witnet.Result as an `bool` value.\"},\"asBytes(Witnet.Result)\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes` value.\"},\"asBytes32(Witnet.Result)\":{\"notice\":\"Decode a bytes value from a Witnet.Result as a `bytes32` value.\"},\"asErrorCode(Witnet.Result)\":{\"notice\":\"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\"},\"asErrorMessage(Witnet.Result)\":{\"notice\":\"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\"},\"asFixed16(Witnet.Result)\":{\"notice\":\"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\"},\"asFixed16Array(Witnet.Result)\":{\"notice\":\"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\"},\"asInt128(Witnet.Result)\":{\"notice\":\"Decode a integer numeric value from a Witnet.Result as an `int128` value.\"},\"asInt128Array(Witnet.Result)\":{\"notice\":\"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\"},\"asRawError(Witnet.Result)\":{\"notice\":\"Decode a raw error from a `Witnet.Result` as a `uint64[]`.\"},\"asString(Witnet.Result)\":{\"notice\":\"Decode a string value from a Witnet.Result as a `string` value.\"},\"asStringArray(Witnet.Result)\":{\"notice\":\"Decode an array of string values from a Witnet.Result as a `string[]` value.\"},\"asUint64(Witnet.Result)\":{\"notice\":\"Decode a natural numeric value from a Witnet.Result as a `uint64` value.\"},\"asUint64Array(Witnet.Result)\":{\"notice\":\"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\"},\"isError(Witnet.Result)\":{\"notice\":\"Tell if a Witnet.Result is errored.\"},\"isOk(Witnet.Result)\":{\"notice\":\"Tell if a Witnet.Result is successful.\"},\"resultFromCborBytes(bytes)\":{\"notice\":\"Decode raw CBOR bytes into a Witnet.Result instance.\"},\"resultFromCborValue(Witnet.CBOR)\":{\"notice\":\"Decode a CBOR value into a Witnet.Result instance.\"},\"stageName(uint64)\":{\"notice\":\"Convert a stage index number into the name of the matching Witnet request stage.\"}},\"notice\":\"The library exposes functions to check the Witnet request success. and retrieve Witnet results from CBOR values into solidity types.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol\":\"WitnetParserLib\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetBuffer.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./Witnet.sol\\\";\\n\\n/// @title A convenient wrapper around the `bytes memory` type that exposes a buffer-like interface\\n/// @notice The buffer has an inner cursor that tracks the final offset of every read, i.e. any subsequent read will\\n/// start with the byte that goes right after the last one in the previous read.\\n/// @dev `uint32` is used here for `cursor` because `uint16` would only enable seeking up to 8KB, which could in some\\n/// theoretical use cases be exceeded. Conversely, `uint32` supports up to 512MB, which cannot credibly be exceeded.\\n/// @author The Witnet Foundation.\\nlibrary WitnetBuffer {\\n\\n  // Ensures we access an existing index in an array\\n  modifier notOutOfBounds(uint32 index, uint256 length) {\\n    require(index < length, \\\"WitnetBuffer: Tried to read from a consumed Buffer (must rewind it first)\\\");\\n    _;\\n  }\\n\\n  /// @notice Read and consume a certain amount of bytes from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _length How many bytes to read and consume from the buffer.\\n  /// @return A `bytes memory` containing the first `_length` bytes from the buffer, counting from the cursor position.\\n  function read(Witnet.Buffer memory _buffer, uint32 _length) internal pure returns (bytes memory) {\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_buffer.cursor + _length <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when reading\\\");\\n\\n    // Create a new `bytes memory destination` value\\n    bytes memory destination = new bytes(_length);\\n\\n    // Early return in case that bytes length is 0\\n    if (_length != 0) {\\n      bytes memory source = _buffer.data;\\n      uint32 offset = _buffer.cursor;\\n\\n      // Get raw pointers for source and destination\\n      uint sourcePointer;\\n      uint destinationPointer;\\n      assembly {\\n        sourcePointer := add(add(source, 32), offset)\\n        destinationPointer := add(destination, 32)\\n      }\\n      // Copy `_length` bytes from source to destination\\n      memcpy(destinationPointer, sourcePointer, uint(_length));\\n\\n      // Move the cursor forward by `_length` bytes\\n      seek(_buffer, _length, true);\\n    }\\n    return destination;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The next byte in the buffer counting from the cursor position.\\n  function next(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (bytes1) {\\n    // Return the byte at the position marked by the cursor and advance the cursor all at once\\n    return _buffer.data[_buffer.cursor++];\\n  }\\n\\n  /// @notice Move the inner cursor of the buffer to a relative or absolute position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _offset How many bytes to move the cursor forward.\\n  /// @param _relative Whether to count `_offset` from the last position of the cursor (`true`) or the beginning of the\\n  /// buffer (`true`).\\n  /// @return The final position of the cursor (will equal `_offset` if `_relative` is `false`).\\n  // solium-disable-next-line security/no-assign-params\\n  function seek(Witnet.Buffer memory _buffer, uint32 _offset, bool _relative) internal pure returns (uint32) {\\n    // Deal with relative offsets\\n    if (_relative) {\\n      require(_offset + _buffer.cursor > _offset, \\\"WitnetBuffer: Integer overflow when seeking\\\");\\n      _offset += _buffer.cursor;\\n    }\\n    // Make sure not to read out of the bounds of the original bytes\\n    require(_offset <= _buffer.data.length, \\\"WitnetBuffer: Not enough bytes in buffer when seeking\\\");\\n    _buffer.cursor = _offset;\\n    return _buffer.cursor;\\n  }\\n\\n  /// @notice Move the inner cursor a number of bytes forward.\\n  /// @dev This is a simple wrapper around the relative offset case of `seek()`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @param _relativeOffset How many bytes to move the cursor forward.\\n  /// @return The final position of the cursor.\\n  function seek(Witnet.Buffer memory _buffer, uint32 _relativeOffset) internal pure returns (uint32) {\\n    return seek(_buffer, _relativeOffset, true);\\n  }\\n\\n  /// @notice Move the inner cursor back to the first byte in the buffer.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function rewind(Witnet.Buffer memory _buffer) internal pure {\\n    _buffer.cursor = 0;\\n  }\\n\\n  /// @notice Read and consume the next byte from the buffer as an `uint8`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint8` value of the next byte in the buffer counting from the cursor position.\\n  function readUint8(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor, _buffer.data.length) returns (uint8) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint8 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 1), offset))\\n    }\\n    _buffer.cursor++;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an `uint16`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint16` value of the next 2 bytes in the buffer counting from the cursor position.\\n  function readUint16(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 1, _buffer.data.length) returns (uint16) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint16 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 2), offset))\\n    }\\n    _buffer.cursor += 2;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 4 bytes from the buffer as an `uint32`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readUint32(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 3, _buffer.data.length) returns (uint32) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint32 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 4), offset))\\n    }\\n    _buffer.cursor += 4;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 8 bytes from the buffer as an `uint64`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint64` value of the next 8 bytes in the buffer counting from the cursor position.\\n  function readUint64(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 7, _buffer.data.length) returns (uint64) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint64 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 8), offset))\\n    }\\n    _buffer.cursor += 8;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 16 bytes from the buffer as an `uint128`.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint128` value of the next 16 bytes in the buffer counting from the cursor position.\\n  function readUint128(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 15, _buffer.data.length) returns (uint128) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint128 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 16), offset))\\n    }\\n    _buffer.cursor += 16;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 32 bytes from the buffer as an `uint256`.\\n  /// @return The `uint256` value of the next 32 bytes in the buffer counting from the cursor position.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  function readUint256(Witnet.Buffer memory _buffer) internal pure notOutOfBounds(_buffer.cursor + 31, _buffer.data.length) returns (uint256) {\\n    bytes memory bytesValue = _buffer.data;\\n    uint32 offset = _buffer.cursor;\\n    uint256 value;\\n    assembly {\\n      value := mload(add(add(bytesValue, 32), offset))\\n    }\\n    _buffer.cursor += 32;\\n\\n    return value;\\n  }\\n\\n  /// @notice Read and consume the next 2 bytes from the buffer as an IEEE 754-2008 floating point number enclosed in an\\n  /// `int32`.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `float16`\\n  /// use cases. In other words, the integer output of this method is 10,000 times the actual value. The input bytes are\\n  /// expected to follow the 16-bit base-2 format (a.k.a. `binary16`) in the IEEE 754-2008 standard.\\n  /// @param _buffer An instance of `Witnet.Buffer`.\\n  /// @return The `uint32` value of the next 4 bytes in the buffer counting from the cursor position.\\n  function readFloat16(Witnet.Buffer memory _buffer) internal pure returns (int32) {\\n    uint32 bytesValue = readUint16(_buffer);\\n    // Get bit at position 0\\n    uint32 sign = bytesValue & 0x8000;\\n    // Get bits 1 to 5, then normalize to the [-14, 15] range so as to counterweight the IEEE 754 exponent bias\\n    int32 exponent = (int32(bytesValue & 0x7c00) >> 10) - 15;\\n    // Get bits 6 to 15\\n    int32 significand = int32(bytesValue & 0x03ff);\\n\\n    // Add 1024 to the fraction if the exponent is 0\\n    if (exponent == 15) {\\n      significand |= 0x400;\\n    }\\n\\n    // Compute `2 ^ exponent \\u00b7 (1 + fraction / 1024)`\\n    int32 result = 0;\\n    if (exponent >= 0) {\\n      result = int32((int256(1 << uint256(int256(exponent))) * 10000 * int256(uint256(int256(significand)) | 0x400)) >> 10);\\n    } else {\\n      result = int32(((int256(uint256(int256(significand)) | 0x400) * 10000) / int256(1 << uint256(int256(- exponent)))) >> 10);\\n    }\\n\\n    // Make the result negative if the sign bit is not 0\\n    if (sign != 0) {\\n      result *= - 1;\\n    }\\n    return result;\\n  }\\n\\n  /// @notice Copy bytes from one memory address into another.\\n  /// @dev This function was borrowed from Nick Johnson's `solidity-stringutils` lib, and reproduced here under the terms\\n  /// of [Apache License 2.0](https://github.com/Arachnid/solidity-stringutils/blob/master/LICENSE).\\n  /// @param _dest Address of the destination memory.\\n  /// @param _src Address to the source memory.\\n  /// @param _len How many bytes to copy.\\n  // solium-disable-next-line security/no-assign-params\\n  function memcpy(uint _dest, uint _src, uint _len) private pure {\\n    require(_len > 0, \\\"WitnetBuffer: Cannot copy 0 bytes\\\");\\n\\n    // Copy word-length chunks while possible\\n    for (; _len >= 32; _len -= 32) {\\n      assembly {\\n        mstore(_dest, mload(_src))\\n      }\\n      _dest += 32;\\n      _src += 32;\\n    }\\n    if (_len > 0) {\\n      // Copy remaining bytes\\n      uint mask = 256 ** (32 - _len) - 1;\\n      assembly {\\n        let srcpart := and(mload(_src), not(mask))\\n        let destpart := and(mload(_dest), mask)\\n        mstore(_dest, or(destpart, srcpart))\\n      }\\n    }\\n  }\\n\\n}\\n\",\"keccak256\":\"0x7ef46325fb4d37649e8ef4c2250240ea63c32720d44d7e4da5a7b412fb348524\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetDecoderLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetBuffer.sol\\\";\\n\\n/// @title A minimalistic implementation of \\u201cRFC 7049 Concise Binary Object Representation\\u201d\\n/// @notice This library leverages a buffer-like structure for step-by-step decoding of bytes so as to minimize\\n/// the gas cost of decoding them into a useful native type.\\n/// @dev Most of the logic has been borrowed from Patrick Gansterer\\u2019s cbor.js library: https://github.com/paroga/cbor-js\\n/// @author The Witnet Foundation.\\n/// \\n/// TODO: add support for Array (majorType = 4)\\n/// TODO: add support for Map (majorType = 5)\\n/// TODO: add support for Float32 (majorType = 7, additionalInformation = 26)\\n/// TODO: add support for Float64 (majorType = 7, additionalInformation = 27) \\n\\nlibrary WitnetDecoderLib {\\n\\n  using WitnetBuffer for Witnet.Buffer;\\n\\n  uint32 constant internal _UINT32_MAX = type(uint32).max;\\n  uint64 constant internal _UINT64_MAX = type(uint64).max;\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bool` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bool` value.\\n  function decodeBool(Witnet.CBOR memory _cborValue) public pure returns(bool) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `bool` value from a `Witnet.CBOR` with majorType != 7\\\");\\n    if (_cborValue.len == 20) {\\n      return false;\\n    } else if (_cborValue.len == 21) {\\n      return true;\\n    } else {\\n      revert(\\\"WitnetDecoderLib: Tried to read `bool` from a `Witnet.CBOR` with len different than 20 or 21\\\");\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `bytes` value.   \\n  function decodeBytes(Witnet.CBOR memory _cborValue) public pure returns(bytes memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT32_MAX) {\\n      bytes memory bytesData;\\n\\n      // These checks look repetitive but the equivalent loop would be more expensive.\\n      uint32 itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n      if (itemLength < _UINT32_MAX) {\\n        bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        itemLength = uint32(readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType));\\n        if (itemLength < _UINT32_MAX) {\\n          bytesData = abi.encodePacked(bytesData, _cborValue.buffer.read(itemLength));\\n        }\\n      }\\n      return bytesData;\\n    } else {\\n      return _cborValue.buffer.read(uint32(_cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `bytes32` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return _bytes32 The value represented by the input, as a `bytes32` value.\\n  function decodeBytes32(Witnet.CBOR memory _cborValue) public pure returns(bytes32 _bytes32) {\\n    bytes memory _bb = decodeBytes(_cborValue);\\n    uint _len = _bb.length > 32 ? 32 : _bb.length;\\n    for (uint _i = 0; _i < _len; _i ++) {\\n        _bytes32 |= bytes32(_bb[_i] & 0xff) >> (_i * 8);\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a `fixed16` value.\\n  /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values\\n  /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`\\n  /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeFixed16(Witnet.CBOR memory _cborValue) public pure returns(int32) {\\n    require(_cborValue.majorType == 7, \\\"WitnetDecoderLib: Tried to read a `fixed` value from a `WT.CBOR` with majorType != 7\\\");\\n    require(_cborValue.additionalInformation == 25, \\\"WitnetDecoderLib: Tried to read `fixed16` from a `WT.CBOR` with additionalInformation != 25\\\");\\n    return _cborValue.buffer.readFloat16();\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value whose inner values follow the same convention.\\n  /// as explained in `decodeFixed16`.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeFixed16Array(Witnet.CBOR memory _cborValue) external pure returns(int32[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int32[] memory array = new int32[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeFixed16(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128` value.\\n  function decodeInt128(Witnet.CBOR memory _cborValue) public pure returns(int128) {\\n    if (_cborValue.majorType == 1) {\\n      uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n      return int128(-1) - int128(uint128(length));\\n    } else if (_cborValue.majorType == 0) {\\n      // Any `uint64` can be safely casted to `int128`, so this method supports majorType 1 as well so as to have offer\\n      // a uniform API for positive and negative numbers\\n      return int128(uint128(decodeUint64(_cborValue)));\\n    }\\n    revert(\\\"WitnetDecoderLib: Tried to read `int128` from a `Witnet.CBOR` with majorType not 0 or 1\\\");\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `int128[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `int128[]` value.\\n  function decodeInt128Array(Witnet.CBOR memory _cborValue) external pure returns(int128[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `int128[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    int128[] memory array = new int128[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeInt128(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as a `string` value.\\n  function decodeString(Witnet.CBOR memory _cborValue) public pure returns(string memory) {\\n    _cborValue.len = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    if (_cborValue.len == _UINT64_MAX) {\\n      bytes memory textData;\\n      bool done;\\n      while (!done) {\\n        uint64 itemLength = readIndefiniteStringLength(_cborValue.buffer, _cborValue.majorType);\\n        if (itemLength < _UINT64_MAX) {\\n          textData = abi.encodePacked(textData, readText(_cborValue.buffer, itemLength / 4));\\n        } else {\\n          done = true;\\n        }\\n      }\\n      return string(textData);\\n    } else {\\n      return string(readText(_cborValue.buffer, _cborValue.len));\\n    }\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `string[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `string[]` value.\\n  function decodeStringArray(Witnet.CBOR memory _cborValue) external pure returns(string[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `string[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    string[] memory array = new string[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeString(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64` value.\\n  function decodeUint64(Witnet.CBOR memory _cborValue) public pure returns(uint64) {\\n    require(_cborValue.majorType == 0, \\\"WitnetDecoderLib: Tried to read `uint64` from a `Witnet.CBOR` with majorType != 0\\\");\\n    return readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n  }\\n\\n  /// @notice Decode a `Witnet.CBOR` structure into a native `uint64[]` value.\\n  /// @param _cborValue An instance of `Witnet.CBOR`.\\n  /// @return The value represented by the input, as an `uint64[]` value.\\n  function decodeUint64Array(Witnet.CBOR memory _cborValue) external pure returns(uint64[] memory) {\\n    require(_cborValue.majorType == 4, \\\"WitnetDecoderLib: Tried to read `uint64[]` from a `Witnet.CBOR` with majorType != 4\\\");\\n\\n    uint64 length = readLength(_cborValue.buffer, _cborValue.additionalInformation);\\n    require(length < _UINT64_MAX, \\\"WitnetDecoderLib: Indefinite-length CBOR arrays are not supported\\\");\\n\\n    uint64[] memory array = new uint64[](length);\\n    for (uint64 i = 0; i < length; i++) {\\n      Witnet.CBOR memory item = valueFromBuffer(_cborValue.buffer);\\n      array[i] = decodeUint64(item);\\n    }\\n\\n    return array;\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is the main factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBytes(bytes memory _cborBytes) external pure returns(Witnet.CBOR memory) {\\n    Witnet.Buffer memory buffer = Witnet.Buffer(_cborBytes, 0);\\n\\n    return valueFromBuffer(buffer);\\n  }\\n\\n  /// @notice Decode a Witnet.CBOR structure from raw bytes.\\n  /// @dev This is an alternate factory for Witnet.CBOR instances, which can be later decoded into native EVM types.\\n  /// @param _buffer A Buffer structure representing a CBOR-encoded value.\\n  /// @return A `Witnet.CBOR` instance containing a partially decoded value.\\n  function valueFromBuffer(Witnet.Buffer memory _buffer) public pure returns(Witnet.CBOR memory) {\\n    require(_buffer.data.length > 0, \\\"WitnetDecoderLib: Found empty buffer when parsing CBOR value\\\");\\n\\n    uint8 initialByte;\\n    uint8 majorType = 255;\\n    uint8 additionalInformation;\\n    uint64 tag = _UINT64_MAX;\\n\\n    bool isTagged = true;\\n    while (isTagged) {\\n      // Extract basic CBOR properties from input bytes\\n      initialByte = _buffer.readUint8();\\n      majorType = initialByte >> 5;\\n      additionalInformation = initialByte & 0x1f;\\n\\n      // Early CBOR tag parsing.\\n      if (majorType == 6) {\\n        tag = readLength(_buffer, additionalInformation);\\n      } else {\\n        isTagged = false;\\n      }\\n    }\\n\\n    require(majorType <= 7, \\\"WitnetDecoderLib: Invalid CBOR major type\\\");\\n\\n    return Witnet.CBOR(\\n      _buffer,\\n      initialByte,\\n      majorType,\\n      additionalInformation,\\n      0,\\n      tag);\\n  }\\n\\n  /// Reads the length of the next CBOR item from a buffer, consuming a different number of bytes depending on the\\n  /// value of the `additionalInformation` argument.\\n  function readLength(Witnet.Buffer memory _buffer, uint8 additionalInformation) private pure returns(uint64) {\\n    if (additionalInformation < 24) {\\n      return additionalInformation;\\n    }\\n    if (additionalInformation == 24) {\\n      return _buffer.readUint8();\\n    }\\n    if (additionalInformation == 25) {\\n      return _buffer.readUint16();\\n    }\\n    if (additionalInformation == 26) {\\n      return _buffer.readUint32();\\n    }\\n    if (additionalInformation == 27) {\\n      return _buffer.readUint64();\\n    }\\n    if (additionalInformation == 31) {\\n      return _UINT64_MAX;\\n    }\\n    revert(\\\"WitnetDecoderLib: Invalid length encoding (non-existent additionalInformation value)\\\");\\n  }\\n\\n  /// Read the length of a CBOR indifinite-length item (arrays, maps, byte strings and text) from a buffer, consuming\\n  /// as many bytes as specified by the first byte.\\n  function readIndefiniteStringLength(Witnet.Buffer memory _buffer, uint8 majorType) private pure returns(uint64) {\\n    uint8 initialByte = _buffer.readUint8();\\n    if (initialByte == 0xff) {\\n      return _UINT64_MAX;\\n    }\\n    uint64 length = readLength(_buffer, initialByte & 0x1f);\\n    require(length < _UINT64_MAX && (initialByte >> 5) == majorType, \\\"WitnetDecoderLib: Invalid indefinite length\\\");\\n    return length;\\n  }\\n\\n  /// Read a text string of a given length from a buffer. Returns a `bytes memory` value for the sake of genericness,\\n  /// but it can be easily casted into a string with `string(result)`.\\n  // solium-disable-next-line security/no-assign-params\\n  function readText(Witnet.Buffer memory _buffer, uint64 _length) private pure returns(bytes memory) {\\n    bytes memory result;\\n    for (uint64 index = 0; index < _length; index++) {\\n      uint8 value = _buffer.readUint8();\\n      if (value & 0x80 != 0) {\\n        if (value < 0xe0) {\\n          value = (value & 0x1f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 1;\\n        } else if (value < 0xf0) {\\n          value = (value & 0x0f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6 |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 2;\\n        } else {\\n          value = (value & 0x0f) << 18 |\\n            (_buffer.readUint8() & 0x3f) << 12 |\\n            (_buffer.readUint8() & 0x3f) << 6  |\\n            (_buffer.readUint8() & 0x3f);\\n          _length -= 3;\\n        }\\n      }\\n      result = abi.encodePacked(result, value);\\n    }\\n    return result;\\n  }\\n}\\n\",\"keccak256\":\"0xb8f5b618ebae15a7f5d21870ac8ba7034afe5dce876b53a1a81572378a817c32\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/WitnetParserLib.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetDecoderLib.sol\\\";\\n\\n/// @title A library for decoding Witnet request results\\n/// @notice The library exposes functions to check the Witnet request success.\\n/// and retrieve Witnet results from CBOR values into solidity types.\\n/// @author The Witnet Foundation.\\nlibrary WitnetParserLib {\\n\\n    using WitnetDecoderLib for bytes;\\n    using WitnetDecoderLib for Witnet.CBOR;\\n\\n    /// @notice Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes calldata _cborBytes)\\n        external pure\\n        returns (Witnet.Result memory)\\n    {\\n        Witnet.CBOR memory cborValue = _cborBytes.valueFromBytes();\\n        return resultFromCborValue(cborValue);\\n    }\\n\\n    /// @notice Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.Value`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue)\\n        public pure\\n        returns (Witnet.Result memory)    \\n    {\\n        // Witnet uses CBOR tag 39 to represent RADON error code identifiers.\\n        // [CBOR tag 39] Identifiers for CBOR: https://github.com/lucas-clemente/cbor-specs/blob/master/id.md\\n        bool success = _cborValue.tag != 39;\\n        return Witnet.Result(success, _cborValue);\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        return _result.success;\\n    }\\n\\n    /// @notice Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result)\\n      external pure\\n      returns (bool)\\n    {\\n        return !_result.success;\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read bytes value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes();\\n    }\\n\\n    /// @notice Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result)\\n        external pure\\n        returns(bytes32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: tried to read bytes32 value from errored Witnet.Result\\\");\\n        return _result.value.decodeBytes32();\\n    }\\n\\n    /// @notice Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result)\\n        external pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return Witnet.ErrorCodes.Unknown;\\n        }\\n        return _supportedErrorOrElseUnknown(error[0]);\\n    }\\n\\n    /// @notice Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result)\\n      public pure\\n      returns (Witnet.ErrorCodes, string memory)\\n    {\\n        uint64[] memory error = asRawError(_result);\\n        if (error.length == 0) {\\n            return (Witnet.ErrorCodes.Unknown, \\\"Unknown error (no error code)\\\");\\n        }\\n        Witnet.ErrorCodes errorCode = _supportedErrorOrElseUnknown(error[0]);\\n        bytes memory errorMessage;\\n\\n        if (errorCode == Witnet.ErrorCodes.SourceScriptNotCBOR && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid CBOR value\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotArray && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not an Array of calls\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.SourceScriptNotRADON && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The CBOR value in script #\\\",\\n                _utoa(error[1]),\\n                \\\" was not a valid Data Request\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RequestTooManySources && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"The request contained too many sources (\\\", \\n                _utoa(error[1]), \\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.ScriptTooManyCalls && error.length >= 4) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Script #\\\",\\n                _utoa(error[2]),\\n                \\\" from the \\\",\\n                stageName(error[1]),\\n                \\\" stage contained too many calls (\\\",\\n                _utoa(error[3]),\\n                \\\")\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.UnsupportedOperator && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage is not supported\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.HTTP && error.length >= 3) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved. Failed with HTTP error code: \\\",\\n                _utoa(error[2] / 100),\\n                _utoa(error[2] % 100 / 10),\\n                _utoa(error[2] % 10)\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.RetrievalTimeout && error.length >= 2) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Source #\\\",\\n                _utoa(error[1]),\\n                \\\" could not be retrieved because of a timeout\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Underflow && error.length >= 5) {\\n              errorMessage = abi.encodePacked(\\n                \\\"Underflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.Overflow && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Overflow at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.DivisionByZero && error.length >= 5) {\\n            errorMessage = abi.encodePacked(\\n                \\\"Division by zero at operator code 0x\\\",\\n                _utohex(error[4]),\\n                \\\" found at call #\\\",\\n                _utoa(error[3]),\\n                \\\" in script #\\\",\\n                _utoa(error[2]),\\n                \\\" from \\\",\\n                stageName(error[1]),\\n                \\\" stage\\\"\\n            );\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeMalformedRequest) {\\n            errorMessage = \\\"The structure of the request is invalid and it cannot be parsed\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgePoorIncentives) {\\n            errorMessage = \\\"The request has been rejected by the bridge node due to poor incentives\\\";\\n        } else if (errorCode == Witnet.ErrorCodes.BridgeOversizedResult) {\\n            errorMessage = \\\"The request result length exceeds a bridge contract defined limit\\\";\\n        } else {\\n            errorMessage = abi.encodePacked(\\\"Unknown error (0x\\\", _utohex(error[0]), \\\")\\\");\\n        }\\n        return (errorCode, string(errorMessage));\\n    }\\n\\n    /// @notice Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result)\\n        public pure\\n        returns(uint64[] memory)\\n    {\\n        require(\\n            !_result.success,\\n            \\\"WitnetParserLib: Tried to read error code from successful Witnet.Result\\\"\\n        );\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result)\\n        external pure\\n        returns (bool)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `bool` value from errored Witnet.Result\\\");\\n        return _result.value.decodeBool();\\n    }\\n\\n    /// @notice Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result)\\n        external pure\\n        returns (int32)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16();\\n    }\\n\\n    /// @notice Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int32[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `fixed16[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeFixed16Array();\\n    }\\n\\n    /// @notice Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result)\\n      external pure\\n      returns (int128)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128();\\n    }\\n\\n    /// @notice Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result)\\n        external pure\\n        returns (int128[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `int128[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeInt128Array();\\n    }\\n\\n    /// @notice Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result)\\n        external pure\\n        returns(string memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string` value from errored Witnet.Result\\\");\\n        return _result.value.decodeString();\\n    }\\n\\n    /// @notice Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result)\\n        external pure\\n        returns (string[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `string[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeStringArray();\\n    }\\n\\n    /// @notice Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result)\\n        external pure\\n        returns(uint64)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64();\\n    }\\n\\n    /// @notice Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result)\\n        external pure\\n        returns (uint64[] memory)\\n    {\\n        require(_result.success, \\\"WitnetParserLib: Tried to read `uint64[]` value from errored Witnet.Result\\\");\\n        return _result.value.decodeUint64Array();\\n    }\\n\\n    /// @notice Convert a stage index number into the name of the matching Witnet request stage.\\n    /// @param _stageIndex A `uint64` identifying the index of one of the Witnet request stages.\\n    /// @return The name of the matching stage.\\n    function stageName(uint64 _stageIndex)\\n        public pure\\n        returns (string memory)\\n    {\\n        if (_stageIndex == 0) {\\n            return \\\"retrieval\\\";\\n        } else if (_stageIndex == 1) {\\n            return \\\"aggregation\\\";\\n        } else if (_stageIndex == 2) {\\n            return \\\"tally\\\";\\n        } else {\\n            return \\\"unknown\\\";\\n        }\\n    }\\n\\n    /// @notice Get an `Witnet.ErrorCodes` item from its `uint64` discriminant.\\n    /// @param _discriminant The numeric identifier of an error.\\n    /// @return A member of `Witnet.ErrorCodes`.\\n    function _supportedErrorOrElseUnknown(uint64 _discriminant)\\n        private pure\\n        returns (Witnet.ErrorCodes)\\n    {\\n        return Witnet.ErrorCodes(_discriminant);\\n    }\\n\\n    /// @notice Convert a `uint64` into a 1, 2 or 3 characters long `string` representing its.\\n    /// three less significant decimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its decimal value.\\n    function _utoa(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        if (_u < 10) {\\n            bytes memory b1 = new bytes(1);\\n            b1[0] = bytes1(uint8(_u) + 48);\\n            return string(b1);\\n        } else if (_u < 100) {\\n            bytes memory b2 = new bytes(2);\\n            b2[0] = bytes1(uint8(_u / 10) + 48);\\n            b2[1] = bytes1(uint8(_u % 10) + 48);\\n            return string(b2);\\n        } else {\\n            bytes memory b3 = new bytes(3);\\n            b3[0] = bytes1(uint8(_u / 100) + 48);\\n            b3[1] = bytes1(uint8(_u % 100 / 10) + 48);\\n            b3[2] = bytes1(uint8(_u % 10) + 48);\\n            return string(b3);\\n        }\\n    }\\n\\n    /// @notice Convert a `uint64` into a 2 characters long `string` representing its two less significant hexadecimal values.\\n    /// @param _u A `uint64` value.\\n    /// @return The `string` representing its hexadecimal value.\\n    function _utohex(uint64 _u)\\n        private pure\\n        returns (string memory)\\n    {\\n        bytes memory b2 = new bytes(2);\\n        uint8 d0 = uint8(_u / 16) + 48;\\n        uint8 d1 = uint8(_u % 16) + 48;\\n        if (d0 > 57)\\n            d0 += 7;\\n        if (d1 > 57)\\n            d1 += 7;\\n        b2[0] = bytes1(d0);\\n        b2[1] = bytes1(d1);\\n        return string(b2);\\n    }\\n}\\n\",\"keccak256\":\"0x250634a50e7ad8aaa9f3dde002ca3718de06a65b93be86896011331b996403f0\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"asBool(Witnet.Result)":{"notice":"Decode a boolean value from a Witnet.Result as an `bool` value."},"asBytes(Witnet.Result)":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes` value."},"asBytes32(Witnet.Result)":{"notice":"Decode a bytes value from a Witnet.Result as a `bytes32` value."},"asErrorCode(Witnet.Result)":{"notice":"Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`."},"asErrorMessage(Witnet.Result)":{"notice":"Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments."},"asFixed16(Witnet.Result)":{"notice":"Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value."},"asFixed16Array(Witnet.Result)":{"notice":"Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value."},"asInt128(Witnet.Result)":{"notice":"Decode a integer numeric value from a Witnet.Result as an `int128` value."},"asInt128Array(Witnet.Result)":{"notice":"Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value."},"asRawError(Witnet.Result)":{"notice":"Decode a raw error from a `Witnet.Result` as a `uint64[]`."},"asString(Witnet.Result)":{"notice":"Decode a string value from a Witnet.Result as a `string` value."},"asStringArray(Witnet.Result)":{"notice":"Decode an array of string values from a Witnet.Result as a `string[]` value."},"asUint64(Witnet.Result)":{"notice":"Decode a natural numeric value from a Witnet.Result as a `uint64` value."},"asUint64Array(Witnet.Result)":{"notice":"Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value."},"isError(Witnet.Result)":{"notice":"Tell if a Witnet.Result is errored."},"isOk(Witnet.Result)":{"notice":"Tell if a Witnet.Result is successful."},"resultFromCborBytes(bytes)":{"notice":"Decode raw CBOR bytes into a Witnet.Result instance."},"resultFromCborValue(Witnet.CBOR)":{"notice":"Decode a CBOR value into a Witnet.Result instance."},"stageName(uint64)":{"notice":"Convert a stage index number into the name of the matching Witnet request stage."}},"notice":"The library exposes functions to check the Witnet request success. and retrieve Witnet results from CBOR values into solidity types.","version":1}}},"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol":{"WitnetRandomnessMock":{"abi":[{"inputs":[{"internalType":"uint8","name":"_mockRandomizeLatencyBlocks","type":"uint8"},{"internalType":"uint256","name":"_mockRandomizeFee","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"self","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"clone","type":"address"}],"name":"Cloned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"uint256","name":"prevBlock","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"witnetQueryId","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"witnetRequestHash","type":"bytes32"}],"name":"Randomized","type":"event"},{"inputs":[],"name":"clone","outputs":[{"internalType":"contract Clonable","name":"_newInstance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_salt","type":"bytes32"}],"name":"cloneDeterministic","outputs":[{"internalType":"contract Clonable","name":"_newInstance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cloned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"estimateRandomizeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomizeData","outputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"uint256","name":"_id","type":"uint256"},{"internalType":"uint256","name":"_prevBlock","type":"uint256"},{"internalType":"uint256","name":"_nextBlock","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessAfter","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessNextBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"getRandomnessPrevBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_initData","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"isRandomized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"latestRandomizeBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_range","type":"uint32"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"uint256","name":"_block","type":"uint256"}],"name":"random","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_range","type":"uint32"},{"internalType":"uint256","name":"_nonce","type":"uint256"},{"internalType":"bytes32","name":"_seed","type":"bytes32"}],"name":"random","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"randomize","outputs":[{"internalType":"uint256","name":"_usedFunds","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"self","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"upgradeRandomizeFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"witnet","outputs":[{"internalType":"contract WitnetRequestBoard","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"witnetRandomnessRequest","outputs":[{"internalType":"contract WitnetRequestRandomness","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"author":"Witnet Foundation.","details":"TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. ON SUPPORTED TESTNETS, PLEASE USE THE `WitnetRandomness`CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.SEE: https://docs.witnet.io/smart-contracts/witnet-randomness-oracle/contract-addresses","kind":"dev","methods":{"clone()":{"details":"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`."},"cloneDeterministic(bytes32)":{"details":"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address."},"constructor":{"params":{"_mockRandomizeFee":"Mocked randomize fee (will be constant no matter what tx gas price is provided).","_mockRandomizeLatencyBlocks":"Mocked number of blocks in which a new randomness will be provided after `randomize()`"}},"getRandomizeData(uint256)":{"details":"Returns zero values if no randomness request was actually posted within a given block.","params":{"_block":"Block number whose randomness request is being queried for."},"returns":{"_from":"Address from which the latest randomness request was posted.","_id":"Unique request identifier as provided by the WRB.","_nextBlock":"Block number in which a randomness request got posted just after this one, 0 if none.","_prevBlock":"Block number in which a randomness request got posted just before this one. 0 if none."}},"getRandomnessAfter(uint256)":{"details":"Please, note that 256 blocks after a `randomize()` request, randomness will be possibly returned as `bytes32(0)` (depending on actual EVM implementation). Fails if:i.   no `randomize()` was not called in either the given block, or afterwards.ii.  a request posted in/after given block does exist, but lest than `__mockRandomizeLatencyBlocks` have elapsed.","params":{"_block":"Block number from which the search will start."}},"getRandomnessNextBlock(uint256)":{"params":{"_block":"Block number from which the search will start."},"returns":{"_0":"Number of the first block found after the given one, or `0` otherwise."}},"getRandomnessPrevBlock(uint256)":{"params":{"_block":"Block number from which the search will start. Cannot be zero."},"returns":{"_0":"First block found before the given one, or `0` otherwise."}},"initialize(bytes)":{"details":"Initializes contract's storage context."},"random(uint32,uint256,bytes32)":{"params":{"_nonce":"Nonce value enabling multiple random numbers from the same randomness value.","_range":"Range within which the uniformly-distributed random number will be generated.","_seed":"Seed value used as entropy source."}},"random(uint32,uint256,uint256)":{"details":"Fails under same conditions as `getRandomnessAfter(uint256)` may do.","params":{"_block":"Block number from which the search will start.","_nonce":"Nonce value enabling multiple random numbers from the same randomness value.","_range":"Range within which the uniformly-distributed random number will be generated."}},"randomize()":{"details":"FOR UNITARY TESTING ONLY. DO NOT USE IN PRODUCTION, AS PROVIDED RANDOMNESSWILL NEITHER BE EVM-AGNOSTIC, NOR SECURE.","returns":{"_usedFunds":"Amount of funds actually used from those provided by the tx sender."}},"upgradeRandomizeFee(uint256)":{"details":"The whole `msg.value` shall be transferred back to the tx sender.","returns":{"_0":"_usedFunds Amount of funds actually used from those provided by the tx sender."}}},"title":"WitnetRandomness mock contract implementation. ","version":1},"evm":{"bytecode":{"functionDebugData":{"@_282":{"entryPoint":null,"id":282,"parameterSlots":1,"returnSlots":0},"@_539":{"entryPoint":null,"id":539,"parameterSlots":1,"returnSlots":0},"@_7566":{"entryPoint":null,"id":7566,"parameterSlots":2,"returnSlots":0},"abi_decode_t_uint256_fromMemory":{"entryPoint":609,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8_fromMemory":{"entryPoint":632,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint8t_uint256_fromMemory":{"entryPoint":655,"id":null,"parameterSlots":2,"returnSlots":2},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":726,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack":{"entryPoint":743,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":782,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":811,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":845,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":862,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":882,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":914,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":924,"id":null,"parameterSlots":1,"returnSlots":1},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":937,"id":null,"parameterSlots":0,"returnSlots":0},"store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f":{"entryPoint":942,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":983,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint8":{"entryPoint":1009,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:3300:46","statements":[{"body":{"nodeType":"YulBlock","src":"70:80:46","statements":[{"nodeType":"YulAssignment","src":"80:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"95:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"89:5:46"},"nodeType":"YulFunctionCall","src":"89:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"80:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"138:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"111:26:46"},"nodeType":"YulFunctionCall","src":"111:33:46"},"nodeType":"YulExpressionStatement","src":"111:33:46"}]},"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"48:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"56:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"64:5:46","type":""}],"src":"7:143:46"},{"body":{"nodeType":"YulBlock","src":"217:78:46","statements":[{"nodeType":"YulAssignment","src":"227:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"242:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"236:5:46"},"nodeType":"YulFunctionCall","src":"236:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"227:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"283:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"258:24:46"},"nodeType":"YulFunctionCall","src":"258:31:46"},"nodeType":"YulExpressionStatement","src":"258:31:46"}]},"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"195:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"203:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"211:5:46","type":""}],"src":"156:139:46"},{"body":{"nodeType":"YulBlock","src":"393:411:46","statements":[{"body":{"nodeType":"YulBlock","src":"439:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"441:77:46"},"nodeType":"YulFunctionCall","src":"441:79:46"},"nodeType":"YulExpressionStatement","src":"441:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"414:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"423:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"410:3:46"},"nodeType":"YulFunctionCall","src":"410:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"435:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"406:3:46"},"nodeType":"YulFunctionCall","src":"406:32:46"},"nodeType":"YulIf","src":"403:119:46"},{"nodeType":"YulBlock","src":"532:126:46","statements":[{"nodeType":"YulVariableDeclaration","src":"547:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"561:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"551:6:46","type":""}]},{"nodeType":"YulAssignment","src":"576:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"620:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"631:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"616:3:46"},"nodeType":"YulFunctionCall","src":"616:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"640:7:46"}],"functionName":{"name":"abi_decode_t_uint8_fromMemory","nodeType":"YulIdentifier","src":"586:29:46"},"nodeType":"YulFunctionCall","src":"586:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"576:6:46"}]}]},{"nodeType":"YulBlock","src":"668:129:46","statements":[{"nodeType":"YulVariableDeclaration","src":"683:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"697:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"687:6:46","type":""}]},{"nodeType":"YulAssignment","src":"713:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"759:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"770:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"755:3:46"},"nodeType":"YulFunctionCall","src":"755:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"779:7:46"}],"functionName":{"name":"abi_decode_t_uint256_fromMemory","nodeType":"YulIdentifier","src":"723:31:46"},"nodeType":"YulFunctionCall","src":"723:64:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"713:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint8t_uint256_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"355:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"366:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"378:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"386:6:46","type":""}],"src":"301:503:46"},{"body":{"nodeType":"YulBlock","src":"875:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"892:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"915:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"897:17:46"},"nodeType":"YulFunctionCall","src":"897:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"885:6:46"},"nodeType":"YulFunctionCall","src":"885:37:46"},"nodeType":"YulExpressionStatement","src":"885:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"863:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"870:3:46","type":""}],"src":"810:118:46"},{"body":{"nodeType":"YulBlock","src":"1080:220:46","statements":[{"nodeType":"YulAssignment","src":"1090:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1156:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1161:2:46","type":"","value":"25"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"1097:58:46"},"nodeType":"YulFunctionCall","src":"1097:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"1090:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1262:3:46"}],"functionName":{"name":"store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f","nodeType":"YulIdentifier","src":"1173:88:46"},"nodeType":"YulFunctionCall","src":"1173:93:46"},"nodeType":"YulExpressionStatement","src":"1173:93:46"},{"nodeType":"YulAssignment","src":"1275:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1286:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1291:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1282:3:46"},"nodeType":"YulFunctionCall","src":"1282:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"1275:3:46"}]}]},"name":"abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"1068:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"1076:3:46","type":""}],"src":"934:366:46"},{"body":{"nodeType":"YulBlock","src":"1404:124:46","statements":[{"nodeType":"YulAssignment","src":"1414:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1426:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1437:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1422:3:46"},"nodeType":"YulFunctionCall","src":"1422:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1414:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"1494:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1507:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1518:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1503:3:46"},"nodeType":"YulFunctionCall","src":"1503:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"1450:43:46"},"nodeType":"YulFunctionCall","src":"1450:71:46"},"nodeType":"YulExpressionStatement","src":"1450:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1376:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"1388:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"1399:4:46","type":""}],"src":"1306:222:46"},{"body":{"nodeType":"YulBlock","src":"1705:248:46","statements":[{"nodeType":"YulAssignment","src":"1715:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1727:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1738:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1723:3:46"},"nodeType":"YulFunctionCall","src":"1723:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1715:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1762:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1773:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1758:3:46"},"nodeType":"YulFunctionCall","src":"1758:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"1781:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1787:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1777:3:46"},"nodeType":"YulFunctionCall","src":"1777:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1751:6:46"},"nodeType":"YulFunctionCall","src":"1751:47:46"},"nodeType":"YulExpressionStatement","src":"1751:47:46"},{"nodeType":"YulAssignment","src":"1807:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"1941:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"1815:124:46"},"nodeType":"YulFunctionCall","src":"1815:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"1807:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1685:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"1700:4:46","type":""}],"src":"1534:419:46"},{"body":{"nodeType":"YulBlock","src":"1999:35:46","statements":[{"nodeType":"YulAssignment","src":"2009:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2025:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"2019:5:46"},"nodeType":"YulFunctionCall","src":"2019:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"2009:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"1992:6:46","type":""}],"src":"1959:75:46"},{"body":{"nodeType":"YulBlock","src":"2136:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2153:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"2158:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2146:6:46"},"nodeType":"YulFunctionCall","src":"2146:19:46"},"nodeType":"YulExpressionStatement","src":"2146:19:46"},{"nodeType":"YulAssignment","src":"2174:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2193:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2198:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2189:3:46"},"nodeType":"YulFunctionCall","src":"2189:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"2174:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"2108:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"2113:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"2124:11:46","type":""}],"src":"2040:169:46"},{"body":{"nodeType":"YulBlock","src":"2260:51:46","statements":[{"nodeType":"YulAssignment","src":"2270:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2299:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"2281:17:46"},"nodeType":"YulFunctionCall","src":"2281:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2270:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2242:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2252:7:46","type":""}],"src":"2215:96:46"},{"body":{"nodeType":"YulBlock","src":"2362:81:46","statements":[{"nodeType":"YulAssignment","src":"2372:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2387:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2394:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"2383:3:46"},"nodeType":"YulFunctionCall","src":"2383:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2372:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2344:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2354:7:46","type":""}],"src":"2317:126:46"},{"body":{"nodeType":"YulBlock","src":"2494:32:46","statements":[{"nodeType":"YulAssignment","src":"2504:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"2515:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2504:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2476:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2486:7:46","type":""}],"src":"2449:77:46"},{"body":{"nodeType":"YulBlock","src":"2575:43:46","statements":[{"nodeType":"YulAssignment","src":"2585:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"2600:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"2607:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"2596:3:46"},"nodeType":"YulFunctionCall","src":"2596:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"2585:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"2557:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"2567:7:46","type":""}],"src":"2532:86:46"},{"body":{"nodeType":"YulBlock","src":"2713:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2730:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2733:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"2723:6:46"},"nodeType":"YulFunctionCall","src":"2723:12:46"},"nodeType":"YulExpressionStatement","src":"2723:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"2624:117:46"},{"body":{"nodeType":"YulBlock","src":"2836:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2853:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"2856:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"2846:6:46"},"nodeType":"YulFunctionCall","src":"2846:12:46"},"nodeType":"YulExpressionStatement","src":"2846:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"2747:117:46"},{"body":{"nodeType":"YulBlock","src":"2976:69:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"2998:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"3006:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2994:3:46"},"nodeType":"YulFunctionCall","src":"2994:14:46"},{"hexValue":"5573696e675769746e65743a207a65726f2061646472657373","kind":"string","nodeType":"YulLiteral","src":"3010:27:46","type":"","value":"UsingWitnet: zero address"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"2987:6:46"},"nodeType":"YulFunctionCall","src":"2987:51:46"},"nodeType":"YulExpressionStatement","src":"2987:51:46"}]},"name":"store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"2968:6:46","type":""}],"src":"2870:175:46"},{"body":{"nodeType":"YulBlock","src":"3094:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"3151:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3160:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"3163:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"3153:6:46"},"nodeType":"YulFunctionCall","src":"3153:12:46"},"nodeType":"YulExpressionStatement","src":"3153:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3117:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3142:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"3124:17:46"},"nodeType":"YulFunctionCall","src":"3124:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"3114:2:46"},"nodeType":"YulFunctionCall","src":"3114:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"3107:6:46"},"nodeType":"YulFunctionCall","src":"3107:43:46"},"nodeType":"YulIf","src":"3104:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3087:5:46","type":""}],"src":"3051:122:46"},{"body":{"nodeType":"YulBlock","src":"3220:77:46","statements":[{"body":{"nodeType":"YulBlock","src":"3275:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"3284:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"3287:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"3277:6:46"},"nodeType":"YulFunctionCall","src":"3277:12:46"},"nodeType":"YulExpressionStatement","src":"3277:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3243:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3266:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"3250:15:46"},"nodeType":"YulFunctionCall","src":"3250:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"3240:2:46"},"nodeType":"YulFunctionCall","src":"3240:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"3233:6:46"},"nodeType":"YulFunctionCall","src":"3233:41:46"},"nodeType":"YulIf","src":"3230:61:46"}]},"name":"validator_revert_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3213:5:46","type":""}],"src":"3179:118:46"}]},"contents":"{\n\n    function abi_decode_t_uint256_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint256(value)\n    }\n\n    function abi_decode_t_uint8_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_tuple_t_uint8t_uint256_fromMemory(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint8_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_uint256_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\n    }\n\n    function abi_encode_t_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 25)\n        store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f(pos)\n        end := add(pos, 32)\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_stringliteral_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f__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_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\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 cleanup_t_address(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 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 revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function store_literal_in_memory_77a452e7d6fe4812bea821f1f1ea3a6b4df6607e22167ac0bae47f4bb97e2e4f(memPtr) {\n\n        mstore(add(memPtr, 0), \"UsingWitnet: zero address\")\n\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint8(value) {\n        if iszero(eq(value, cleanup_t_uint8(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"60c06040523073ffffffffffffffffffffffffffffffffffffffff1660a09073ffffffffffffffffffffffffffffffffffffffff1660601b8152503480156200004757600080fd5b50604051620063bf380380620063bf83398181016040528101906200006d91906200028f565b73ffffffffffffffffffffffffffffffffffffffff80600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620000f6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620000ed906200032b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1660601b81525050506040516200013c9062000253565b604051809103906000f08015801562000159573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401620001f491906200030e565b600060405180830381600087803b1580156200020f57600080fd5b505af115801562000224573d6000803e3d6000fd5b505050505081600360006101000a81548160ff021916908360ff1602179055508060048190555050506200040b565b613cb0806200270f83390190565b6000815190506200027281620003d7565b92915050565b6000815190506200028981620003f1565b92915050565b60008060408385031215620002a957620002a8620003a9565b5b6000620002b98582860162000278565b9250506020620002cc8582860162000261565b9150509250929050565b620002e1816200035e565b82525050565b6000620002f66019836200034d565b91506200030382620003ae565b602082019050919050565b6000602082019050620003256000830184620002d6565b92915050565b600060208201905081810360008301526200034681620002e7565b9050919050565b600082825260208201905092915050565b60006200036b8262000372565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600080fd5b7f5573696e675769746e65743a207a65726f206164647265737300000000000000600082015250565b620003e28162000392565b8114620003ee57600080fd5b50565b620003fc816200039c565b81146200040857600080fd5b50565b60805160601c60a05160601c6122b56200045a60003960008181610979015281816109f701528181610cfa01528181610e02015281816110a801526111b10152600061070301526122b56000f3fe6080604052600436106101095760003560e01c80639938fd0c11610095578063a60ee26811610064578063a60ee2681461038b578063daaa360c146103c8578063e35329f814610405578063e7d4a01614610435578063fb476cad1461047257610109565b80639938fd0c146102b85780639bc86fec146102e3578063a04daef014610320578063a3252f681461034b57610109565b806340b41daa116100dc57806340b41daa146101de578063439fab911461021b57806346d1d21a14610244578063699b328a1461026f5780637104ddb21461028d57610109565b806309ed46071461010e57806324cbbfc11461013957806336b651bb146101765780633b13e76e146101b3575b600080fd5b34801561011a57600080fd5b506101236104af565b6040516101309190611959565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b9190611679565b6104c7565b60405161016d9190611aae565b60405180910390f35b34801561018257600080fd5b5061019d600480360381019061019891906115f9565b61050d565b6040516101aa9190611a6a565b60405180910390f35b3480156101bf57600080fd5b506101c861055c565b6040516101d5919061198f565b60405180910390f35b3480156101ea57600080fd5b50610205600480360381019061020091906115f9565b610580565b6040516102129190611a6a565b60405180910390f35b34801561022757600080fd5b50610242600480360381019061023d9190611583565b61061c565b005b34801561025057600080fd5b50610259610701565b6040516102669190611974565b60405180910390f35b610277610725565b6040516102849190611a6a565b60405180910390f35b34801561029957600080fd5b506102a2610977565b6040516102af919061184f565b60405180910390f35b3480156102c457600080fd5b506102cd61099b565b6040516102da9190611a6a565b60405180910390f35b3480156102ef57600080fd5b5061030a600480360381019061030591906115f9565b6109a1565b60405161031791906118d8565b60405180910390f35b34801561032c57600080fd5b506103356109f3565b60405161034291906118d8565b60405180910390f35b34801561035757600080fd5b50610372600480360381019061036d91906115f9565b610a4a565b6040516103829493929190611893565b60405180910390f35b34801561039757600080fd5b506103b260048036038101906103ad91906115f9565b610aab565b6040516103bf9190611a6a565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611529565b610ab7565b6040516103fc9190611959565b60405180910390f35b61041f600480360381019061041a91906115f9565b610ad2565b60405161042c9190611a6a565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190611626565b610b2d565b6040516104699190611aae565b60405180910390f35b34801561047e57600080fd5b50610499600480360381019061049491906115f9565b610bb4565b6040516104a691906118f3565b60405180910390f35b60006104b9610cf5565b90506104c481610e7e565b90565b60006105048484336104d886610bb4565b6040516020016104e992919061186a565b60405160208183030381529060405280519060200120610b2d565b90509392505050565b600080821161051f5761051e611f90565b5b600060015490508083116105525761054d83600260008481526020019081526020016000206001015461101c565b610554565b805b915050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156105fd576105f882600154611054565b610615565b60026000838152602001908152602001600020600201545b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a2906119aa565b60405180910390fd5b808060200190518101906106bf91906114fc565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600043600154101561091957600454905080341015610779576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077090611a0a565b60405180910390fd5b600060056000815461078a90611f47565b91905081905590506000600260004381526020019081526020016000209050338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508181600301819055506000600154905080826001018190555043600260008381526020019081526020016000206002018190555043600181905550803373ffffffffffffffffffffffffffffffffffffffff167faf291bb4e1767569c77502edb6ad1009e856f57c09f214886c6becc9836c20c08560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309bd5a606040518163ffffffff1660e01b815260040160206040518083038186803b1580156108c757600080fd5b505afa1580156108db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ff9190611556565b60405161090d929190611a85565b60405180910390a35050505b34811015610974573373ffffffffffffffffffffffffffffffffffffffff166108fc82346109479190611d6d565b9081150290604051600060405180830381858888f19350505050158015610972573d6000803e3d6000fd5b505b90565b7f000000000000000000000000000000000000000000000000000000000000000081565b60015481565b60008060026000848152602001908152602001600020905060008160030154141580156109eb5750600360009054906101000a900460ff1660ff16836109e79190611b4c565b4310155b915050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6000806000806000600260008781526020019081526020016000209050806003015493508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1694508060010154925080600201549150509193509193565b60006004549050919050565b6000610ac2826110a3565b9050610acd81610e7e565b919050565b600080341115610b24573373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610b22573d6000803e3d6000fd5b505b60009050919050565b600080610b398561122f565b60ff610b459190611da1565b905060006001826002610b589190611bf5565b610b629190611d6d565b8486604051602001610b7592919061190e565b6040516020818303038152906040528051906020012060001c1690508160ff168663ffffffff1682610ba79190611d13565b901c925050509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610c2c57610c2982610580565b91505b6000600260008481526020019081526020016000206003015490506000811415610c8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8290611a2a565b60405180910390fd5b600360009054906101000a900460ff1660ff1683610ca99190611b4c565b431015610ceb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce2906119ca565b60405180910390fd5b8240915050919050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610de9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de090611a4a565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309ed46076040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610ee957600080fd5b505af1158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2191906115cc565b90508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401610f5c919061184f565b600060405180830381600087803b158015610f7657600080fd5b505af1158015610f8a573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff1663439fab9182604051602001610fbb919061184f565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610fe69190611937565b600060405180830381600087803b15801561100057600080fd5b505af1158015611014573d6000803e3d6000fd5b505050505050565b600081831161104a5761104583600260008581526020019081526020016000206001015461101c565b61104c565b815b905092915050565b6000818310156110835761107e836002600085815260200190815260200160002060010154611054565b61109b565b60026000838152602001908152602001600020600201545b905092915050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611198576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118f906119ea565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b600080604051806104000160405280600060ff168152602001600960ff168152602001600160ff168152602001600a60ff168152602001600d60ff168152602001601560ff168152602001600260ff168152602001601d60ff168152602001600b60ff168152602001600e60ff168152602001601060ff168152602001601260ff168152602001601660ff168152602001601960ff168152602001600360ff168152602001601e60ff168152602001600860ff168152602001600c60ff168152602001601460ff168152602001601c60ff168152602001600f60ff168152602001601160ff168152602001601860ff168152602001600760ff168152602001601360ff168152602001601b60ff168152602001601760ff168152602001600660ff168152602001601a60ff168152602001600560ff168152602001600460ff168152602001601f60ff16815250905060018363ffffffff16901c8317925060028363ffffffff16901c8317925060048363ffffffff16901c8317925060088363ffffffff16901c8317925060108363ffffffff16901c8317925080601b6307c4acdd8563ffffffff166113e29190611d13565b63ffffffff16901c63ffffffff166020811061140157611400611fee565b5b6020020151915050919050565b600061142161141c84611aee565b611ac9565b90508281526020810184848401111561143d5761143c612051565b5b611448848285611ed4565b509392505050565b60008151905061145f8161220c565b92915050565b60008135905061147481612223565b92915050565b60008151905061148981612223565b92915050565b600082601f8301126114a4576114a361204c565b5b81356114b484826020860161140e565b91505092915050565b6000815190506114cc8161223a565b92915050565b6000813590506114e181612251565b92915050565b6000813590506114f681612268565b92915050565b6000602082840312156115125761151161205b565b5b600061152084828501611450565b91505092915050565b60006020828403121561153f5761153e61205b565b5b600061154d84828501611465565b91505092915050565b60006020828403121561156c5761156b61205b565b5b600061157a8482850161147a565b91505092915050565b6000602082840312156115995761159861205b565b5b600082013567ffffffffffffffff8111156115b7576115b6612056565b5b6115c38482850161148f565b91505092915050565b6000602082840312156115e2576115e161205b565b5b60006115f0848285016114bd565b91505092915050565b60006020828403121561160f5761160e61205b565b5b600061161d848285016114d2565b91505092915050565b60008060006060848603121561163f5761163e61205b565b5b600061164d868287016114e7565b935050602061165e868287016114d2565b925050604061166f86828701611465565b9150509250925092565b6000806000606084860312156116925761169161205b565b5b60006116a0868287016114e7565b93505060206116b1868287016114d2565b92505060406116c2868287016114d2565b9150509250925092565b6116d581611dd5565b82525050565b6116e481611df9565b82525050565b6116f381611e05565b82525050565b600061170482611b1f565b61170e8185611b2a565b935061171e818560208601611ee3565b61172781612060565b840191505092915050565b61173b81611e68565b82525050565b61174a81611e7a565b82525050565b61175981611e8c565b82525050565b600061176c602583611b3b565b91506117778261207e565b604082019050919050565b600061178f602783611b3b565b915061179a826120cd565b604082019050919050565b60006117b2601883611b3b565b91506117bd8261211c565b602082019050919050565b60006117d5602483611b3b565b91506117e082612145565b604082019050919050565b60006117f8602483611b3b565b915061180382612194565b604082019050919050565b600061181b601783611b3b565b9150611826826121e3565b602082019050919050565b61183a81611e41565b82525050565b61184981611e4b565b82525050565b600060208201905061186460008301846116cc565b92915050565b600060408201905061187f60008301856116cc565b61188c60208301846116ea565b9392505050565b60006080820190506118a860008301876116cc565b6118b56020830186611831565b6118c26040830185611831565b6118cf6060830184611831565b95945050505050565b60006020820190506118ed60008301846116db565b92915050565b600060208201905061190860008301846116ea565b92915050565b600060408201905061192360008301856116ea565b6119306020830184611831565b9392505050565b6000602082019050818103600083015261195181846116f9565b905092915050565b600060208201905061196e6000830184611732565b92915050565b60006020820190506119896000830184611741565b92915050565b60006020820190506119a46000830184611750565b92915050565b600060208201905081810360008301526119c38161175f565b9050919050565b600060208201905081810360008301526119e381611782565b9050919050565b60006020820190508181036000830152611a03816117a5565b9050919050565b60006020820190508181036000830152611a23816117c8565b9050919050565b60006020820190508181036000830152611a43816117eb565b9050919050565b60006020820190508181036000830152611a638161180e565b9050919050565b6000602082019050611a7f6000830184611831565b92915050565b6000604082019050611a9a6000830185611831565b611aa760208301846116ea565b9392505050565b6000602082019050611ac36000830184611840565b92915050565b6000611ad3611ae4565b9050611adf8282611f16565b919050565b6000604051905090565b600067ffffffffffffffff821115611b0957611b0861201d565b5b611b1282612060565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611b5782611e41565b9150611b6283611e41565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b9757611b96611fbf565b5b828201905092915050565b6000808291508390505b6001851115611bec57808604811115611bc857611bc7611fbf565b5b6001851615611bd75780820291505b8081029050611be585612071565b9450611bac565b94509492505050565b6000611c0082611e41565b9150611c0b83611e5b565b9250611c387fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c40565b905092915050565b600082611c505760019050611d0c565b81611c5e5760009050611d0c565b8160018114611c745760028114611c7e57611cad565b6001915050611d0c565b60ff841115611c9057611c8f611fbf565b5b8360020a915084821115611ca757611ca6611fbf565b5b50611d0c565b5060208310610133831016604e8410600b8410161715611ce25782820a905083811115611cdd57611cdc611fbf565b5b611d0c565b611cef8484846001611ba2565b92509050818404811115611d0657611d05611fbf565b5b81810290505b9392505050565b6000611d1e82611e41565b9150611d2983611e41565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611d6257611d61611fbf565b5b828202905092915050565b6000611d7882611e41565b9150611d8383611e41565b925082821015611d9657611d95611fbf565b5b828203905092915050565b6000611dac82611e5b565b9150611db783611e5b565b925082821015611dca57611dc9611fbf565b5b828203905092915050565b6000611de082611e21565b9050919050565b6000611df282611e21565b9050919050565b60008115159050919050565b6000819050919050565b6000611e1a82611dd5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600060ff82169050919050565b6000611e7382611e9e565b9050919050565b6000611e8582611eb0565b9050919050565b6000611e9782611e9e565b9050919050565b6000611ea982611ec2565b9050919050565b6000611ebb82611ec2565b9050919050565b6000611ecd82611e21565b9050919050565b82818337600083830152505050565b60005b83811015611f01578082015181840152602081019050611ee6565b83811115611f10576000848401525b50505050565b611f1f82612060565b810181811067ffffffffffffffff82111715611f3e57611f3d61201d565b5b80604052505050565b6000611f5282611e41565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611f8557611f84611fbf565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f5769746e657452616e646f6d6e6573733a20616c726561647920696e6974696160008201527f6c697a6564000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573734d6f636b3a2070656e64696e6720726160008201527f6e646f6d697a6500000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e657452616e646f6d6e6573734d6f636b3a2072657761726420746f6f60008201527f206c6f7700000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573734d6f636b3a206e6f742072616e646f6d60008201527f697a656400000000000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b61221581611de7565b811461222057600080fd5b50565b61222c81611e05565b811461223757600080fd5b50565b61224381611e0f565b811461224e57600080fd5b50565b61225a81611e41565b811461226557600080fd5b50565b61227181611e4b565b811461227c57600080fd5b5056fea2646970667358221220c43f6e704bfd58fc565704a9130b6e8f4fd24f92ba9c5a37c952af2ebf55964064736f6c6343000807003360a06040523073ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b8152503480156200004757600080fd5b50620000686200005c6200008e60201b60201c565b6200009660201b60201c565b62000088604051806020016040528060008152506200017e60201b60201c565b62001259565b600033905090565b6000620000a8620001cc60201b60201c565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081620000df620001cc60201b60201c565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620001c96040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250620001f460201b62000e261760201c565b50565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b600062000206620001cc60201b60201c565b6001018054620002169062000f58565b9050146200025b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002529062000d78565b60405180910390fd5b6200026c816200028f60201b60201c565b6200028c620002806200008e60201b60201c565b6200009660201b60201c565b50565b6000815111620002a457620002a362000fc4565b5b80620002b5620001cc60201b60201c565b6001019080519060200190620002cd92919062000a17565b506000620002e0620001cc60201b60201c565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506200042b8160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff166200042f60201b60201c565b5050565b60008267ffffffffffffffff16116200047f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004769062000d56565b60405180910390fd5b60018560ff1610158015620004985750607f8560ff1611155b620004da576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004d19062000d9a565b60405180910390fd5b60338460ff1610158015620004f3575060638460ff1611155b62000535576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200052c9062000d34565b60405180910390fd5b633b9aca008367ffffffffffffffff16101562000589576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005809062000dbc565b60405180910390fd5b62000599620001cc60201b60201c565b600101620005b2601060f81b846200078860201b60201c565b620005c8601860f81b886200099a60201b60201c565b620005de602060f81b856200078860201b60201c565b620005f4602860f81b896200099a60201b60201c565b6200060a603060f81b896200078860201b60201c565b604051602001620006219695949392919062000cd0565b60405160208183030381529060405262000640620001cc60201b60201c565b60020190805190602001906200065892919062000a17565b50620007126200066d620001cc60201b60201c565b60020180546200067d9062000f58565b80601f0160208091040260200160405190810160405280929190818152602001828054620006ab9062000f58565b8015620006fc5780601f10620006d057610100808354040283529160200191620006fc565b820191906000526020600020905b815481529060010190602001808311620006de57829003601f168201915b5050505050620009b960201b62000e9c1760201c565b62000722620001cc60201b60201c565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b086868686866040516200077995949392919062000dde565b60405180910390a25050505050565b606060008290506000600290505b607f8267ffffffffffffffff161115620007d25760078267ffffffffffffffff16901c9150600181620007ca919062000e77565b905062000796565b60008167ffffffffffffffff1667ffffffffffffffff811115620007fb57620007fa62001080565b5b6040519080825280601f01601f1916602001820160405280156200082e5781602001600182028036833780820191505090505b50905084925085816000815181106200084c576200084b62001051565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff1610156200091f57607f841660801760f81b828267ffffffffffffffff1681518110620008c957620008c862001051565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c93508080620009169062000f8e565b91505062000882565b50607f60f81b8160018462000935919062000ebc565b67ffffffffffffffff168151811062000953576200095262001051565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060620009b1838360ff166200078860201b60201c565b905092915050565b6000600282604051620009cd919062000cb7565b602060405180830381855afa158015620009eb573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019062000a10919062000ade565b9050919050565b82805462000a259062000f58565b90600052602060002090601f01602090048101928262000a49576000855562000a95565b82601f1062000a6457805160ff191683800117855562000a95565b8280016001018555821562000a95579182015b8281111562000a9457825182559160200191906001019062000a77565b5b50905062000aa4919062000aa8565b5090565b5b8082111562000ac357600081600090555060010162000aa9565b5090565b60008151905062000ad8816200123f565b92915050565b60006020828403121562000af75762000af6620010af565b5b600062000b078482850162000ac7565b91505092915050565b600062000b1d8262000e50565b62000b29818562000e5b565b935062000b3b81856020860162000f22565b80840191505092915050565b6000815462000b568162000f58565b62000b62818662000e5b565b9450600182166000811462000b80576001811462000b925762000bc9565b60ff1983168652818601935062000bc9565b62000b9d8562000e3b565b60005b8381101562000bc15781548189015260018201915060208101905062000ba0565b838801955050505b50505092915050565b600062000be1603d8362000e66565b915062000bee82620010b4565b604082019050919050565b600062000c0860258362000e66565b915062000c158262001103565b604082019050919050565b600062000c2f602f8362000e66565b915062000c3c8262001152565b604082019050919050565b600062000c56603c8362000e66565b915062000c6382620011a1565b604082019050919050565b600062000c7d603d8362000e66565b915062000c8a82620011f0565b604082019050919050565b62000ca08162000f01565b82525050565b62000cb18162000f15565b82525050565b600062000cc5828462000b10565b915081905092915050565b600062000cde828962000b47565b915062000cec828862000b10565b915062000cfa828762000b10565b915062000d08828662000b10565b915062000d16828562000b10565b915062000d24828462000b10565b9150819050979650505050505050565b6000602082019050818103600083015262000d4f8162000bd2565b9050919050565b6000602082019050818103600083015262000d718162000bf9565b9050919050565b6000602082019050818103600083015262000d938162000c20565b9050919050565b6000602082019050818103600083015262000db58162000c47565b9050919050565b6000602082019050818103600083015262000dd78162000c6e565b9050919050565b600060a08201905062000df5600083018862000ca6565b62000e04602083018762000ca6565b62000e13604083018662000c95565b62000e22606083018562000c95565b62000e31608083018462000c95565b9695505050505050565b60008190508160005260206000209050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600062000e848262000f01565b915062000e918362000f01565b92508267ffffffffffffffff0382111562000eb15762000eb062000ff3565b5b828201905092915050565b600062000ec98262000f01565b915062000ed68362000f01565b92508282101562000eec5762000eeb62000ff3565b5b828203905092915050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b60005b8381101562000f4257808201518184015260208101905062000f25565b8381111562000f52576000848401525b50505050565b6000600282049050600182168062000f7157607f821691505b6020821081141562000f885762000f8762001022565b5b50919050565b600062000f9b8262000f01565b915067ffffffffffffffff82141562000fb95762000fb862000ff3565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b6200124a8162000ef7565b81146200125657600080fd5b50565b60805160601c612a156200129b600039600081816106290152818161079101528181610f220152818161102a01528181611473015261157c0152612a156000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063daaa360c11610071578063daaa360c14610287578063ef53d97a146102b7578063f0940002146102d5578063f2fde38b146102f3578063ff21c3ba1461030f57610116565b80638da5cb5b14610213578063a04daef014610231578063d196c2e31461024f578063d9b9a9611461026b57610116565b806352d1902d116100e957806352d1902d146101915780636f2ddd93146101af5780637104ddb2146101cd578063715018a6146101eb5780638a481dad146101f557610116565b806309bd5a601461011b57806309ed460714610139578063439fab911461015757806348f9b83114610173575b600080fd5b61012361032b565b6040516101309190612113565b60405180910390f35b61014161033e565b60405161014e9190612172565b60405180910390f35b610171600480360381019061016c9190611be5565b61042d565b005b61017b61046e565b60405161018891906122ad565b60405180910390f35b610199610561565b6040516101a69190612113565b60405180910390f35b6101b761058c565b6040516101c4919061212e565b60405180910390f35b6101d5610627565b6040516101e291906120dd565b60405180910390f35b6101f361064b565b005b6101fd6106d3565b60405161020a91906122c8565b60405180910390f35b61021b61075a565b60405161022891906120dd565b60405180910390f35b61023961078d565b60405161024691906120f8565b60405180910390f35b61026960048036038101906102649190611c9b565b6107e4565b005b61028560048036038101906102809190611c2e565b610903565b005b6102a1600480360381019061029c9190611b8b565b610a1c565b6040516102ae9190612172565b60405180910390f35b6102bf610b0e565b6040516102cc91906122c8565b60405180910390f35b6102dd610b66565b6040516102ea919061212e565b60405180910390f35b61030d60048036038101906103089190611b5e565b610c01565b005b61032960048036038101906103249190611c5b565b610cf9565b005b6000610335610ef5565b60030154905090565b6000610348610f1d565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab9161036e610ef5565b6001016040518263ffffffff1660e01b815260040161038d9190612150565b600060405180830381600087803b1580156103a757600080fd5b505af11580156103bb573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b81526004016103f891906120dd565b600060405180830381600087803b15801561041257600080fd5b505af1158015610426573d6000803e3d6000fd5b5050505090565b61046b6040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250610e26565b50565b61047661198f565b61047e610ef5565b6004016040518060a00160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016000820160019054906101000a900460ff1660ff1660ff1681526020016000820160029054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201600a9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016000820160129054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681525050905090565b60007f851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c260001b905090565b6060610596610ef5565b60010180546105a49061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546105d09061258a565b801561061d5780601f106105f25761010080835404028352916020019161061d565b820191906000526020600020905b81548152906001019060200180831161060057829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6106536110a6565b73ffffffffffffffffffffffffffffffffffffffff1661067161075a565b73ffffffffffffffffffffffffffffffffffffffff16146106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be9061224d565b60405180910390fd5b6106d160006110ae565b565b6000806106de610ef5565b600401905080600001600a9054906101000a900467ffffffffffffffff168160000160129054906101000a900467ffffffffffffffff1660026107219190612417565b61072b91906123d9565b8160000160009054906101000a900460ff1660ff1661074a9190612417565b67ffffffffffffffff1691505090565b6000610764610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6107ec6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661080a61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610860576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108579061224d565b60405180910390fd5b600061086a610ef5565b6004019050828160000160006101000a81548160ff021916908360ff160217905550818160000160016101000a81548160ff021916908360ff1602179055506108fe83838360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b505050565b61090b6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661092961075a565b73ffffffffffffffffffffffffffffffffffffffff161461097f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109769061224d565b60405180910390fd5b6000610989610ef5565b6004019050818160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610a188160000160009054906101000a900460ff168260000160019054906101000a900460ff168484600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b6000610a278261146e565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab91610a4d610ef5565b6001016040518263ffffffff1660e01b8152600401610a6c9190612150565b600060405180830381600087803b158015610a8657600080fd5b505af1158015610a9a573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401610ad791906120dd565b600060405180830381600087803b158015610af157600080fd5b505af1158015610b05573d6000803e3d6000fd5b50505050919050565b600080610b19610ef5565b60040190508060000160029054906101000a900467ffffffffffffffff168160000160009054906101000a900460ff1660ff16610b569190612417565b67ffffffffffffffff1691505090565b6060610b70610ef5565b6002018054610b7e9061258a565b80601f0160208091040260200160405190810160405280929190818152602001828054610baa9061258a565b8015610bf75780601f10610bcc57610100808354040283529160200191610bf7565b820191906000526020600020905b815481529060010190602001808311610bda57829003601f168201915b5050505050905090565b610c096110a6565b73ffffffffffffffffffffffffffffffffffffffff16610c2761075a565b73ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c749061224d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce49061218d565b60405180910390fd5b610cf6816110ae565b50565b610d016110a6565b73ffffffffffffffffffffffffffffffffffffffff16610d1f61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610d75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6c9061224d565b60405180910390fd5b6000610d7f610ef5565b60040190508281600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550818160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610e218160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff168686611186565b505050565b6000610e30610ef5565b6001018054610e3e9061258a565b905014610e80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e779061220d565b60405180910390fd5b610e89816115fa565b610e99610e946110a6565b6110ae565b50565b6000600282604051610eae919061206e565b602060405180830381855afa158015610ecb573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610eee9190611bb8565b9050919050565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611011576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110089061228d565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b600033905090565b60006110b8610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816110e7610ef5565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008267ffffffffffffffff16116111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca906121cd565b60405180910390fd5b60018560ff16101580156111eb5750607f8560ff1611155b61122a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112219061222d565b60405180910390fd5b60338460ff1610158015611242575060638460ff1611155b611281576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611278906121ad565b60405180910390fd5b633b9aca008367ffffffffffffffff1610156112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c99061226d565b60405180910390fd5b6112da610ef5565b6001016112eb601060f81b8461177d565b6112f9601860f81b88611978565b611307602060f81b8561177d565b611315602860f81b89611978565b611323603060f81b8961177d565b60405160200161133896959493929190612085565b60405160208183030381529060405261134f610ef5565b60020190805190602001906113659291906119e2565b50611402611371610ef5565b600201805461137f9061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546113ab9061258a565b80156113f85780601f106113cd576101008083540402835291602001916113f8565b820191906000526020600020905b8154815290600101906020018083116113db57829003601f168201915b5050505050610e9c565b61140a610ef5565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b0868686868660405161145f9594939291906122e3565b60405180910390a25050505050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a906121ed565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b600081511161160c5761160b61261e565b5b80611615610ef5565b600101908051906020019061162b9291906119e2565b506000611636610ef5565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506117798160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b606060008290506000600290505b607f8267ffffffffffffffff1611156117c35760078267ffffffffffffffff16901c91506001816117bc91906123d9565b905061178b565b60008167ffffffffffffffff1667ffffffffffffffff8111156117e9576117e86126da565b5b6040519080825280601f01601f19166020018201604052801561181b5781602001600182028036833780820191505090505b5090508492508581600081518110611836576118356126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff16101561190257607f841660801760f81b828267ffffffffffffffff16815181106118af576118ae6126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c935080806118fa906125ed565b91505061186c565b50607f60f81b816001846119169190612459565b67ffffffffffffffff1681518110611931576119306126ab565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060611987838360ff1661177d565b905092915050565b6040518060a00160405280600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b8280546119ee9061258a565b90600052602060002090601f016020900481019282611a105760008555611a57565b82601f10611a2957805160ff1916838001178555611a57565b82800160010185558215611a57579182015b82811115611a56578251825591602001919060010190611a3b565b5b509050611a649190611a68565b5090565b5b80821115611a81576000816000905550600101611a69565b5090565b6000611a98611a938461235b565b612336565b905082815260208101848484011115611ab457611ab361270e565b5b611abf848285612548565b509392505050565b600081359050611ad681612983565b92915050565b600081359050611aeb8161299a565b92915050565b600081519050611b008161299a565b92915050565b600082601f830112611b1b57611b1a612709565b5b8135611b2b848260208601611a85565b91505092915050565b600081359050611b43816129b1565b92915050565b600081359050611b58816129c8565b92915050565b600060208284031215611b7457611b73612718565b5b6000611b8284828501611ac7565b91505092915050565b600060208284031215611ba157611ba0612718565b5b6000611baf84828501611adc565b91505092915050565b600060208284031215611bce57611bcd612718565b5b6000611bdc84828501611af1565b91505092915050565b600060208284031215611bfb57611bfa612718565b5b600082013567ffffffffffffffff811115611c1957611c18612713565b5b611c2584828501611b06565b91505092915050565b600060208284031215611c4457611c43612718565b5b6000611c5284828501611b34565b91505092915050565b60008060408385031215611c7257611c71612718565b5b6000611c8085828601611b34565b9250506020611c9185828601611b34565b9150509250929050565b60008060408385031215611cb257611cb1612718565b5b6000611cc085828601611b49565b9250506020611cd185828601611b49565b9150509250929050565b611ce48161248d565b82525050565b611cf38161249f565b82525050565b611d02816124ab565b82525050565b6000611d13826123a1565b611d1d81856123ac565b9350611d2d818560208601612557565b611d368161271d565b840191505092915050565b6000611d4c826123a1565b611d5681856123bd565b9350611d66818560208601612557565b80840191505092915050565b60008154611d7f8161258a565b611d8981866123ac565b94506001821660008114611da45760018114611db657611de9565b60ff1983168652602086019350611de9565b611dbf8561238c565b60005b83811015611de157815481890152600182019150602081019050611dc2565b808801955050505b50505092915050565b60008154611dff8161258a565b611e0981866123bd565b94506001821660008114611e245760018114611e3557611e68565b60ff19831686528186019350611e68565b611e3e8561238c565b60005b83811015611e6057815481890152600182019150602081019050611e41565b838801955050505b50505092915050565b611e7a81612512565b82525050565b6000611e8d6026836123c8565b9150611e988261272e565b604082019050919050565b6000611eb0603d836123c8565b9150611ebb8261277d565b604082019050919050565b6000611ed36025836123c8565b9150611ede826127cc565b604082019050919050565b6000611ef66018836123c8565b9150611f018261281b565b602082019050919050565b6000611f19602f836123c8565b9150611f2482612844565b604082019050919050565b6000611f3c603c836123c8565b9150611f4782612893565b604082019050919050565b6000611f5f6020836123c8565b9150611f6a826128e2565b602082019050919050565b6000611f82603d836123c8565b9150611f8d8261290b565b604082019050919050565b6000611fa56017836123c8565b9150611fb08261295a565b602082019050919050565b60a082016000820151611fd16000850182612050565b506020820151611fe46020850182612050565b506040820151611ff76040850182612032565b50606082015161200a6060850182612032565b50608082015161201d6080850182612032565b50505050565b61202c816124b5565b82525050565b61203b816124f1565b82525050565b61204a816124f1565b82525050565b61205981612505565b82525050565b61206881612505565b82525050565b600061207a8284611d41565b915081905092915050565b60006120918289611df2565b915061209d8288611d41565b91506120a98287611d41565b91506120b58286611d41565b91506120c18285611d41565b91506120cd8284611d41565b9150819050979650505050505050565b60006020820190506120f26000830184611cdb565b92915050565b600060208201905061210d6000830184611cea565b92915050565b60006020820190506121286000830184611cf9565b92915050565b600060208201905081810360008301526121488184611d08565b905092915050565b6000602082019050818103600083015261216a8184611d72565b905092915050565b60006020820190506121876000830184611e71565b92915050565b600060208201905081810360008301526121a681611e80565b9050919050565b600060208201905081810360008301526121c681611ea3565b9050919050565b600060208201905081810360008301526121e681611ec6565b9050919050565b6000602082019050818103600083015261220681611ee9565b9050919050565b6000602082019050818103600083015261222681611f0c565b9050919050565b6000602082019050818103600083015261224681611f2f565b9050919050565b6000602082019050818103600083015261226681611f52565b9050919050565b6000602082019050818103600083015261228681611f75565b9050919050565b600060208201905081810360008301526122a681611f98565b9050919050565b600060a0820190506122c26000830184611fbb565b92915050565b60006020820190506122dd6000830184612023565b92915050565b600060a0820190506122f8600083018861205f565b612305602083018761205f565b6123126040830186612041565b61231f6060830185612041565b61232c6080830184612041565b9695505050505050565b6000612340612351565b905061234c82826125bc565b919050565b6000604051905090565b600067ffffffffffffffff821115612376576123756126da565b5b61237f8261271d565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006123e4826124f1565b91506123ef836124f1565b92508267ffffffffffffffff0382111561240c5761240b61264d565b5b828201905092915050565b6000612422826124f1565b915061242d836124f1565b92508167ffffffffffffffff048311821515161561244e5761244d61264d565b5b828202905092915050565b6000612464826124f1565b915061246f836124f1565b9250828210156124825761248161264d565b5b828203905092915050565b6000612498826124d1565b9050919050565b60008115159050919050565b6000819050919050565b60006fffffffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b600061251d82612524565b9050919050565b600061252f82612536565b9050919050565b6000612541826124d1565b9050919050565b82818337600083830152505050565b60005b8381101561257557808201518184015260208101905061255a565b83811115612584576000848401525b50505050565b600060028204905060018216806125a257607f821691505b602082108114156125b6576125b561267c565b5b50919050565b6125c58261271d565b810181811067ffffffffffffffff821117156125e4576125e36126da565b5b80604052505050565b60006125f8826124f1565b915067ffffffffffffffff8214156126135761261261264d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b61298c8161248d565b811461299757600080fd5b50565b6129a3816124ab565b81146129ae57600080fd5b50565b6129ba816124f1565b81146129c557600080fd5b50565b6129d181612505565b81146129dc57600080fd5b5056fea264697066735822122018d3be95fdcbd8bc6f0654dc2eb3dcdc04b923b60a7642bd2f454937f279d0f064736f6c63430008070033","opcodes":"PUSH1 0xC0 PUSH1 0x40 MSTORE ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xA0 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP CALLVALUE DUP1 ISZERO PUSH3 0x47 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH3 0x63BF CODESIZE SUB DUP1 PUSH3 0x63BF DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH3 0x6D SWAP2 SWAP1 PUSH3 0x28F JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH3 0xF6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0xED SWAP1 PUSH3 0x32B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP POP POP PUSH1 0x40 MLOAD PUSH3 0x13C SWAP1 PUSH3 0x253 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 PUSH1 0x0 CREATE DUP1 ISZERO DUP1 ISZERO PUSH3 0x159 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP PUSH1 0x0 DUP1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x1F4 SWAP2 SWAP1 PUSH3 0x30E JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH3 0x20F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH3 0x224 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP DUP2 PUSH1 0x3 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP DUP1 PUSH1 0x4 DUP2 SWAP1 SSTORE POP POP POP PUSH3 0x40B JUMP JUMPDEST PUSH2 0x3CB0 DUP1 PUSH3 0x270F DUP4 CODECOPY ADD SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x272 DUP2 PUSH3 0x3D7 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0x289 DUP2 PUSH3 0x3F1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH3 0x2A9 JUMPI PUSH3 0x2A8 PUSH3 0x3A9 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0x2B9 DUP6 DUP3 DUP7 ADD PUSH3 0x278 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH3 0x2CC DUP6 DUP3 DUP7 ADD PUSH3 0x261 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH3 0x2E1 DUP2 PUSH3 0x35E JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x2F6 PUSH1 0x19 DUP4 PUSH3 0x34D JUMP JUMPDEST SWAP2 POP PUSH3 0x303 DUP3 PUSH3 0x3AE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH3 0x325 PUSH1 0x0 DUP4 ADD DUP5 PUSH3 0x2D6 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH3 0x346 DUP2 PUSH3 0x2E7 JUMP JUMPDEST 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 PUSH3 0x36B DUP3 PUSH3 0x372 JUMP JUMPDEST 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 PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x5573696E675769746E65743A207A65726F206164647265737300000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH3 0x3E2 DUP2 PUSH3 0x392 JUMP JUMPDEST DUP2 EQ PUSH3 0x3EE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH3 0x3FC DUP2 PUSH3 0x39C JUMP JUMPDEST DUP2 EQ PUSH3 0x408 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH2 0x22B5 PUSH3 0x45A PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x979 ADD MSTORE DUP2 DUP2 PUSH2 0x9F7 ADD MSTORE DUP2 DUP2 PUSH2 0xCFA ADD MSTORE DUP2 DUP2 PUSH2 0xE02 ADD MSTORE DUP2 DUP2 PUSH2 0x10A8 ADD MSTORE PUSH2 0x11B1 ADD MSTORE PUSH1 0x0 PUSH2 0x703 ADD MSTORE PUSH2 0x22B5 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x109 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9938FD0C GT PUSH2 0x95 JUMPI DUP1 PUSH4 0xA60EE268 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0xA60EE268 EQ PUSH2 0x38B JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x3C8 JUMPI DUP1 PUSH4 0xE35329F8 EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0xE7D4A016 EQ PUSH2 0x435 JUMPI DUP1 PUSH4 0xFB476CAD EQ PUSH2 0x472 JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9938FD0C EQ PUSH2 0x2B8 JUMPI DUP1 PUSH4 0x9BC86FEC EQ PUSH2 0x2E3 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x320 JUMPI DUP1 PUSH4 0xA3252F68 EQ PUSH2 0x34B JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x40B41DAA GT PUSH2 0xDC JUMPI DUP1 PUSH4 0x40B41DAA EQ PUSH2 0x1DE JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x21B JUMPI DUP1 PUSH4 0x46D1D21A EQ PUSH2 0x244 JUMPI DUP1 PUSH4 0x699B328A EQ PUSH2 0x26F JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x28D JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x10E JUMPI DUP1 PUSH4 0x24CBBFC1 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x36B651BB EQ PUSH2 0x176 JUMPI DUP1 PUSH4 0x3B13E76E EQ PUSH2 0x1B3 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x11A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x123 PUSH2 0x4AF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x1959 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x145 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x160 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15B SWAP2 SWAP1 PUSH2 0x1679 JUMP JUMPDEST PUSH2 0x4C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x16D SWAP2 SWAP1 PUSH2 0x1AAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x182 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x19D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x198 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0x50D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C8 PUSH2 0x55C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1D5 SWAP2 SWAP1 PUSH2 0x198F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x200 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0x580 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x212 SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x227 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x242 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23D SWAP2 SWAP1 PUSH2 0x1583 JUMP JUMPDEST PUSH2 0x61C JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x250 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x259 PUSH2 0x701 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x266 SWAP2 SWAP1 PUSH2 0x1974 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x277 PUSH2 0x725 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x284 SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x299 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2A2 PUSH2 0x977 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AF SWAP2 SWAP1 PUSH2 0x184F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2CD PUSH2 0x99B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2DA SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x305 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0x9A1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x317 SWAP2 SWAP1 PUSH2 0x18D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x32C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x335 PUSH2 0x9F3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x342 SWAP2 SWAP1 PUSH2 0x18D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x357 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x372 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x36D SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xA4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x382 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1893 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x397 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3B2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3AD SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xAAB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3BF SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3EA SWAP2 SWAP1 PUSH2 0x1529 JUMP JUMPDEST PUSH2 0xAB7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x1959 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41A SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xAD2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x42C SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x441 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x45C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x457 SWAP2 SWAP1 PUSH2 0x1626 JUMP JUMPDEST PUSH2 0xB2D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x469 SWAP2 SWAP1 PUSH2 0x1AAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x47E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x499 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x494 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xBB4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A6 SWAP2 SWAP1 PUSH2 0x18F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x4B9 PUSH2 0xCF5 JUMP JUMPDEST SWAP1 POP PUSH2 0x4C4 DUP2 PUSH2 0xE7E JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP5 DUP5 CALLER PUSH2 0x4D8 DUP7 PUSH2 0xBB4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4E9 SWAP3 SWAP2 SWAP1 PUSH2 0x186A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH2 0xB2D JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x51F JUMPI PUSH2 0x51E PUSH2 0x1F90 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP4 GT PUSH2 0x552 JUMPI PUSH2 0x54D DUP4 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x101C JUMP JUMPDEST PUSH2 0x554 JUMP JUMPDEST DUP1 JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x5FD JUMPI PUSH2 0x5F8 DUP3 PUSH1 0x1 SLOAD PUSH2 0x1054 JUMP JUMPDEST PUSH2 0x615 JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6AB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A2 SWAP1 PUSH2 0x19AA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x6BF SWAP2 SWAP1 PUSH2 0x14FC JUMP JUMPDEST 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 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 NUMBER PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x919 JUMPI PUSH1 0x4 SLOAD SWAP1 POP DUP1 CALLVALUE LT ISZERO PUSH2 0x779 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x770 SWAP1 PUSH2 0x1A0A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP2 SLOAD PUSH2 0x78A SWAP1 PUSH2 0x1F47 JUMP JUMPDEST SWAP2 SWAP1 POP DUP2 SWAP1 SSTORE SWAP1 POP PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 NUMBER DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP CALLER DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP3 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x1 DUP2 SWAP1 SSTORE POP DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xAF291BB4E1767569C77502EDB6AD1009E856F57C09F214886C6BECC9836C20C0 DUP6 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9BD5A60 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 0x8C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8DB 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 0x8FF SWAP2 SWAP1 PUSH2 0x1556 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x90D SWAP3 SWAP2 SWAP1 PUSH2 0x1A85 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMPDEST CALLVALUE DUP2 LT ISZERO PUSH2 0x974 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 CALLVALUE PUSH2 0x947 SWAP2 SWAP1 PUSH2 0x1D6D JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x972 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x3 ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x9EB JUMPI POP PUSH1 0x3 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND DUP4 PUSH2 0x9E7 SWAP2 SWAP1 PUSH2 0x1B4C JUMP JUMPDEST NUMBER LT ISZERO JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x3 ADD SLOAD SWAP4 POP DUP1 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP5 POP DUP1 PUSH1 0x1 ADD SLOAD SWAP3 POP DUP1 PUSH1 0x2 ADD SLOAD SWAP2 POP POP SWAP2 SWAP4 POP SWAP2 SWAP4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAC2 DUP3 PUSH2 0x10A3 JUMP JUMPDEST SWAP1 POP PUSH2 0xACD DUP2 PUSH2 0xE7E JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 CALLVALUE GT ISZERO PUSH2 0xB24 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC CALLVALUE SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0xB22 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST PUSH1 0x0 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB39 DUP6 PUSH2 0x122F JUMP JUMPDEST PUSH1 0xFF PUSH2 0xB45 SWAP2 SWAP1 PUSH2 0x1DA1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x2 PUSH2 0xB58 SWAP2 SWAP1 PUSH2 0x1BF5 JUMP JUMPDEST PUSH2 0xB62 SWAP2 SWAP1 PUSH2 0x1D6D JUMP JUMPDEST DUP5 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB75 SWAP3 SWAP2 SWAP1 PUSH2 0x190E 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 0x0 SHR AND SWAP1 POP DUP2 PUSH1 0xFF AND DUP7 PUSH4 0xFFFFFFFF AND DUP3 PUSH2 0xBA7 SWAP2 SWAP1 PUSH2 0x1D13 JUMP JUMPDEST SWAP1 SHR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC2C JUMPI PUSH2 0xC29 DUP3 PUSH2 0x580 JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0xC8B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC82 SWAP1 PUSH2 0x1A2A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND DUP4 PUSH2 0xCA9 SWAP2 SWAP1 PUSH2 0x1B4C JUMP JUMPDEST NUMBER LT ISZERO PUSH2 0xCEB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE2 SWAP1 PUSH2 0x19CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 BLOCKHASH SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xDE9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDE0 SWAP1 PUSH2 0x1A4A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9ED4607 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xEE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xEFD 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 0xF21 SWAP2 SWAP1 PUSH2 0x15CC JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF5C SWAP2 SWAP1 PUSH2 0x184F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF76 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xF8A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xFBB SWAP2 SWAP1 PUSH2 0x184F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFE6 SWAP2 SWAP1 PUSH2 0x1937 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1000 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1014 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 GT PUSH2 0x104A JUMPI PUSH2 0x1045 DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x101C JUMP JUMPDEST PUSH2 0x104C JUMP JUMPDEST DUP2 JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 LT ISZERO PUSH2 0x1083 JUMPI PUSH2 0x107E DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x1054 JUMP JUMPDEST PUSH2 0x109B JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1198 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x118F SWAP1 PUSH2 0x19EA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD DUP1 PUSH2 0x400 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xD PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x15 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1D PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xE PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x10 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x12 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x16 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x19 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1E PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x14 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1C PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xF PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x11 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x18 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x13 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1B PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x17 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1A PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1F PUSH1 0xFF AND DUP2 MSTORE POP SWAP1 POP PUSH1 0x1 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x2 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x4 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x8 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x10 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP DUP1 PUSH1 0x1B PUSH4 0x7C4ACDD DUP6 PUSH4 0xFFFFFFFF AND PUSH2 0x13E2 SWAP2 SWAP1 PUSH2 0x1D13 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND SWAP1 SHR PUSH4 0xFFFFFFFF AND PUSH1 0x20 DUP2 LT PUSH2 0x1401 JUMPI PUSH2 0x1400 PUSH2 0x1FEE JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1421 PUSH2 0x141C DUP5 PUSH2 0x1AEE JUMP JUMPDEST PUSH2 0x1AC9 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x143D JUMPI PUSH2 0x143C PUSH2 0x2051 JUMP JUMPDEST JUMPDEST PUSH2 0x1448 DUP5 DUP3 DUP6 PUSH2 0x1ED4 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x145F DUP2 PUSH2 0x220C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1474 DUP2 PUSH2 0x2223 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1489 DUP2 PUSH2 0x2223 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x14A4 JUMPI PUSH2 0x14A3 PUSH2 0x204C JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x14B4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x140E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x14CC DUP2 PUSH2 0x223A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x14E1 DUP2 PUSH2 0x2251 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x14F6 DUP2 PUSH2 0x2268 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1512 JUMPI PUSH2 0x1511 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1520 DUP5 DUP3 DUP6 ADD PUSH2 0x1450 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x153F JUMPI PUSH2 0x153E PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x154D DUP5 DUP3 DUP6 ADD PUSH2 0x1465 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x156C JUMPI PUSH2 0x156B PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x157A DUP5 DUP3 DUP6 ADD PUSH2 0x147A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1599 JUMPI PUSH2 0x1598 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x15B7 JUMPI PUSH2 0x15B6 PUSH2 0x2056 JUMP JUMPDEST JUMPDEST PUSH2 0x15C3 DUP5 DUP3 DUP6 ADD PUSH2 0x148F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x15E2 JUMPI PUSH2 0x15E1 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x15F0 DUP5 DUP3 DUP6 ADD PUSH2 0x14BD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x160F JUMPI PUSH2 0x160E PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x161D DUP5 DUP3 DUP6 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x163F JUMPI PUSH2 0x163E PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x164D DUP7 DUP3 DUP8 ADD PUSH2 0x14E7 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x165E DUP7 DUP3 DUP8 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x166F DUP7 DUP3 DUP8 ADD PUSH2 0x1465 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1692 JUMPI PUSH2 0x1691 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x16A0 DUP7 DUP3 DUP8 ADD PUSH2 0x14E7 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x16B1 DUP7 DUP3 DUP8 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x16C2 DUP7 DUP3 DUP8 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x16D5 DUP2 PUSH2 0x1DD5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x16E4 DUP2 PUSH2 0x1DF9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x16F3 DUP2 PUSH2 0x1E05 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1704 DUP3 PUSH2 0x1B1F JUMP JUMPDEST PUSH2 0x170E DUP2 DUP6 PUSH2 0x1B2A JUMP JUMPDEST SWAP4 POP PUSH2 0x171E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1EE3 JUMP JUMPDEST PUSH2 0x1727 DUP2 PUSH2 0x2060 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x173B DUP2 PUSH2 0x1E68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x174A DUP2 PUSH2 0x1E7A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1759 DUP2 PUSH2 0x1E8C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x176C PUSH1 0x25 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x1777 DUP3 PUSH2 0x207E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x178F PUSH1 0x27 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x179A DUP3 PUSH2 0x20CD JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17B2 PUSH1 0x18 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x17BD DUP3 PUSH2 0x211C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17D5 PUSH1 0x24 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x17E0 DUP3 PUSH2 0x2145 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17F8 PUSH1 0x24 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x1803 DUP3 PUSH2 0x2194 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x181B PUSH1 0x17 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x1826 DUP3 PUSH2 0x21E3 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x183A DUP2 PUSH2 0x1E41 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1849 DUP2 PUSH2 0x1E4B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1864 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x16CC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x187F PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x16CC JUMP JUMPDEST PUSH2 0x188C PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x16EA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x18A8 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x16CC JUMP JUMPDEST PUSH2 0x18B5 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x1831 JUMP JUMPDEST PUSH2 0x18C2 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x1831 JUMP JUMPDEST PUSH2 0x18CF PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x1831 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x18ED PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x16DB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1908 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x16EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1923 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x16EA JUMP JUMPDEST PUSH2 0x1930 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1831 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 0x1951 DUP2 DUP5 PUSH2 0x16F9 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x196E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1732 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1989 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1741 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19A4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1750 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x19C3 DUP2 PUSH2 0x175F 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 0x19E3 DUP2 PUSH2 0x1782 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 0x1A03 DUP2 PUSH2 0x17A5 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 0x1A23 DUP2 PUSH2 0x17C8 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 0x1A43 DUP2 PUSH2 0x17EB 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 0x1A63 DUP2 PUSH2 0x180E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1A7F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1831 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1A9A PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1831 JUMP JUMPDEST PUSH2 0x1AA7 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x16EA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1AC3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1840 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AD3 PUSH2 0x1AE4 JUMP JUMPDEST SWAP1 POP PUSH2 0x1ADF DUP3 DUP3 PUSH2 0x1F16 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 0x1B09 JUMPI PUSH2 0x1B08 PUSH2 0x201D JUMP JUMPDEST JUMPDEST PUSH2 0x1B12 DUP3 PUSH2 0x2060 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 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B57 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B62 DUP4 PUSH2 0x1E41 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1B97 JUMPI PUSH2 0x1B96 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x1BEC JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x1BC8 JUMPI PUSH2 0x1BC7 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x1BD7 JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x1BE5 DUP6 PUSH2 0x2071 JUMP JUMPDEST SWAP5 POP PUSH2 0x1BAC JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C00 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C0B DUP4 PUSH2 0x1E5B JUMP JUMPDEST SWAP3 POP PUSH2 0x1C38 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x1C40 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x1C50 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x1D0C JUMP JUMPDEST DUP2 PUSH2 0x1C5E JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x1D0C JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x1C74 JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x1C7E JUMPI PUSH2 0x1CAD JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x1D0C JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x1C90 JUMPI PUSH2 0x1C8F PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x1CA7 JUMPI PUSH2 0x1CA6 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST POP PUSH2 0x1D0C JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x1CE2 JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x1CDD JUMPI PUSH2 0x1CDC PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST PUSH2 0x1D0C JUMP JUMPDEST PUSH2 0x1CEF DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x1BA2 JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x1D06 JUMPI PUSH2 0x1D05 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D1E DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1D29 DUP4 PUSH2 0x1E41 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x1D62 JUMPI PUSH2 0x1D61 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D78 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1D83 DUP4 PUSH2 0x1E41 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x1D96 JUMPI PUSH2 0x1D95 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DAC DUP3 PUSH2 0x1E5B JUMP JUMPDEST SWAP2 POP PUSH2 0x1DB7 DUP4 PUSH2 0x1E5B JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x1DCA JUMPI PUSH2 0x1DC9 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DE0 DUP3 PUSH2 0x1E21 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DF2 DUP3 PUSH2 0x1E21 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 PUSH2 0x1E1A DUP3 PUSH2 0x1DD5 JUMP JUMPDEST 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E73 DUP3 PUSH2 0x1E9E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E85 DUP3 PUSH2 0x1EB0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E97 DUP3 PUSH2 0x1E9E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EA9 DUP3 PUSH2 0x1EC2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EBB DUP3 PUSH2 0x1EC2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ECD DUP3 PUSH2 0x1E21 JUMP JUMPDEST 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 0x1F01 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1EE6 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1F10 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1F1F DUP3 PUSH2 0x2060 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1F3E JUMPI PUSH2 0x1F3D PUSH2 0x201D JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F52 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x1F85 JUMPI PUSH2 0x1F84 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A20616C726561647920696E69746961 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C697A6564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573734D6F636B3A2070656E64696E67207261 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E646F6D697A6500000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573734D6F636B3A2072657761726420746F6F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206C6F7700000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573734D6F636B3A206E6F742072616E646F6D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x697A656400000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x2215 DUP2 PUSH2 0x1DE7 JUMP JUMPDEST DUP2 EQ PUSH2 0x2220 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x222C DUP2 PUSH2 0x1E05 JUMP JUMPDEST DUP2 EQ PUSH2 0x2237 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2243 DUP2 PUSH2 0x1E0F JUMP JUMPDEST DUP2 EQ PUSH2 0x224E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x225A DUP2 PUSH2 0x1E41 JUMP JUMPDEST DUP2 EQ PUSH2 0x2265 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2271 DUP2 PUSH2 0x1E4B JUMP JUMPDEST DUP2 EQ PUSH2 0x227C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC4 EXTCODEHASH PUSH15 0x704BFD58FC565704A9130B6E8F4FD2 0x4F SWAP3 0xBA SWAP13 GAS CALLDATACOPY 0xC9 MSTORE 0xAF 0x2E 0xBF SSTORE SWAP7 BLOCKHASH PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER PUSH1 0xA0 PUSH1 0x40 MSTORE ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP CALLVALUE DUP1 ISZERO PUSH3 0x47 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x68 PUSH3 0x5C PUSH3 0x8E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x96 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x88 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH3 0x17E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x1259 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0xA8 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH3 0xDF PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH3 0x1C9 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH3 0x1F4 PUSH1 0x20 SHL PUSH3 0xE26 OR PUSH1 0x20 SHR JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x206 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH3 0x216 SWAP1 PUSH3 0xF58 JUMP JUMPDEST SWAP1 POP EQ PUSH3 0x25B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x252 SWAP1 PUSH3 0xD78 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x26C DUP2 PUSH3 0x28F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x28C PUSH3 0x280 PUSH3 0x8E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x96 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH3 0x2A4 JUMPI PUSH3 0x2A3 PUSH3 0xFC4 JUMP JUMPDEST JUMPDEST DUP1 PUSH3 0x2B5 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x2CD SWAP3 SWAP2 SWAP1 PUSH3 0xA17 JUMP JUMPDEST POP PUSH1 0x0 PUSH3 0x2E0 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x42B DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH3 0x42F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH3 0x47F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x476 SWAP1 PUSH3 0xD56 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH3 0x498 JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH3 0x4DA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x4D1 SWAP1 PUSH3 0xD9A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH3 0x4F3 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH3 0x535 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x52C SWAP1 PUSH3 0xD34 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH3 0x589 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x580 SWAP1 PUSH3 0xDBC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x599 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD PUSH3 0x5B2 PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5C8 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH3 0x99A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5DE PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5F4 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH3 0x99A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x60A PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x621 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xCD0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH3 0x640 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x658 SWAP3 SWAP2 SWAP1 PUSH3 0xA17 JUMP JUMPDEST POP PUSH3 0x712 PUSH3 0x66D PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH3 0x67D SWAP1 PUSH3 0xF58 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 PUSH3 0x6AB SWAP1 PUSH3 0xF58 JUMP JUMPDEST DUP1 ISZERO PUSH3 0x6FC JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x6D0 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x6FC 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 PUSH3 0x6DE JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH3 0x9B9 PUSH1 0x20 SHL PUSH3 0xE9C OR PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x722 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH3 0x779 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xDDE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH3 0x7D2 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH3 0x7CA SWAP2 SWAP1 PUSH3 0xE77 JUMP JUMPDEST SWAP1 POP PUSH3 0x796 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x7FB JUMPI PUSH3 0x7FA PUSH3 0x1080 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH3 0x82E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x84C JUMPI PUSH3 0x84B PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH3 0x91F JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH3 0x8C9 JUMPI PUSH3 0x8C8 PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH3 0x916 SWAP1 PUSH3 0xF8E JUMP JUMPDEST SWAP2 POP POP PUSH3 0x882 JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH3 0x935 SWAP2 SWAP1 PUSH3 0xEBC JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH3 0x953 JUMPI PUSH3 0x952 PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH3 0x9B1 DUP4 DUP4 PUSH1 0xFF AND PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH3 0x9CD SWAP2 SWAP1 PUSH3 0xCB7 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x9EB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 PUSH3 0xA10 SWAP2 SWAP1 PUSH3 0xADE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0xA25 SWAP1 PUSH3 0xF58 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0xA49 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0xA95 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0xA64 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0xA95 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0xA95 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0xA94 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0xA77 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0xAA4 SWAP2 SWAP1 PUSH3 0xAA8 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0xAC3 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0xAA9 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0xAD8 DUP2 PUSH3 0x123F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xAF7 JUMPI PUSH3 0xAF6 PUSH3 0x10AF JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0xB07 DUP5 DUP3 DUP6 ADD PUSH3 0xAC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xB1D DUP3 PUSH3 0xE50 JUMP JUMPDEST PUSH3 0xB29 DUP2 DUP6 PUSH3 0xE5B JUMP JUMPDEST SWAP4 POP PUSH3 0xB3B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH3 0xF22 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH3 0xB56 DUP2 PUSH3 0xF58 JUMP JUMPDEST PUSH3 0xB62 DUP2 DUP7 PUSH3 0xE5B JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH3 0xB80 JUMPI PUSH1 0x1 DUP2 EQ PUSH3 0xB92 JUMPI PUSH3 0xBC9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH3 0xBC9 JUMP JUMPDEST PUSH3 0xB9D DUP6 PUSH3 0xE3B JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xBC1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0xBA0 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xBE1 PUSH1 0x3D DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xBEE DUP3 PUSH3 0x10B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC08 PUSH1 0x25 DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC15 DUP3 PUSH3 0x1103 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC2F PUSH1 0x2F DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC3C DUP3 PUSH3 0x1152 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC56 PUSH1 0x3C DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC63 DUP3 PUSH3 0x11A1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC7D PUSH1 0x3D DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC8A DUP3 PUSH3 0x11F0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0xCA0 DUP2 PUSH3 0xF01 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH3 0xCB1 DUP2 PUSH3 0xF15 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCC5 DUP3 DUP5 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCDE DUP3 DUP10 PUSH3 0xB47 JUMP JUMPDEST SWAP2 POP PUSH3 0xCEC DUP3 DUP9 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xCFA DUP3 DUP8 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD08 DUP3 DUP7 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD16 DUP3 DUP6 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD24 DUP3 DUP5 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 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 PUSH3 0xD4F DUP2 PUSH3 0xBD2 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 PUSH3 0xD71 DUP2 PUSH3 0xBF9 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 PUSH3 0xD93 DUP2 PUSH3 0xC20 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 PUSH3 0xDB5 DUP2 PUSH3 0xC47 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 PUSH3 0xDD7 DUP2 PUSH3 0xC6E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH3 0xDF5 PUSH1 0x0 DUP4 ADD DUP9 PUSH3 0xCA6 JUMP JUMPDEST PUSH3 0xE04 PUSH1 0x20 DUP4 ADD DUP8 PUSH3 0xCA6 JUMP JUMPDEST PUSH3 0xE13 PUSH1 0x40 DUP4 ADD DUP7 PUSH3 0xC95 JUMP JUMPDEST PUSH3 0xE22 PUSH1 0x60 DUP4 ADD DUP6 PUSH3 0xC95 JUMP JUMPDEST PUSH3 0xE31 PUSH1 0x80 DUP4 ADD DUP5 PUSH3 0xC95 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 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 PUSH3 0xE84 DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH3 0xE91 DUP4 PUSH3 0xF01 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH3 0xEB1 JUMPI PUSH3 0xEB0 PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xEC9 DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH3 0xED6 DUP4 PUSH3 0xF01 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH3 0xEEC JUMPI PUSH3 0xEEB PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xF42 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0xF25 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH3 0xF52 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 PUSH3 0xF71 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0xF88 JUMPI PUSH3 0xF87 PUSH3 0x1022 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xF9B DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH3 0xFB9 JUMPI PUSH3 0xFB8 PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH3 0x124A DUP2 PUSH3 0xEF7 JUMP JUMPDEST DUP2 EQ PUSH3 0x1256 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH2 0x2A15 PUSH3 0x129B PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x629 ADD MSTORE DUP2 DUP2 PUSH2 0x791 ADD MSTORE DUP2 DUP2 PUSH2 0xF22 ADD MSTORE DUP2 DUP2 PUSH2 0x102A ADD MSTORE DUP2 DUP2 PUSH2 0x1473 ADD MSTORE PUSH2 0x157C ADD MSTORE PUSH2 0x2A15 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 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xDAAA360C GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x287 JUMPI DUP1 PUSH4 0xEF53D97A EQ PUSH2 0x2B7 JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x2D5 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0xFF21C3BA EQ PUSH2 0x30F JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x213 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x231 JUMPI DUP1 PUSH4 0xD196C2E3 EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xD9B9A961 EQ PUSH2 0x26B JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x52D1902D GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x52D1902D EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x6F2DDD93 EQ PUSH2 0x1AF JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x1CD JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x1EB JUMPI DUP1 PUSH4 0x8A481DAD EQ PUSH2 0x1F5 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x157 JUMPI DUP1 PUSH4 0x48F9B831 EQ PUSH2 0x173 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x32B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x141 PUSH2 0x33E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x14E SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x171 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x16C SWAP2 SWAP1 PUSH2 0x1BE5 JUMP JUMPDEST PUSH2 0x42D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17B PUSH2 0x46E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x188 SWAP2 SWAP1 PUSH2 0x22AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x199 PUSH2 0x561 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1A6 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1B7 PUSH2 0x58C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C4 SWAP2 SWAP1 PUSH2 0x212E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1D5 PUSH2 0x627 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E2 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F3 PUSH2 0x64B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1FD PUSH2 0x6D3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x20A SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x21B PUSH2 0x75A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x228 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x239 PUSH2 0x78D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x246 SWAP2 SWAP1 PUSH2 0x20F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x269 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x264 SWAP2 SWAP1 PUSH2 0x1C9B JUMP JUMPDEST PUSH2 0x7E4 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x285 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x1C2E JUMP JUMPDEST PUSH2 0x903 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x29C SWAP2 SWAP1 PUSH2 0x1B8B JUMP JUMPDEST PUSH2 0xA1C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AE SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2BF PUSH2 0xB0E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2CC SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2DD PUSH2 0xB66 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x212E 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 0x1B5E JUMP JUMPDEST PUSH2 0xC01 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x329 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x324 SWAP2 SWAP1 PUSH2 0x1C5B JUMP JUMPDEST PUSH2 0xCF9 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0x335 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x348 PUSH2 0xF1D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0x36E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38D SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3BB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F8 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x412 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x426 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP1 JUMP JUMPDEST PUSH2 0x46B PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH2 0xE26 JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x476 PUSH2 0x198F JUMP JUMPDEST PUSH2 0x47E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x851D0A92A3AD30295BEF33AFC69D6874779826B7789386B336E22621365ED2C2 PUSH1 0x0 SHL SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x596 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x5A4 SWAP1 PUSH2 0x258A 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 0x5D0 SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x61D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5F2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x61D 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 0x600 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x653 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x671 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6BE SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x6D1 PUSH1 0x0 PUSH2 0x10AE JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x6DE PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH2 0x721 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH2 0x72B SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0x74A SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x764 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x7EC PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x80A PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x860 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x857 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x86A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x8FE DUP4 DUP4 DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x90B PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x929 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x97F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x976 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x989 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xA18 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP5 DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA27 DUP3 PUSH2 0x146E JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0xA4D PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA6C SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xA86 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xA9A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xAF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xB05 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB19 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0xB56 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0xB70 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0xB7E SWAP1 PUSH2 0x258A 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 0xBAA SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0xBF7 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xBCC JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xBF7 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 0xBDA JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0xC09 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC27 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xC7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC74 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xCED JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE4 SWAP1 PUSH2 0x218D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCF6 DUP2 PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0xD01 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD1F PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD6C SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xD7F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xE21 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP7 DUP7 PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE30 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0xE3E SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 POP EQ PUSH2 0xE80 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE77 SWAP1 PUSH2 0x220D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xE89 DUP2 PUSH2 0x15FA JUMP JUMPDEST PUSH2 0xE99 PUSH2 0xE94 PUSH2 0x10A6 JUMP JUMPDEST PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0xEAE SWAP2 SWAP1 PUSH2 0x206E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xECB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0xEEE SWAP2 SWAP1 PUSH2 0x1BB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1011 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1008 SWAP1 PUSH2 0x228D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x10B8 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH2 0x10E7 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH2 0x11D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11CA SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x11EB JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x122A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1221 SWAP1 PUSH2 0x222D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x1242 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x1281 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1278 SWAP1 PUSH2 0x21AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x12D2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12C9 SWAP1 PUSH2 0x226D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x12DA PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x12EB PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x12F9 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1307 PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x1315 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1323 PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH2 0x177D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1338 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2085 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x134F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x1365 SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH2 0x1402 PUSH2 0x1371 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x137F SWAP1 PUSH2 0x258A 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 0x13AB SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x13F8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13CD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x13F8 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 0x13DB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0xE9C JUMP JUMPDEST PUSH2 0x140A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x145F SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x22E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1563 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x155A SWAP1 PUSH2 0x21ED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x160C JUMPI PUSH2 0x160B PUSH2 0x261E JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x1615 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x162B SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x1636 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1779 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x17C3 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH2 0x17BC SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST SWAP1 POP PUSH2 0x178B JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x17E9 JUMPI PUSH2 0x17E8 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x181B JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1836 JUMPI PUSH2 0x1835 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1902 JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x18AF JUMPI PUSH2 0x18AE PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH2 0x18FA SWAP1 PUSH2 0x25ED JUMP JUMPDEST SWAP2 POP POP PUSH2 0x186C JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH2 0x1916 SWAP2 SWAP1 PUSH2 0x2459 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1931 JUMPI PUSH2 0x1930 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1987 DUP4 DUP4 PUSH1 0xFF AND PUSH2 0x177D JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x19EE SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1A10 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1A29 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1A57 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1A56 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1A3B JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1A64 SWAP2 SWAP1 PUSH2 0x1A68 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1A81 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1A69 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A98 PUSH2 0x1A93 DUP5 PUSH2 0x235B JUMP JUMPDEST PUSH2 0x2336 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1AB4 JUMPI PUSH2 0x1AB3 PUSH2 0x270E JUMP JUMPDEST JUMPDEST PUSH2 0x1ABF DUP5 DUP3 DUP6 PUSH2 0x2548 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AD6 DUP2 PUSH2 0x2983 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AEB DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1B00 DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B1B JUMPI PUSH2 0x1B1A PUSH2 0x2709 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B2B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1A85 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B43 DUP2 PUSH2 0x29B1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B58 DUP2 PUSH2 0x29C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B74 JUMPI PUSH2 0x1B73 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B82 DUP5 DUP3 DUP6 ADD PUSH2 0x1AC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BA1 JUMPI PUSH2 0x1BA0 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BAF DUP5 DUP3 DUP6 ADD PUSH2 0x1ADC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BCE JUMPI PUSH2 0x1BCD PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BDC DUP5 DUP3 DUP6 ADD PUSH2 0x1AF1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BFB JUMPI PUSH2 0x1BFA PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C19 JUMPI PUSH2 0x1C18 PUSH2 0x2713 JUMP JUMPDEST JUMPDEST PUSH2 0x1C25 DUP5 DUP3 DUP6 ADD PUSH2 0x1B06 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1C44 JUMPI PUSH2 0x1C43 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C52 DUP5 DUP3 DUP6 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C72 JUMPI PUSH2 0x1C71 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C80 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1C91 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1CB2 JUMPI PUSH2 0x1CB1 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CC0 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1CD1 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1CE4 DUP2 PUSH2 0x248D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1CF3 DUP2 PUSH2 0x249F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1D02 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D13 DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D1D DUP2 DUP6 PUSH2 0x23AC JUMP JUMPDEST SWAP4 POP PUSH2 0x1D2D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST PUSH2 0x1D36 DUP2 PUSH2 0x271D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D4C DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D56 DUP2 DUP6 PUSH2 0x23BD JUMP JUMPDEST SWAP4 POP PUSH2 0x1D66 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1D7F DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1D89 DUP2 DUP7 PUSH2 0x23AC JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1DA4 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1DB6 JUMPI PUSH2 0x1DE9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE PUSH1 0x20 DUP7 ADD SWAP4 POP PUSH2 0x1DE9 JUMP JUMPDEST PUSH2 0x1DBF DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1DE1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1DC2 JUMP JUMPDEST DUP1 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1DFF DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1E09 DUP2 DUP7 PUSH2 0x23BD JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1E24 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1E35 JUMPI PUSH2 0x1E68 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH2 0x1E68 JUMP JUMPDEST PUSH2 0x1E3E DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E60 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1E41 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1E7A DUP2 PUSH2 0x2512 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E8D PUSH1 0x26 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E98 DUP3 PUSH2 0x272E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EB0 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EBB DUP3 PUSH2 0x277D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ED3 PUSH1 0x25 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EDE DUP3 PUSH2 0x27CC JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF6 PUSH1 0x18 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F01 DUP3 PUSH2 0x281B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F19 PUSH1 0x2F DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F24 DUP3 PUSH2 0x2844 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F3C PUSH1 0x3C DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F47 DUP3 PUSH2 0x2893 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F5F PUSH1 0x20 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F6A DUP3 PUSH2 0x28E2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F82 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F8D DUP3 PUSH2 0x290B JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA5 PUSH1 0x17 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FB0 DUP3 PUSH2 0x295A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x1FD1 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x1FE4 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x1FF7 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x200A PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x201D PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x202C DUP2 PUSH2 0x24B5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x203B DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x204A DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2059 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2068 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x207A DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2091 DUP3 DUP10 PUSH2 0x1DF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x209D DUP3 DUP9 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20A9 DUP3 DUP8 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20B5 DUP3 DUP7 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20C1 DUP3 DUP6 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20CD DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20F2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CDB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x210D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CEA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2128 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CF9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2148 DUP2 DUP5 PUSH2 0x1D08 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 0x216A DUP2 DUP5 PUSH2 0x1D72 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2187 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1E71 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21A6 DUP2 PUSH2 0x1E80 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 0x21C6 DUP2 PUSH2 0x1EA3 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 0x21E6 DUP2 PUSH2 0x1EC6 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 0x2206 DUP2 PUSH2 0x1EE9 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 0x2226 DUP2 PUSH2 0x1F0C 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 0x2246 DUP2 PUSH2 0x1F2F 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 0x2266 DUP2 PUSH2 0x1F52 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 0x2286 DUP2 PUSH2 0x1F75 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 0x22A6 DUP2 PUSH2 0x1F98 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22C2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FBB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x22DD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2023 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22F8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2305 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2312 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x231F PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x232C PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2041 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2340 PUSH2 0x2351 JUMP JUMPDEST SWAP1 POP PUSH2 0x234C DUP3 DUP3 PUSH2 0x25BC 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 0x2376 JUMPI PUSH2 0x2375 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH2 0x237F DUP3 PUSH2 0x271D JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 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 DUP2 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 0x23E4 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x23EF DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x240C JUMPI PUSH2 0x240B PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2422 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x242D DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x244E JUMPI PUSH2 0x244D PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2464 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x246F DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2482 JUMPI PUSH2 0x2481 PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2498 DUP3 PUSH2 0x24D1 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 PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x251D DUP3 PUSH2 0x2524 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x252F DUP3 PUSH2 0x2536 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2541 DUP3 PUSH2 0x24D1 JUMP JUMPDEST 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 0x2575 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x255A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2584 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 0x25A2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x25B6 JUMPI PUSH2 0x25B5 PUSH2 0x267C JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25C5 DUP3 PUSH2 0x271D JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x25E4 JUMPI PUSH2 0x25E3 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F8 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2613 JUMPI PUSH2 0x2612 PUSH2 0x264D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x298C DUP2 PUSH2 0x248D JUMP JUMPDEST DUP2 EQ PUSH2 0x2997 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29A3 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP2 EQ PUSH2 0x29AE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29BA DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP2 EQ PUSH2 0x29C5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29D1 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP2 EQ PUSH2 0x29DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 XOR 0xD3 0xBE SWAP6 REVERT 0xCB 0xD8 0xBC PUSH16 0x654DC2EB3DCDC04B923B60A7642BD2F GASLIMIT 0x49 CALLDATACOPY CALLCODE PUSH26 0xD0F064736F6C6343000807003300000000000000000000000000 ","sourceMap":"509:6192:33:-:0;;;350:4:34;310:45;;;;;;;;;;;1013:334:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1174:42;1001:4:10;620:1:8;595:27;;603:4;595:27;;;;587:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;671:4;662:13;;;;;;;;;;;;536:146;1047:29:10::1;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;1021:23;::::0;:55:::1;;;;;;;;;;;;;;;;;;1086:23;::::0;::::1;;;;;;;;:41;;;1128:10;1086:53;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;944:202:::0;1265:27:33::1;1234:28;;:58;;;;;;;;;;;;;;;;;;1323:17;1302:18;:38;;;;1013:334:::0;;509:6192;;;;;;;;;;:::o;7:143:46:-;64:5;95:6;89:13;80:22;;111:33;138:5;111:33;:::i;:::-;7:143;;;;:::o;156:139::-;211:5;242:6;236:13;227:22;;258:31;283:5;258:31;:::i;:::-;156:139;;;;:::o;301:503::-;378:6;386;435:2;423:9;414:7;410:23;406:32;403:119;;;441:79;;:::i;:::-;403:119;561:1;586:62;640:7;631:6;620:9;616:22;586:62;:::i;:::-;576:72;;532:126;697:2;723:64;779:7;770:6;759:9;755:22;723:64;:::i;:::-;713:74;;668:129;301:503;;;;;:::o;810:118::-;897:24;915:5;897:24;:::i;:::-;892:3;885:37;810:118;;:::o;934:366::-;1076:3;1097:67;1161:2;1156:3;1097:67;:::i;:::-;1090:74;;1173:93;1262:3;1173:93;:::i;:::-;1291:2;1286:3;1282:12;1275:19;;934:366;;;:::o;1306:222::-;1399:4;1437:2;1426:9;1422:18;1414:26;;1450:71;1518:1;1507:9;1503:17;1494:6;1450:71;:::i;:::-;1306:222;;;;:::o;1534:419::-;1700:4;1738:2;1727:9;1723:18;1715:26;;1787:9;1781:4;1777:20;1773:1;1762:9;1758:17;1751:47;1815:131;1941:4;1815:131;:::i;:::-;1807:139;;1534:419;;;:::o;2040:169::-;2124:11;2158:6;2153:3;2146:19;2198:4;2193:3;2189:14;2174:29;;2040:169;;;;:::o;2215:96::-;2252:7;2281:24;2299:5;2281:24;:::i;:::-;2270:35;;2215:96;;;:::o;2317:126::-;2354:7;2394:42;2387:5;2383:54;2372:65;;2317:126;;;:::o;2449:77::-;2486:7;2515:5;2504:16;;2449:77;;;:::o;2532:86::-;2567:7;2607:4;2600:5;2596:16;2585:27;;2532:86;;;:::o;2747:117::-;2856:1;2853;2846:12;2870:175;3010:27;3006:1;2998:6;2994:14;2987:51;2870:175;:::o;3051:122::-;3124:24;3142:5;3124:24;:::i;:::-;3117:5;3114:35;3104:63;;3163:1;3160;3153:12;3104:63;3051:122;:::o;3179:118::-;3250:22;3266:5;3250:22;:::i;:::-;3243:5;3240:33;3230:61;;3287:1;3284;3277:12;3230:61;3179:118;:::o;509:6192:33:-;;;;;;;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_clone_1122":{"entryPoint":3710,"id":1122,"parameterSlots":1,"returnSlots":0},"@_msbDeBruijn32_1215":{"entryPoint":4655,"id":1215,"parameterSlots":1,"returnSlots":1},"@_searchNextBlock_1244":{"entryPoint":4180,"id":1244,"parameterSlots":2,"returnSlots":1},"@_searchPrevBlock_1270":{"entryPoint":4124,"id":1270,"parameterSlots":2,"returnSlots":1},"@cloneDeterministic_1055":{"entryPoint":2743,"id":1055,"parameterSlots":1,"returnSlots":1},"@cloneDeterministic_7947":{"entryPoint":4259,"id":7947,"parameterSlots":1,"returnSlots":1},"@clone_1033":{"entryPoint":1199,"id":1033,"parameterSlots":0,"returnSlots":1},"@clone_7910":{"entryPoint":3317,"id":7910,"parameterSlots":0,"returnSlots":1},"@cloned_7875":{"entryPoint":2547,"id":7875,"parameterSlots":0,"returnSlots":1},"@estimateRandomizeFee_7578":{"entryPoint":2731,"id":7578,"parameterSlots":1,"returnSlots":1},"@getRandomizeData_7621":{"entryPoint":2634,"id":7621,"parameterSlots":1,"returnSlots":4},"@getRandomnessAfter_7676":{"entryPoint":2996,"id":7676,"parameterSlots":1,"returnSlots":1},"@getRandomnessNextBlock_714":{"entryPoint":1408,"id":714,"parameterSlots":1,"returnSlots":1},"@getRandomnessPrevBlock_749":{"entryPoint":1293,"id":749,"parameterSlots":1,"returnSlots":1},"@initialize_1088":{"entryPoint":1564,"id":1088,"parameterSlots":1,"returnSlots":0},"@isRandomized_7706":{"entryPoint":2465,"id":7706,"parameterSlots":1,"returnSlots":1},"@latestRandomizeBlock_500":{"entryPoint":2459,"id":500,"parameterSlots":0,"returnSlots":0},"@random_806":{"entryPoint":1223,"id":806,"parameterSlots":3,"returnSlots":1},"@random_863":{"entryPoint":2861,"id":863,"parameterSlots":3,"returnSlots":1},"@randomize_7809":{"entryPoint":1829,"id":7809,"parameterSlots":0,"returnSlots":1},"@self_7850":{"entryPoint":2423,"id":7850,"parameterSlots":0,"returnSlots":0},"@upgradeRandomizeFee_7837":{"entryPoint":2770,"id":7837,"parameterSlots":1,"returnSlots":1},"@witnetRandomnessRequest_497":{"entryPoint":1372,"id":497,"parameterSlots":0,"returnSlots":0},"@witnet_257":{"entryPoint":1793,"id":257,"parameterSlots":0,"returnSlots":0},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":5134,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_address_payable_fromMemory":{"entryPoint":5200,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32":{"entryPoint":5221,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":5242,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":5263,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_contract$_Clonable_$7948_fromMemory":{"entryPoint":5309,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint256":{"entryPoint":5330,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint32":{"entryPoint":5351,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_address_payable_fromMemory":{"entryPoint":5372,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32":{"entryPoint":5417,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":5462,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":5507,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_contract$_Clonable_$7948_fromMemory":{"entryPoint":5580,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint256":{"entryPoint":5625,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint32t_uint256t_bytes32":{"entryPoint":5670,"id":null,"parameterSlots":2,"returnSlots":3},"abi_decode_tuple_t_uint32t_uint256t_uint256":{"entryPoint":5753,"id":null,"parameterSlots":2,"returnSlots":3},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":5836,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_fromStack":{"entryPoint":5851,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32_fromStack":{"entryPoint":5866,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":5881,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack":{"entryPoint":5938,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack":{"entryPoint":5953,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack":{"entryPoint":5968,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack":{"entryPoint":5983,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18_to_t_string_memory_ptr_fromStack":{"entryPoint":6018,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack":{"entryPoint":6053,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1_to_t_string_memory_ptr_fromStack":{"entryPoint":6088,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892_to_t_string_memory_ptr_fromStack":{"entryPoint":6123,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack":{"entryPoint":6158,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_uint256_to_t_uint256_fromStack":{"entryPoint":6193,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint32_to_t_uint32_fromStack":{"entryPoint":6208,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":6223,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_address_t_bytes32__to_t_address_t_bytes32__fromStack_reversed":{"entryPoint":6250,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_address_t_uint256_t_uint256_t_uint256__to_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed":{"entryPoint":6291,"id":null,"parameterSlots":5,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed":{"entryPoint":6360,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed":{"entryPoint":6387,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed":{"entryPoint":6414,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":6455,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed":{"entryPoint":6489,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_WitnetRequestBoard_$481__to_t_address_payable__fromStack_reversed":{"entryPoint":6516,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_WitnetRequestRandomness_$9072__to_t_address__fromStack_reversed":{"entryPoint":6543,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":6570,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":6602,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":6634,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":6666,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":6698,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":6730,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed":{"entryPoint":6762,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint256_t_bytes32__to_t_uint256_t_bytes32__fromStack_reversed":{"entryPoint":6789,"id":null,"parameterSlots":3,"returnSlots":1},"abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed":{"entryPoint":6830,"id":null,"parameterSlots":2,"returnSlots":1},"allocate_memory":{"entryPoint":6857,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":6884,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":6894,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":6943,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":6954,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":6971,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint256":{"entryPoint":6988,"id":null,"parameterSlots":2,"returnSlots":1},"checked_exp_helper":{"entryPoint":7074,"id":null,"parameterSlots":4,"returnSlots":2},"checked_exp_t_uint256_t_uint8":{"entryPoint":7157,"id":null,"parameterSlots":2,"returnSlots":1},"checked_exp_unsigned":{"entryPoint":7232,"id":null,"parameterSlots":3,"returnSlots":1},"checked_mul_t_uint256":{"entryPoint":7443,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint256":{"entryPoint":7533,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint8":{"entryPoint":7585,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":7637,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_address_payable":{"entryPoint":7655,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bool":{"entryPoint":7673,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":7685,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_contract$_Clonable_$7948":{"entryPoint":7695,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":7713,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint256":{"entryPoint":7745,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint32":{"entryPoint":7755,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":7771,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_Clonable_$7948_to_t_address":{"entryPoint":7784,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable":{"entryPoint":7802,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address":{"entryPoint":7820,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address":{"entryPoint":7838,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address_payable":{"entryPoint":7856,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_uint160":{"entryPoint":7874,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":7892,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":7907,"id":null,"parameterSlots":3,"returnSlots":0},"finalize_allocation":{"entryPoint":7958,"id":null,"parameterSlots":2,"returnSlots":0},"increment_t_uint256":{"entryPoint":8007,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x01":{"entryPoint":8080,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x11":{"entryPoint":8127,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":8174,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":8221,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":8268,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":8273,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":8278,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":8283,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":8288,"id":null,"parameterSlots":1,"returnSlots":1},"shift_right_1_unsigned":{"entryPoint":8305,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c":{"entryPoint":8318,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18":{"entryPoint":8397,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf":{"entryPoint":8476,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1":{"entryPoint":8517,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892":{"entryPoint":8596,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e":{"entryPoint":8675,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_address_payable":{"entryPoint":8716,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":8739,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_contract$_Clonable_$7948":{"entryPoint":8762,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint256":{"entryPoint":8785,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint32":{"entryPoint":8808,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:25919:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"494:88:46","statements":[{"nodeType":"YulAssignment","src":"504:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"519:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"513:5:46"},"nodeType":"YulFunctionCall","src":"513:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"504:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"570:5:46"}],"functionName":{"name":"validator_revert_t_address_payable","nodeType":"YulIdentifier","src":"535:34:46"},"nodeType":"YulFunctionCall","src":"535:41:46"},"nodeType":"YulExpressionStatement","src":"535:41:46"}]},"name":"abi_decode_t_address_payable_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"472:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"480:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"488:5:46","type":""}],"src":"423:159:46"},{"body":{"nodeType":"YulBlock","src":"640:87:46","statements":[{"nodeType":"YulAssignment","src":"650:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"672:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"659:12:46"},"nodeType":"YulFunctionCall","src":"659:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"650:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"715:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"688:26:46"},"nodeType":"YulFunctionCall","src":"688:33:46"},"nodeType":"YulExpressionStatement","src":"688:33:46"}]},"name":"abi_decode_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"618:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"626:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"634:5:46","type":""}],"src":"588:139:46"},{"body":{"nodeType":"YulBlock","src":"796:80:46","statements":[{"nodeType":"YulAssignment","src":"806:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"821:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"815:5:46"},"nodeType":"YulFunctionCall","src":"815:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"806:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"864:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"837:26:46"},"nodeType":"YulFunctionCall","src":"837:33:46"},"nodeType":"YulExpressionStatement","src":"837:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"774:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"782:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"790:5:46","type":""}],"src":"733:143:46"},{"body":{"nodeType":"YulBlock","src":"956:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"1005:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"1007:77:46"},"nodeType":"YulFunctionCall","src":"1007:79:46"},"nodeType":"YulExpressionStatement","src":"1007:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"984:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"992:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"980:3:46"},"nodeType":"YulFunctionCall","src":"980:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"999:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"976:3:46"},"nodeType":"YulFunctionCall","src":"976:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"969:6:46"},"nodeType":"YulFunctionCall","src":"969:35:46"},"nodeType":"YulIf","src":"966:122:46"},{"nodeType":"YulVariableDeclaration","src":"1097:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1124:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1111:12:46"},"nodeType":"YulFunctionCall","src":"1111:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"1101:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1140:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1200:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1208:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1196:3:46"},"nodeType":"YulFunctionCall","src":"1196:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"1215:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"1223:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1149:46:46"},"nodeType":"YulFunctionCall","src":"1149:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"1140:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"934:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"942:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"950:5:46","type":""}],"src":"895:338:46"},{"body":{"nodeType":"YulBlock","src":"1319:97:46","statements":[{"nodeType":"YulAssignment","src":"1329:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1344:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"1338:5:46"},"nodeType":"YulFunctionCall","src":"1338:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1329:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1404:5:46"}],"functionName":{"name":"validator_revert_t_contract$_Clonable_$7948","nodeType":"YulIdentifier","src":"1360:43:46"},"nodeType":"YulFunctionCall","src":"1360:50:46"},"nodeType":"YulExpressionStatement","src":"1360:50:46"}]},"name":"abi_decode_t_contract$_Clonable_$7948_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1297:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1305:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1313:5:46","type":""}],"src":"1239:177:46"},{"body":{"nodeType":"YulBlock","src":"1474:87:46","statements":[{"nodeType":"YulAssignment","src":"1484:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1506:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1493:12:46"},"nodeType":"YulFunctionCall","src":"1493:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1484:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1549:5:46"}],"functionName":{"name":"validator_revert_t_uint256","nodeType":"YulIdentifier","src":"1522:26:46"},"nodeType":"YulFunctionCall","src":"1522:33:46"},"nodeType":"YulExpressionStatement","src":"1522:33:46"}]},"name":"abi_decode_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1452:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1460:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1468:5:46","type":""}],"src":"1422:139:46"},{"body":{"nodeType":"YulBlock","src":"1618:86:46","statements":[{"nodeType":"YulAssignment","src":"1628:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1650:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1637:12:46"},"nodeType":"YulFunctionCall","src":"1637:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1628:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1692:5:46"}],"functionName":{"name":"validator_revert_t_uint32","nodeType":"YulIdentifier","src":"1666:25:46"},"nodeType":"YulFunctionCall","src":"1666:32:46"},"nodeType":"YulExpressionStatement","src":"1666:32:46"}]},"name":"abi_decode_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1596:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1604:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1612:5:46","type":""}],"src":"1567:137:46"},{"body":{"nodeType":"YulBlock","src":"1795:282:46","statements":[{"body":{"nodeType":"YulBlock","src":"1841:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1843:77:46"},"nodeType":"YulFunctionCall","src":"1843:79:46"},"nodeType":"YulExpressionStatement","src":"1843:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1816:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1825:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1812:3:46"},"nodeType":"YulFunctionCall","src":"1812:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1837:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1808:3:46"},"nodeType":"YulFunctionCall","src":"1808:32:46"},"nodeType":"YulIf","src":"1805:119:46"},{"nodeType":"YulBlock","src":"1934:136:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1949:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1963:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1953:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1978:82:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2032:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2043:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2028:3:46"},"nodeType":"YulFunctionCall","src":"2028:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2052:7:46"}],"functionName":{"name":"abi_decode_t_address_payable_fromMemory","nodeType":"YulIdentifier","src":"1988:39:46"},"nodeType":"YulFunctionCall","src":"1988:72:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1978:6:46"}]}]}]},"name":"abi_decode_tuple_t_address_payable_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1765:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1776:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1788:6:46","type":""}],"src":"1710:367:46"},{"body":{"nodeType":"YulBlock","src":"2149:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"2195:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"2197:77:46"},"nodeType":"YulFunctionCall","src":"2197:79:46"},"nodeType":"YulExpressionStatement","src":"2197:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"2170:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2179:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2166:3:46"},"nodeType":"YulFunctionCall","src":"2166:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"2191:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2162:3:46"},"nodeType":"YulFunctionCall","src":"2162:32:46"},"nodeType":"YulIf","src":"2159:119:46"},{"nodeType":"YulBlock","src":"2288:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2303:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2317:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2307:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2332:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2367:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2378:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2363:3:46"},"nodeType":"YulFunctionCall","src":"2363:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2387:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"2342:20:46"},"nodeType":"YulFunctionCall","src":"2342:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2332:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2119:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"2130:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"2142:6:46","type":""}],"src":"2083:329:46"},{"body":{"nodeType":"YulBlock","src":"2495:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"2541:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"2543:77:46"},"nodeType":"YulFunctionCall","src":"2543:79:46"},"nodeType":"YulExpressionStatement","src":"2543:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"2516:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2525:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2512:3:46"},"nodeType":"YulFunctionCall","src":"2512:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"2537:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2508:3:46"},"nodeType":"YulFunctionCall","src":"2508:32:46"},"nodeType":"YulIf","src":"2505:119:46"},{"nodeType":"YulBlock","src":"2634:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2649:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2663:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2653:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2678:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2724:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2735:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2720:3:46"},"nodeType":"YulFunctionCall","src":"2720:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2744:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"2688:31:46"},"nodeType":"YulFunctionCall","src":"2688:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2678:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2465:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"2476:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"2488:6:46","type":""}],"src":"2418:351:46"},{"body":{"nodeType":"YulBlock","src":"2850:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"2896:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"2898:77:46"},"nodeType":"YulFunctionCall","src":"2898:79:46"},"nodeType":"YulExpressionStatement","src":"2898:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"2871:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2880:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2867:3:46"},"nodeType":"YulFunctionCall","src":"2867:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"2892:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2863:3:46"},"nodeType":"YulFunctionCall","src":"2863:32:46"},"nodeType":"YulIf","src":"2860:119:46"},{"nodeType":"YulBlock","src":"2989:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3004:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3035:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"3046:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3031:3:46"},"nodeType":"YulFunctionCall","src":"3031:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"3018:12:46"},"nodeType":"YulFunctionCall","src":"3018:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3008:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"3096:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"3098:77:46"},"nodeType":"YulFunctionCall","src":"3098:79:46"},"nodeType":"YulExpressionStatement","src":"3098:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"3068:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"3076:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"3065:2:46"},"nodeType":"YulFunctionCall","src":"3065:30:46"},"nodeType":"YulIf","src":"3062:117:46"},{"nodeType":"YulAssignment","src":"3193:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3237:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3248:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3233:3:46"},"nodeType":"YulFunctionCall","src":"3233:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3257:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"3203:29:46"},"nodeType":"YulFunctionCall","src":"3203:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"3193:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2820:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"2831:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"2843:6:46","type":""}],"src":"2775:507:46"},{"body":{"nodeType":"YulBlock","src":"3382:291:46","statements":[{"body":{"nodeType":"YulBlock","src":"3428:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"3430:77:46"},"nodeType":"YulFunctionCall","src":"3430:79:46"},"nodeType":"YulExpressionStatement","src":"3430:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"3403:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3412:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3399:3:46"},"nodeType":"YulFunctionCall","src":"3399:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"3424:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3395:3:46"},"nodeType":"YulFunctionCall","src":"3395:32:46"},"nodeType":"YulIf","src":"3392:119:46"},{"nodeType":"YulBlock","src":"3521:145:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3536:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3550:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3540:6:46","type":""}]},{"nodeType":"YulAssignment","src":"3565:91:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3628:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3639:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3624:3:46"},"nodeType":"YulFunctionCall","src":"3624:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3648:7:46"}],"functionName":{"name":"abi_decode_t_contract$_Clonable_$7948_fromMemory","nodeType":"YulIdentifier","src":"3575:48:46"},"nodeType":"YulFunctionCall","src":"3575:81:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"3565:6:46"}]}]}]},"name":"abi_decode_tuple_t_contract$_Clonable_$7948_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3352:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"3363:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"3375:6:46","type":""}],"src":"3288:385:46"},{"body":{"nodeType":"YulBlock","src":"3745:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"3791:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"3793:77:46"},"nodeType":"YulFunctionCall","src":"3793:79:46"},"nodeType":"YulExpressionStatement","src":"3793:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"3766:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3775:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3762:3:46"},"nodeType":"YulFunctionCall","src":"3762:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"3787:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3758:3:46"},"nodeType":"YulFunctionCall","src":"3758:32:46"},"nodeType":"YulIf","src":"3755:119:46"},{"nodeType":"YulBlock","src":"3884:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3899:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3913:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3903:6:46","type":""}]},{"nodeType":"YulAssignment","src":"3928:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3963:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3974:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3959:3:46"},"nodeType":"YulFunctionCall","src":"3959:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3983:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"3938:20:46"},"nodeType":"YulFunctionCall","src":"3938:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"3928:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3715:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"3726:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"3738:6:46","type":""}],"src":"3679:329:46"},{"body":{"nodeType":"YulBlock","src":"4113:518:46","statements":[{"body":{"nodeType":"YulBlock","src":"4159:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"4161:77:46"},"nodeType":"YulFunctionCall","src":"4161:79:46"},"nodeType":"YulExpressionStatement","src":"4161:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"4134:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"4143:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"4130:3:46"},"nodeType":"YulFunctionCall","src":"4130:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"4155:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"4126:3:46"},"nodeType":"YulFunctionCall","src":"4126:32:46"},"nodeType":"YulIf","src":"4123:119:46"},{"nodeType":"YulBlock","src":"4252:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4267:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4281:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4271:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4296:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4330:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4341:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4326:3:46"},"nodeType":"YulFunctionCall","src":"4326:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4350:7:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"4306:19:46"},"nodeType":"YulFunctionCall","src":"4306:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"4296:6:46"}]}]},{"nodeType":"YulBlock","src":"4378:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4393:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4407:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4397:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4423:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4458:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4469:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4454:3:46"},"nodeType":"YulFunctionCall","src":"4454:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4478:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"4433:20:46"},"nodeType":"YulFunctionCall","src":"4433:53:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"4423:6:46"}]}]},{"nodeType":"YulBlock","src":"4506:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4521:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4535:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4525:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4551:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4586:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4597:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4582:3:46"},"nodeType":"YulFunctionCall","src":"4582:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4606:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"4561:20:46"},"nodeType":"YulFunctionCall","src":"4561:53:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"4551:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint32t_uint256t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4067:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"4078:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"4090:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"4098:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"4106:6:46","type":""}],"src":"4014:617:46"},{"body":{"nodeType":"YulBlock","src":"4736:518:46","statements":[{"body":{"nodeType":"YulBlock","src":"4782:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"4784:77:46"},"nodeType":"YulFunctionCall","src":"4784:79:46"},"nodeType":"YulExpressionStatement","src":"4784:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"4757:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"4766:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"4753:3:46"},"nodeType":"YulFunctionCall","src":"4753:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"4778:2:46","type":"","value":"96"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"4749:3:46"},"nodeType":"YulFunctionCall","src":"4749:32:46"},"nodeType":"YulIf","src":"4746:119:46"},{"nodeType":"YulBlock","src":"4875:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4890:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4904:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4894:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4919:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4953:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4964:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4949:3:46"},"nodeType":"YulFunctionCall","src":"4949:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4973:7:46"}],"functionName":{"name":"abi_decode_t_uint32","nodeType":"YulIdentifier","src":"4929:19:46"},"nodeType":"YulFunctionCall","src":"4929:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"4919:6:46"}]}]},{"nodeType":"YulBlock","src":"5001:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5016:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5030:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"5020:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5046:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5081:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"5092:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5077:3:46"},"nodeType":"YulFunctionCall","src":"5077:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"5101:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"5056:20:46"},"nodeType":"YulFunctionCall","src":"5056:53:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"5046:6:46"}]}]},{"nodeType":"YulBlock","src":"5129:118:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5144:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5158:2:46","type":"","value":"64"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"5148:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5174:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5209:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"5220:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5205:3:46"},"nodeType":"YulFunctionCall","src":"5205:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"5229:7:46"}],"functionName":{"name":"abi_decode_t_uint256","nodeType":"YulIdentifier","src":"5184:20:46"},"nodeType":"YulFunctionCall","src":"5184:53:46"},"variableNames":[{"name":"value2","nodeType":"YulIdentifier","src":"5174:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint32t_uint256t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"4690:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"4701:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"4713:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"4721:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"4729:6:46","type":""}],"src":"4637:617:46"},{"body":{"nodeType":"YulBlock","src":"5325:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5342:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5365:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"5347:17:46"},"nodeType":"YulFunctionCall","src":"5347:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5335:6:46"},"nodeType":"YulFunctionCall","src":"5335:37:46"},"nodeType":"YulExpressionStatement","src":"5335:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5313:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5320:3:46","type":""}],"src":"5260:118:46"},{"body":{"nodeType":"YulBlock","src":"5443:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5460:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5480:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"5465:14:46"},"nodeType":"YulFunctionCall","src":"5465:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5453:6:46"},"nodeType":"YulFunctionCall","src":"5453:34:46"},"nodeType":"YulExpressionStatement","src":"5453:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5431:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5438:3:46","type":""}],"src":"5384:109:46"},{"body":{"nodeType":"YulBlock","src":"5564:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5581:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5604:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"5586:17:46"},"nodeType":"YulFunctionCall","src":"5586:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5574:6:46"},"nodeType":"YulFunctionCall","src":"5574:37:46"},"nodeType":"YulExpressionStatement","src":"5574:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5552:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5559:3:46","type":""}],"src":"5499:118:46"},{"body":{"nodeType":"YulBlock","src":"5713:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5723:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5769:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"5737:31:46"},"nodeType":"YulFunctionCall","src":"5737:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"5727:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5784:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5849:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5854:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5791:57:46"},"nodeType":"YulFunctionCall","src":"5791:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5784:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5896:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"5903:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5892:3:46"},"nodeType":"YulFunctionCall","src":"5892:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5910:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5915:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"5870:21:46"},"nodeType":"YulFunctionCall","src":"5870:52:46"},"nodeType":"YulExpressionStatement","src":"5870:52:46"},{"nodeType":"YulAssignment","src":"5931:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5942:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"5969:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"5947:21:46"},"nodeType":"YulFunctionCall","src":"5947:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5938:3:46"},"nodeType":"YulFunctionCall","src":"5938:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"5931:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5694:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5701:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"5709:3:46","type":""}],"src":"5623:360:46"},{"body":{"nodeType":"YulBlock","src":"6071:83:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6088:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6141:5:46"}],"functionName":{"name":"convert_t_contract$_Clonable_$7948_to_t_address","nodeType":"YulIdentifier","src":"6093:47:46"},"nodeType":"YulFunctionCall","src":"6093:54:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6081:6:46"},"nodeType":"YulFunctionCall","src":"6081:67:46"},"nodeType":"YulExpressionStatement","src":"6081:67:46"}]},"name":"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"6059:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"6066:3:46","type":""}],"src":"5989:165:46"},{"body":{"nodeType":"YulBlock","src":"6259:100:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6276:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6346:5:46"}],"functionName":{"name":"convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable","nodeType":"YulIdentifier","src":"6281:64:46"},"nodeType":"YulFunctionCall","src":"6281:71:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6269:6:46"},"nodeType":"YulFunctionCall","src":"6269:84:46"},"nodeType":"YulExpressionStatement","src":"6269:84:46"}]},"name":"abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"6247:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"6254:3:46","type":""}],"src":"6160:199:46"},{"body":{"nodeType":"YulBlock","src":"6462:98:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6479:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6547:5:46"}],"functionName":{"name":"convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address","nodeType":"YulIdentifier","src":"6484:62:46"},"nodeType":"YulFunctionCall","src":"6484:69:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6472:6:46"},"nodeType":"YulFunctionCall","src":"6472:82:46"},"nodeType":"YulExpressionStatement","src":"6472:82:46"}]},"name":"abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"6450:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"6457:3:46","type":""}],"src":"6365:195:46"},{"body":{"nodeType":"YulBlock","src":"6712:220:46","statements":[{"nodeType":"YulAssignment","src":"6722:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6788:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6793:2:46","type":"","value":"37"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"6729:58:46"},"nodeType":"YulFunctionCall","src":"6729:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6722:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6894:3:46"}],"functionName":{"name":"store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c","nodeType":"YulIdentifier","src":"6805:88:46"},"nodeType":"YulFunctionCall","src":"6805:93:46"},"nodeType":"YulExpressionStatement","src":"6805:93:46"},{"nodeType":"YulAssignment","src":"6907:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6918:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"6923:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6914:3:46"},"nodeType":"YulFunctionCall","src":"6914:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"6907:3:46"}]}]},"name":"abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"6700:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"6708:3:46","type":""}],"src":"6566:366:46"},{"body":{"nodeType":"YulBlock","src":"7084:220:46","statements":[{"nodeType":"YulAssignment","src":"7094:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7160:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7165:2:46","type":"","value":"39"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7101:58:46"},"nodeType":"YulFunctionCall","src":"7101:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7094:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7266:3:46"}],"functionName":{"name":"store_literal_in_memory_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18","nodeType":"YulIdentifier","src":"7177:88:46"},"nodeType":"YulFunctionCall","src":"7177:93:46"},"nodeType":"YulExpressionStatement","src":"7177:93:46"},{"nodeType":"YulAssignment","src":"7279:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7290:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7295:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7286:3:46"},"nodeType":"YulFunctionCall","src":"7286:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"7279:3:46"}]}]},"name":"abi_encode_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"7072:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7080:3:46","type":""}],"src":"6938:366:46"},{"body":{"nodeType":"YulBlock","src":"7456:220:46","statements":[{"nodeType":"YulAssignment","src":"7466:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7532:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7537:2:46","type":"","value":"24"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7473:58:46"},"nodeType":"YulFunctionCall","src":"7473:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7466:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7638:3:46"}],"functionName":{"name":"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","nodeType":"YulIdentifier","src":"7549:88:46"},"nodeType":"YulFunctionCall","src":"7549:93:46"},"nodeType":"YulExpressionStatement","src":"7549:93:46"},{"nodeType":"YulAssignment","src":"7651:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7662:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7667:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7658:3:46"},"nodeType":"YulFunctionCall","src":"7658:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"7651:3:46"}]}]},"name":"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"7444:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7452:3:46","type":""}],"src":"7310:366:46"},{"body":{"nodeType":"YulBlock","src":"7828:220:46","statements":[{"nodeType":"YulAssignment","src":"7838:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7904:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7909:2:46","type":"","value":"36"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7845:58:46"},"nodeType":"YulFunctionCall","src":"7845:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7838:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8010:3:46"}],"functionName":{"name":"store_literal_in_memory_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1","nodeType":"YulIdentifier","src":"7921:88:46"},"nodeType":"YulFunctionCall","src":"7921:93:46"},"nodeType":"YulExpressionStatement","src":"7921:93:46"},{"nodeType":"YulAssignment","src":"8023:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8034:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8039:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8030:3:46"},"nodeType":"YulFunctionCall","src":"8030:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8023:3:46"}]}]},"name":"abi_encode_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"7816:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7824:3:46","type":""}],"src":"7682:366:46"},{"body":{"nodeType":"YulBlock","src":"8200:220:46","statements":[{"nodeType":"YulAssignment","src":"8210:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8276:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8281:2:46","type":"","value":"36"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8217:58:46"},"nodeType":"YulFunctionCall","src":"8217:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8210:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8382:3:46"}],"functionName":{"name":"store_literal_in_memory_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892","nodeType":"YulIdentifier","src":"8293:88:46"},"nodeType":"YulFunctionCall","src":"8293:93:46"},"nodeType":"YulExpressionStatement","src":"8293:93:46"},{"nodeType":"YulAssignment","src":"8395:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8406:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8411:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8402:3:46"},"nodeType":"YulFunctionCall","src":"8402:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8395:3:46"}]}]},"name":"abi_encode_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8188:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"8196:3:46","type":""}],"src":"8054:366:46"},{"body":{"nodeType":"YulBlock","src":"8572:220:46","statements":[{"nodeType":"YulAssignment","src":"8582:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8648:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8653:2:46","type":"","value":"23"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8589:58:46"},"nodeType":"YulFunctionCall","src":"8589:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8582:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8754:3:46"}],"functionName":{"name":"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","nodeType":"YulIdentifier","src":"8665:88:46"},"nodeType":"YulFunctionCall","src":"8665:93:46"},"nodeType":"YulExpressionStatement","src":"8665:93:46"},{"nodeType":"YulAssignment","src":"8767:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8778:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8783:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8774:3:46"},"nodeType":"YulFunctionCall","src":"8774:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8767:3:46"}]}]},"name":"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8560:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"8568:3:46","type":""}],"src":"8426:366:46"},{"body":{"nodeType":"YulBlock","src":"8863:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8880:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"8903:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"8885:17:46"},"nodeType":"YulFunctionCall","src":"8885:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8873:6:46"},"nodeType":"YulFunctionCall","src":"8873:37:46"},"nodeType":"YulExpressionStatement","src":"8873:37:46"}]},"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"8851:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"8858:3:46","type":""}],"src":"8798:118:46"},{"body":{"nodeType":"YulBlock","src":"8985:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9002:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9024:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"9007:16:46"},"nodeType":"YulFunctionCall","src":"9007:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8995:6:46"},"nodeType":"YulFunctionCall","src":"8995:36:46"},"nodeType":"YulExpressionStatement","src":"8995:36:46"}]},"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"8973:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"8980:3:46","type":""}],"src":"8922:115:46"},{"body":{"nodeType":"YulBlock","src":"9141:124:46","statements":[{"nodeType":"YulAssignment","src":"9151:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9163:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9174:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9159:3:46"},"nodeType":"YulFunctionCall","src":"9159:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9151:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"9231:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9244:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9255:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9240:3:46"},"nodeType":"YulFunctionCall","src":"9240:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"9187:43:46"},"nodeType":"YulFunctionCall","src":"9187:71:46"},"nodeType":"YulExpressionStatement","src":"9187:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9113:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"9125:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"9136:4:46","type":""}],"src":"9043:222:46"},{"body":{"nodeType":"YulBlock","src":"9397:206:46","statements":[{"nodeType":"YulAssignment","src":"9407:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9419:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9430:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9415:3:46"},"nodeType":"YulFunctionCall","src":"9415:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9407:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"9487:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9500:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9511:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9496:3:46"},"nodeType":"YulFunctionCall","src":"9496:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"9443:43:46"},"nodeType":"YulFunctionCall","src":"9443:71:46"},"nodeType":"YulExpressionStatement","src":"9443:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"9568:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9581:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9592:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9577:3:46"},"nodeType":"YulFunctionCall","src":"9577:18:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"9524:43:46"},"nodeType":"YulFunctionCall","src":"9524:72:46"},"nodeType":"YulExpressionStatement","src":"9524:72:46"}]},"name":"abi_encode_tuple_t_address_t_bytes32__to_t_address_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9361:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"9373:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"9381:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"9392:4:46","type":""}],"src":"9271:332:46"},{"body":{"nodeType":"YulBlock","src":"9791:371:46","statements":[{"nodeType":"YulAssignment","src":"9801:27:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9813:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9824:3:46","type":"","value":"128"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9809:3:46"},"nodeType":"YulFunctionCall","src":"9809:19:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"9801:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"9882:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9895:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9906:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9891:3:46"},"nodeType":"YulFunctionCall","src":"9891:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"9838:43:46"},"nodeType":"YulFunctionCall","src":"9838:71:46"},"nodeType":"YulExpressionStatement","src":"9838:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"9963:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"9976:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"9987:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9972:3:46"},"nodeType":"YulFunctionCall","src":"9972:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"9919:43:46"},"nodeType":"YulFunctionCall","src":"9919:72:46"},"nodeType":"YulExpressionStatement","src":"9919:72:46"},{"expression":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"10045:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10058:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10069:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10054:3:46"},"nodeType":"YulFunctionCall","src":"10054:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"10001:43:46"},"nodeType":"YulFunctionCall","src":"10001:72:46"},"nodeType":"YulExpressionStatement","src":"10001:72:46"},{"expression":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"10127:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10140:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10151:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10136:3:46"},"nodeType":"YulFunctionCall","src":"10136:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"10083:43:46"},"nodeType":"YulFunctionCall","src":"10083:72:46"},"nodeType":"YulExpressionStatement","src":"10083:72:46"}]},"name":"abi_encode_tuple_t_address_t_uint256_t_uint256_t_uint256__to_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"9739:9:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"9751:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"9759:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"9767:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"9775:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"9786:4:46","type":""}],"src":"9609:553:46"},{"body":{"nodeType":"YulBlock","src":"10260:118:46","statements":[{"nodeType":"YulAssignment","src":"10270:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10282:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10293:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10278:3:46"},"nodeType":"YulFunctionCall","src":"10278:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10270:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"10344:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10357:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10368:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10353:3:46"},"nodeType":"YulFunctionCall","src":"10353:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulIdentifier","src":"10306:37:46"},"nodeType":"YulFunctionCall","src":"10306:65:46"},"nodeType":"YulExpressionStatement","src":"10306:65:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10232:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"10244:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"10255:4:46","type":""}],"src":"10168:210:46"},{"body":{"nodeType":"YulBlock","src":"10482:124:46","statements":[{"nodeType":"YulAssignment","src":"10492:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10504:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10515:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10500:3:46"},"nodeType":"YulFunctionCall","src":"10500:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10492:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"10572:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10585:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10596:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10581:3:46"},"nodeType":"YulFunctionCall","src":"10581:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"10528:43:46"},"nodeType":"YulFunctionCall","src":"10528:71:46"},"nodeType":"YulExpressionStatement","src":"10528:71:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10454:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"10466:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"10477:4:46","type":""}],"src":"10384:222:46"},{"body":{"nodeType":"YulBlock","src":"10738:206:46","statements":[{"nodeType":"YulAssignment","src":"10748:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10760:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10771:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10756:3:46"},"nodeType":"YulFunctionCall","src":"10756:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"10748:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"10828:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10841:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10852:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10837:3:46"},"nodeType":"YulFunctionCall","src":"10837:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"10784:43:46"},"nodeType":"YulFunctionCall","src":"10784:71:46"},"nodeType":"YulExpressionStatement","src":"10784:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"10909:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"10922:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"10933:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10918:3:46"},"nodeType":"YulFunctionCall","src":"10918:18:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"10865:43:46"},"nodeType":"YulFunctionCall","src":"10865:72:46"},"nodeType":"YulExpressionStatement","src":"10865:72:46"}]},"name":"abi_encode_tuple_t_bytes32_t_uint256__to_t_bytes32_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"10702:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"10714:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"10722:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"10733:4:46","type":""}],"src":"10612:332:46"},{"body":{"nodeType":"YulBlock","src":"11066:193:46","statements":[{"nodeType":"YulAssignment","src":"11076:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11088:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11099:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11084:3:46"},"nodeType":"YulFunctionCall","src":"11084:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11076:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11123:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11134:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11119:3:46"},"nodeType":"YulFunctionCall","src":"11119:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"11142:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"11148:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"11138:3:46"},"nodeType":"YulFunctionCall","src":"11138:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11112:6:46"},"nodeType":"YulFunctionCall","src":"11112:47:46"},"nodeType":"YulExpressionStatement","src":"11112:47:46"},{"nodeType":"YulAssignment","src":"11168:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"11238:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"11247:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"11176:61:46"},"nodeType":"YulFunctionCall","src":"11176:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11168:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11038:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"11050:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"11061:4:46","type":""}],"src":"10950:309:46"},{"body":{"nodeType":"YulBlock","src":"11380:141:46","statements":[{"nodeType":"YulAssignment","src":"11390:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11402:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11413:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11398:3:46"},"nodeType":"YulFunctionCall","src":"11398:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11390:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"11487:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11500:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11511:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11496:3:46"},"nodeType":"YulFunctionCall","src":"11496:17:46"}],"functionName":{"name":"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack","nodeType":"YulIdentifier","src":"11426:60:46"},"nodeType":"YulFunctionCall","src":"11426:88:46"},"nodeType":"YulExpressionStatement","src":"11426:88:46"}]},"name":"abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11352:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"11364:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"11375:4:46","type":""}],"src":"11265:256:46"},{"body":{"nodeType":"YulBlock","src":"11659:158:46","statements":[{"nodeType":"YulAssignment","src":"11669:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11681:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11692:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11677:3:46"},"nodeType":"YulFunctionCall","src":"11677:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11669:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"11783:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11796:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11807:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11792:3:46"},"nodeType":"YulFunctionCall","src":"11792:17:46"}],"functionName":{"name":"abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack","nodeType":"YulIdentifier","src":"11705:77:46"},"nodeType":"YulFunctionCall","src":"11705:105:46"},"nodeType":"YulExpressionStatement","src":"11705:105:46"}]},"name":"abi_encode_tuple_t_contract$_WitnetRequestBoard_$481__to_t_address_payable__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11631:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"11643:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"11654:4:46","type":""}],"src":"11527:290:46"},{"body":{"nodeType":"YulBlock","src":"11953:156:46","statements":[{"nodeType":"YulAssignment","src":"11963:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"11975:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"11986:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11971:3:46"},"nodeType":"YulFunctionCall","src":"11971:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"11963:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"12075:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12088:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"12099:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12084:3:46"},"nodeType":"YulFunctionCall","src":"12084:17:46"}],"functionName":{"name":"abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack","nodeType":"YulIdentifier","src":"11999:75:46"},"nodeType":"YulFunctionCall","src":"11999:103:46"},"nodeType":"YulExpressionStatement","src":"11999:103:46"}]},"name":"abi_encode_tuple_t_contract$_WitnetRequestRandomness_$9072__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"11925:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"11937:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"11948:4:46","type":""}],"src":"11823:286:46"},{"body":{"nodeType":"YulBlock","src":"12286:248:46","statements":[{"nodeType":"YulAssignment","src":"12296:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12308:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"12319:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12304:3:46"},"nodeType":"YulFunctionCall","src":"12304:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"12296:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12343:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"12354:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12339:3:46"},"nodeType":"YulFunctionCall","src":"12339:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"12362:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"12368:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"12358:3:46"},"nodeType":"YulFunctionCall","src":"12358:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12332:6:46"},"nodeType":"YulFunctionCall","src":"12332:47:46"},"nodeType":"YulExpressionStatement","src":"12332:47:46"},{"nodeType":"YulAssignment","src":"12388:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"12522:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"12396:124:46"},"nodeType":"YulFunctionCall","src":"12396:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"12388:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"12266:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"12281:4:46","type":""}],"src":"12115:419:46"},{"body":{"nodeType":"YulBlock","src":"12711:248:46","statements":[{"nodeType":"YulAssignment","src":"12721:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12733:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"12744:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12729:3:46"},"nodeType":"YulFunctionCall","src":"12729:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"12721:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"12768:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"12779:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12764:3:46"},"nodeType":"YulFunctionCall","src":"12764:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"12787:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"12793:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"12783:3:46"},"nodeType":"YulFunctionCall","src":"12783:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12757:6:46"},"nodeType":"YulFunctionCall","src":"12757:47:46"},"nodeType":"YulExpressionStatement","src":"12757:47:46"},{"nodeType":"YulAssignment","src":"12813:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"12947:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"12821:124:46"},"nodeType":"YulFunctionCall","src":"12821:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"12813:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"12691:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"12706:4:46","type":""}],"src":"12540:419:46"},{"body":{"nodeType":"YulBlock","src":"13136:248:46","statements":[{"nodeType":"YulAssignment","src":"13146:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13158:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"13169:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13154:3:46"},"nodeType":"YulFunctionCall","src":"13154:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"13146:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13193:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"13204:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13189:3:46"},"nodeType":"YulFunctionCall","src":"13189:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"13212:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"13218:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"13208:3:46"},"nodeType":"YulFunctionCall","src":"13208:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13182:6:46"},"nodeType":"YulFunctionCall","src":"13182:47:46"},"nodeType":"YulExpressionStatement","src":"13182:47:46"},{"nodeType":"YulAssignment","src":"13238:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"13372:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"13246:124:46"},"nodeType":"YulFunctionCall","src":"13246:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"13238:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"13116:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"13131:4:46","type":""}],"src":"12965:419:46"},{"body":{"nodeType":"YulBlock","src":"13561:248:46","statements":[{"nodeType":"YulAssignment","src":"13571:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13583:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"13594:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13579:3:46"},"nodeType":"YulFunctionCall","src":"13579:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"13571:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13618:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"13629:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13614:3:46"},"nodeType":"YulFunctionCall","src":"13614:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"13637:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"13643:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"13633:3:46"},"nodeType":"YulFunctionCall","src":"13633:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"13607:6:46"},"nodeType":"YulFunctionCall","src":"13607:47:46"},"nodeType":"YulExpressionStatement","src":"13607:47:46"},{"nodeType":"YulAssignment","src":"13663:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"13797:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"13671:124:46"},"nodeType":"YulFunctionCall","src":"13671:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"13663:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"13541:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"13556:4:46","type":""}],"src":"13390:419:46"},{"body":{"nodeType":"YulBlock","src":"13986:248:46","statements":[{"nodeType":"YulAssignment","src":"13996:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14008:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14019:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14004:3:46"},"nodeType":"YulFunctionCall","src":"14004:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"13996:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14043:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14054:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14039:3:46"},"nodeType":"YulFunctionCall","src":"14039:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"14062:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"14068:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"14058:3:46"},"nodeType":"YulFunctionCall","src":"14058:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14032:6:46"},"nodeType":"YulFunctionCall","src":"14032:47:46"},"nodeType":"YulExpressionStatement","src":"14032:47:46"},{"nodeType":"YulAssignment","src":"14088:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"14222:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14096:124:46"},"nodeType":"YulFunctionCall","src":"14096:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14088:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"13966:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"13981:4:46","type":""}],"src":"13815:419:46"},{"body":{"nodeType":"YulBlock","src":"14411:248:46","statements":[{"nodeType":"YulAssignment","src":"14421:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14433:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14444:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14429:3:46"},"nodeType":"YulFunctionCall","src":"14429:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14421:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14468:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14479:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14464:3:46"},"nodeType":"YulFunctionCall","src":"14464:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"14487:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"14493:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"14483:3:46"},"nodeType":"YulFunctionCall","src":"14483:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14457:6:46"},"nodeType":"YulFunctionCall","src":"14457:47:46"},"nodeType":"YulExpressionStatement","src":"14457:47:46"},{"nodeType":"YulAssignment","src":"14513:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"14647:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14521:124:46"},"nodeType":"YulFunctionCall","src":"14521:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14513:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14391:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"14406:4:46","type":""}],"src":"14240:419:46"},{"body":{"nodeType":"YulBlock","src":"14763:124:46","statements":[{"nodeType":"YulAssignment","src":"14773:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14785:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14796:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14781:3:46"},"nodeType":"YulFunctionCall","src":"14781:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14773:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"14853:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14866:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14877:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14862:3:46"},"nodeType":"YulFunctionCall","src":"14862:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"14809:43:46"},"nodeType":"YulFunctionCall","src":"14809:71:46"},"nodeType":"YulExpressionStatement","src":"14809:71:46"}]},"name":"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14735:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"14747:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"14758:4:46","type":""}],"src":"14665:222:46"},{"body":{"nodeType":"YulBlock","src":"15019:206:46","statements":[{"nodeType":"YulAssignment","src":"15029:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15041:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15052:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15037:3:46"},"nodeType":"YulFunctionCall","src":"15037:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15029:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"15109:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15122:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15133:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15118:3:46"},"nodeType":"YulFunctionCall","src":"15118:17:46"}],"functionName":{"name":"abi_encode_t_uint256_to_t_uint256_fromStack","nodeType":"YulIdentifier","src":"15065:43:46"},"nodeType":"YulFunctionCall","src":"15065:71:46"},"nodeType":"YulExpressionStatement","src":"15065:71:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"15190:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15203:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15214:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15199:3:46"},"nodeType":"YulFunctionCall","src":"15199:18:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"15146:43:46"},"nodeType":"YulFunctionCall","src":"15146:72:46"},"nodeType":"YulExpressionStatement","src":"15146:72:46"}]},"name":"abi_encode_tuple_t_uint256_t_bytes32__to_t_uint256_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14983:9:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"14995:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"15003:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"15014:4:46","type":""}],"src":"14893:332:46"},{"body":{"nodeType":"YulBlock","src":"15327:122:46","statements":[{"nodeType":"YulAssignment","src":"15337:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15349:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15360:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15345:3:46"},"nodeType":"YulFunctionCall","src":"15345:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15337:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"15415:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15428:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15439:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15424:3:46"},"nodeType":"YulFunctionCall","src":"15424:17:46"}],"functionName":{"name":"abi_encode_t_uint32_to_t_uint32_fromStack","nodeType":"YulIdentifier","src":"15373:41:46"},"nodeType":"YulFunctionCall","src":"15373:69:46"},"nodeType":"YulExpressionStatement","src":"15373:69:46"}]},"name":"abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"15299:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"15311:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"15322:4:46","type":""}],"src":"15231:218:46"},{"body":{"nodeType":"YulBlock","src":"15496:88:46","statements":[{"nodeType":"YulAssignment","src":"15506:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"15516:18:46"},"nodeType":"YulFunctionCall","src":"15516:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15506:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15565:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"15573:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"15545:19:46"},"nodeType":"YulFunctionCall","src":"15545:33:46"},"nodeType":"YulExpressionStatement","src":"15545:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"15480:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"15489:6:46","type":""}],"src":"15455:129:46"},{"body":{"nodeType":"YulBlock","src":"15630:35:46","statements":[{"nodeType":"YulAssignment","src":"15640:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"15656:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"15650:5:46"},"nodeType":"YulFunctionCall","src":"15650:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"15640:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"15623:6:46","type":""}],"src":"15590:75:46"},{"body":{"nodeType":"YulBlock","src":"15737:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"15842:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"15844:16:46"},"nodeType":"YulFunctionCall","src":"15844:18:46"},"nodeType":"YulExpressionStatement","src":"15844:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"15814:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"15822:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"15811:2:46"},"nodeType":"YulFunctionCall","src":"15811:30:46"},"nodeType":"YulIf","src":"15808:56:46"},{"nodeType":"YulAssignment","src":"15874:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"15904:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"15882:21:46"},"nodeType":"YulFunctionCall","src":"15882:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"15874:4:46"}]},{"nodeType":"YulAssignment","src":"15948:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"15960:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"15966:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15956:3:46"},"nodeType":"YulFunctionCall","src":"15956:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"15948:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"15721:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"15732:4:46","type":""}],"src":"15671:307:46"},{"body":{"nodeType":"YulBlock","src":"16042:40:46","statements":[{"nodeType":"YulAssignment","src":"16053:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"16069:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"16063:5:46"},"nodeType":"YulFunctionCall","src":"16063:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"16053:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"16025:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"16035:6:46","type":""}],"src":"15984:98:46"},{"body":{"nodeType":"YulBlock","src":"16183:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16200:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"16205:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16193:6:46"},"nodeType":"YulFunctionCall","src":"16193:19:46"},"nodeType":"YulExpressionStatement","src":"16193:19:46"},{"nodeType":"YulAssignment","src":"16221:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16240:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16245:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16236:3:46"},"nodeType":"YulFunctionCall","src":"16236:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"16221:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"16155:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"16160:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"16171:11:46","type":""}],"src":"16088:168:46"},{"body":{"nodeType":"YulBlock","src":"16358:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16375:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"16380:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16368:6:46"},"nodeType":"YulFunctionCall","src":"16368:19:46"},"nodeType":"YulExpressionStatement","src":"16368:19:46"},{"nodeType":"YulAssignment","src":"16396:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"16415:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"16420:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16411:3:46"},"nodeType":"YulFunctionCall","src":"16411:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"16396:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"16330:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"16335:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"16346:11:46","type":""}],"src":"16262:169:46"},{"body":{"nodeType":"YulBlock","src":"16481:261:46","statements":[{"nodeType":"YulAssignment","src":"16491:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"16514:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"16496:17:46"},"nodeType":"YulFunctionCall","src":"16496:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"16491:1:46"}]},{"nodeType":"YulAssignment","src":"16525:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"16548:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"16530:17:46"},"nodeType":"YulFunctionCall","src":"16530:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"16525:1:46"}]},{"body":{"nodeType":"YulBlock","src":"16688:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"16690:16:46"},"nodeType":"YulFunctionCall","src":"16690:18:46"},"nodeType":"YulExpressionStatement","src":"16690:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"16609:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"16616:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"16684:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16612:3:46"},"nodeType":"YulFunctionCall","src":"16612:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"16606:2:46"},"nodeType":"YulFunctionCall","src":"16606:81:46"},"nodeType":"YulIf","src":"16603:107:46"},{"nodeType":"YulAssignment","src":"16720:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"16731:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"16734:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16727:3:46"},"nodeType":"YulFunctionCall","src":"16727:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"16720:3:46"}]}]},"name":"checked_add_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"16468:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"16471:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"16477:3:46","type":""}],"src":"16437:305:46"},{"body":{"nodeType":"YulBlock","src":"16821:775:46","statements":[{"nodeType":"YulAssignment","src":"16831:15:46","value":{"name":"_power","nodeType":"YulIdentifier","src":"16840:6:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"16831:5:46"}]},{"nodeType":"YulAssignment","src":"16855:14:46","value":{"name":"_base","nodeType":"YulIdentifier","src":"16864:5:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"16855:4:46"}]},{"body":{"nodeType":"YulBlock","src":"16913:677:46","statements":[{"body":{"nodeType":"YulBlock","src":"17001:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"17003:16:46"},"nodeType":"YulFunctionCall","src":"17003:18:46"},"nodeType":"YulExpressionStatement","src":"17003:18:46"}]},"condition":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"16979:4:46"},{"arguments":[{"name":"max","nodeType":"YulIdentifier","src":"16989:3:46"},{"name":"base","nodeType":"YulIdentifier","src":"16994:4:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"16985:3:46"},"nodeType":"YulFunctionCall","src":"16985:14:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"16976:2:46"},"nodeType":"YulFunctionCall","src":"16976:24:46"},"nodeType":"YulIf","src":"16973:50:46"},{"body":{"nodeType":"YulBlock","src":"17068:419:46","statements":[{"nodeType":"YulAssignment","src":"17448:25:46","value":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"17461:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"17468:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"17457:3:46"},"nodeType":"YulFunctionCall","src":"17457:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"17448:5:46"}]}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"17043:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"17053:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"17039:3:46"},"nodeType":"YulFunctionCall","src":"17039:16:46"},"nodeType":"YulIf","src":"17036:451:46"},{"nodeType":"YulAssignment","src":"17500:23:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"17512:4:46"},{"name":"base","nodeType":"YulIdentifier","src":"17518:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"17508:3:46"},"nodeType":"YulFunctionCall","src":"17508:15:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"17500:4:46"}]},{"nodeType":"YulAssignment","src":"17536:44:46","value":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"17571:8:46"}],"functionName":{"name":"shift_right_1_unsigned","nodeType":"YulIdentifier","src":"17548:22:46"},"nodeType":"YulFunctionCall","src":"17548:32:46"},"variableNames":[{"name":"exponent","nodeType":"YulIdentifier","src":"17536:8:46"}]}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"16889:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"16899:1:46","type":"","value":"1"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"16886:2:46"},"nodeType":"YulFunctionCall","src":"16886:15:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"16902:2:46","statements":[]},"pre":{"nodeType":"YulBlock","src":"16882:3:46","statements":[]},"src":"16878:712:46"}]},"name":"checked_exp_helper","nodeType":"YulFunctionDefinition","parameters":[{"name":"_power","nodeType":"YulTypedName","src":"16776:6:46","type":""},{"name":"_base","nodeType":"YulTypedName","src":"16784:5:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"16791:8:46","type":""},{"name":"max","nodeType":"YulTypedName","src":"16801:3:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"16809:5:46","type":""},{"name":"base","nodeType":"YulTypedName","src":"16816:4:46","type":""}],"src":"16748:848:46"},{"body":{"nodeType":"YulBlock","src":"17666:217:46","statements":[{"nodeType":"YulAssignment","src":"17676:31:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"17702:4:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"17684:17:46"},"nodeType":"YulFunctionCall","src":"17684:23:46"},"variableNames":[{"name":"base","nodeType":"YulIdentifier","src":"17676:4:46"}]},{"nodeType":"YulAssignment","src":"17716:37:46","value":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"17744:8:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"17728:15:46"},"nodeType":"YulFunctionCall","src":"17728:25:46"},"variableNames":[{"name":"exponent","nodeType":"YulIdentifier","src":"17716:8:46"}]},{"nodeType":"YulAssignment","src":"17763:113:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"17793:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"17799:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"17809:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"checked_exp_unsigned","nodeType":"YulIdentifier","src":"17772:20:46"},"nodeType":"YulFunctionCall","src":"17772:104:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"17763:5:46"}]}]},"name":"checked_exp_t_uint256_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"base","nodeType":"YulTypedName","src":"17641:4:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"17647:8:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"17660:5:46","type":""}],"src":"17602:281:46"},{"body":{"nodeType":"YulBlock","src":"17949:1013:46","statements":[{"body":{"nodeType":"YulBlock","src":"18144:20:46","statements":[{"nodeType":"YulAssignment","src":"18146:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18155:1:46","type":"","value":"1"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18146:5:46"}]},{"nodeType":"YulLeave","src":"18157:5:46"}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"18134:8:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"18127:6:46"},"nodeType":"YulFunctionCall","src":"18127:16:46"},"nodeType":"YulIf","src":"18124:40:46"},{"body":{"nodeType":"YulBlock","src":"18189:20:46","statements":[{"nodeType":"YulAssignment","src":"18191:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18200:1:46","type":"","value":"0"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18191:5:46"}]},{"nodeType":"YulLeave","src":"18202:5:46"}]},"condition":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"18183:4:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"18176:6:46"},"nodeType":"YulFunctionCall","src":"18176:12:46"},"nodeType":"YulIf","src":"18173:36:46"},{"cases":[{"body":{"nodeType":"YulBlock","src":"18319:20:46","statements":[{"nodeType":"YulAssignment","src":"18321:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18330:1:46","type":"","value":"1"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18321:5:46"}]},{"nodeType":"YulLeave","src":"18332:5:46"}]},"nodeType":"YulCase","src":"18312:27:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18317:1:46","type":"","value":"1"}},{"body":{"nodeType":"YulBlock","src":"18363:176:46","statements":[{"body":{"nodeType":"YulBlock","src":"18398:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"18400:16:46"},"nodeType":"YulFunctionCall","src":"18400:18:46"},"nodeType":"YulExpressionStatement","src":"18400:18:46"}]},"condition":{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"18383:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"18393:3:46","type":"","value":"255"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"18380:2:46"},"nodeType":"YulFunctionCall","src":"18380:17:46"},"nodeType":"YulIf","src":"18377:43:46"},{"nodeType":"YulAssignment","src":"18433:25:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"18446:1:46","type":"","value":"2"},{"name":"exponent","nodeType":"YulIdentifier","src":"18449:8:46"}],"functionName":{"name":"exp","nodeType":"YulIdentifier","src":"18442:3:46"},"nodeType":"YulFunctionCall","src":"18442:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18433:5:46"}]},{"body":{"nodeType":"YulBlock","src":"18489:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"18491:16:46"},"nodeType":"YulFunctionCall","src":"18491:18:46"},"nodeType":"YulExpressionStatement","src":"18491:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"18477:5:46"},{"name":"max","nodeType":"YulIdentifier","src":"18484:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"18474:2:46"},"nodeType":"YulFunctionCall","src":"18474:14:46"},"nodeType":"YulIf","src":"18471:40:46"},{"nodeType":"YulLeave","src":"18524:5:46"}]},"nodeType":"YulCase","src":"18348:191:46","value":{"kind":"number","nodeType":"YulLiteral","src":"18353:1:46","type":"","value":"2"}}],"expression":{"name":"base","nodeType":"YulIdentifier","src":"18269:4:46"},"nodeType":"YulSwitch","src":"18262:277:46"},{"body":{"nodeType":"YulBlock","src":"18671:123:46","statements":[{"nodeType":"YulAssignment","src":"18685:28:46","value":{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"18698:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"18704:8:46"}],"functionName":{"name":"exp","nodeType":"YulIdentifier","src":"18694:3:46"},"nodeType":"YulFunctionCall","src":"18694:19:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18685:5:46"}]},{"body":{"nodeType":"YulBlock","src":"18744:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"18746:16:46"},"nodeType":"YulFunctionCall","src":"18746:18:46"},"nodeType":"YulExpressionStatement","src":"18746:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"18732:5:46"},{"name":"max","nodeType":"YulIdentifier","src":"18739:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"18729:2:46"},"nodeType":"YulFunctionCall","src":"18729:14:46"},"nodeType":"YulIf","src":"18726:40:46"},{"nodeType":"YulLeave","src":"18779:5:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"18574:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"18580:2:46","type":"","value":"11"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"18571:2:46"},"nodeType":"YulFunctionCall","src":"18571:12:46"},{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"18588:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"18598:2:46","type":"","value":"78"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"18585:2:46"},"nodeType":"YulFunctionCall","src":"18585:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"18567:3:46"},"nodeType":"YulFunctionCall","src":"18567:35:46"},{"arguments":[{"arguments":[{"name":"base","nodeType":"YulIdentifier","src":"18623:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"18629:3:46","type":"","value":"307"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"18620:2:46"},"nodeType":"YulFunctionCall","src":"18620:13:46"},{"arguments":[{"name":"exponent","nodeType":"YulIdentifier","src":"18638:8:46"},{"kind":"number","nodeType":"YulLiteral","src":"18648:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"18635:2:46"},"nodeType":"YulFunctionCall","src":"18635:16:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"18616:3:46"},"nodeType":"YulFunctionCall","src":"18616:36:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"18551:2:46"},"nodeType":"YulFunctionCall","src":"18551:111:46"},"nodeType":"YulIf","src":"18548:246:46"},{"nodeType":"YulAssignment","src":"18804:57:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"18838:1:46","type":"","value":"1"},{"name":"base","nodeType":"YulIdentifier","src":"18841:4:46"},{"name":"exponent","nodeType":"YulIdentifier","src":"18847:8:46"},{"name":"max","nodeType":"YulIdentifier","src":"18857:3:46"}],"functionName":{"name":"checked_exp_helper","nodeType":"YulIdentifier","src":"18819:18:46"},"nodeType":"YulFunctionCall","src":"18819:42:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18804:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"18811:4:46"}]},{"body":{"nodeType":"YulBlock","src":"18900:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"18902:16:46"},"nodeType":"YulFunctionCall","src":"18902:18:46"},"nodeType":"YulExpressionStatement","src":"18902:18:46"}]},"condition":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"18877:5:46"},{"arguments":[{"name":"max","nodeType":"YulIdentifier","src":"18888:3:46"},{"name":"base","nodeType":"YulIdentifier","src":"18893:4:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"18884:3:46"},"nodeType":"YulFunctionCall","src":"18884:14:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"18874:2:46"},"nodeType":"YulFunctionCall","src":"18874:25:46"},"nodeType":"YulIf","src":"18871:51:46"},{"nodeType":"YulAssignment","src":"18931:25:46","value":{"arguments":[{"name":"power","nodeType":"YulIdentifier","src":"18944:5:46"},{"name":"base","nodeType":"YulIdentifier","src":"18951:4:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"18940:3:46"},"nodeType":"YulFunctionCall","src":"18940:16:46"},"variableNames":[{"name":"power","nodeType":"YulIdentifier","src":"18931:5:46"}]}]},"name":"checked_exp_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"base","nodeType":"YulTypedName","src":"17919:4:46","type":""},{"name":"exponent","nodeType":"YulTypedName","src":"17925:8:46","type":""},{"name":"max","nodeType":"YulTypedName","src":"17935:3:46","type":""}],"returnVariables":[{"name":"power","nodeType":"YulTypedName","src":"17943:5:46","type":""}],"src":"17889:1073:46"},{"body":{"nodeType":"YulBlock","src":"19016:300:46","statements":[{"nodeType":"YulAssignment","src":"19026:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19049:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"19031:17:46"},"nodeType":"YulFunctionCall","src":"19031:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"19026:1:46"}]},{"nodeType":"YulAssignment","src":"19060:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"19083:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"19065:17:46"},"nodeType":"YulFunctionCall","src":"19065:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"19060:1:46"}]},{"body":{"nodeType":"YulBlock","src":"19258:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"19260:16:46"},"nodeType":"YulFunctionCall","src":"19260:18:46"},"nodeType":"YulExpressionStatement","src":"19260:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19170:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"19163:6:46"},"nodeType":"YulFunctionCall","src":"19163:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"19156:6:46"},"nodeType":"YulFunctionCall","src":"19156:17:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"19178:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"19185:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"},{"name":"x","nodeType":"YulIdentifier","src":"19253:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"19181:3:46"},"nodeType":"YulFunctionCall","src":"19181:74:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"19175:2:46"},"nodeType":"YulFunctionCall","src":"19175:81:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"19152:3:46"},"nodeType":"YulFunctionCall","src":"19152:105:46"},"nodeType":"YulIf","src":"19149:131:46"},{"nodeType":"YulAssignment","src":"19290:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19305:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"19308:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"19301:3:46"},"nodeType":"YulFunctionCall","src":"19301:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"19290:7:46"}]}]},"name":"checked_mul_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"18999:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"19002:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"19008:7:46","type":""}],"src":"18968:348:46"},{"body":{"nodeType":"YulBlock","src":"19367:146:46","statements":[{"nodeType":"YulAssignment","src":"19377:25:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19400:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"19382:17:46"},"nodeType":"YulFunctionCall","src":"19382:20:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"19377:1:46"}]},{"nodeType":"YulAssignment","src":"19411:25:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"19434:1:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"19416:17:46"},"nodeType":"YulFunctionCall","src":"19416:20:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"19411:1:46"}]},{"body":{"nodeType":"YulBlock","src":"19458:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"19460:16:46"},"nodeType":"YulFunctionCall","src":"19460:18:46"},"nodeType":"YulExpressionStatement","src":"19460:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19452:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"19455:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"19449:2:46"},"nodeType":"YulFunctionCall","src":"19449:8:46"},"nodeType":"YulIf","src":"19446:34:46"},{"nodeType":"YulAssignment","src":"19490:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19502:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"19505:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19498:3:46"},"nodeType":"YulFunctionCall","src":"19498:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"19490:4:46"}]}]},"name":"checked_sub_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"19353:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"19356:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"19362:4:46","type":""}],"src":"19322:191:46"},{"body":{"nodeType":"YulBlock","src":"19562:142:46","statements":[{"nodeType":"YulAssignment","src":"19572:23:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19593:1:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"19577:15:46"},"nodeType":"YulFunctionCall","src":"19577:18:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"19572:1:46"}]},{"nodeType":"YulAssignment","src":"19604:23:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"19625:1:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"19609:15:46"},"nodeType":"YulFunctionCall","src":"19609:18:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"19604:1:46"}]},{"body":{"nodeType":"YulBlock","src":"19649:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"19651:16:46"},"nodeType":"YulFunctionCall","src":"19651:18:46"},"nodeType":"YulExpressionStatement","src":"19651:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19643:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"19646:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"19640:2:46"},"nodeType":"YulFunctionCall","src":"19640:8:46"},"nodeType":"YulIf","src":"19637:34:46"},{"nodeType":"YulAssignment","src":"19681:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"19693:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"19696:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19689:3:46"},"nodeType":"YulFunctionCall","src":"19689:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"19681:4:46"}]}]},"name":"checked_sub_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"19548:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"19551:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"19557:4:46","type":""}],"src":"19519:185:46"},{"body":{"nodeType":"YulBlock","src":"19755:51:46","statements":[{"nodeType":"YulAssignment","src":"19765:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19794:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"19776:17:46"},"nodeType":"YulFunctionCall","src":"19776:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"19765:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19737:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"19747:7:46","type":""}],"src":"19710:96:46"},{"body":{"nodeType":"YulBlock","src":"19865:51:46","statements":[{"nodeType":"YulAssignment","src":"19875:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19904:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"19886:17:46"},"nodeType":"YulFunctionCall","src":"19886:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"19875:7:46"}]}]},"name":"cleanup_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19847:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"19857:7:46","type":""}],"src":"19812:104:46"},{"body":{"nodeType":"YulBlock","src":"19964:48:46","statements":[{"nodeType":"YulAssignment","src":"19974:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"19999:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"19992:6:46"},"nodeType":"YulFunctionCall","src":"19992:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"19985:6:46"},"nodeType":"YulFunctionCall","src":"19985:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"19974:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"19946:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"19956:7:46","type":""}],"src":"19922:90:46"},{"body":{"nodeType":"YulBlock","src":"20063:32:46","statements":[{"nodeType":"YulAssignment","src":"20073:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"20084:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"20073:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20045:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"20055:7:46","type":""}],"src":"20018:77:46"},{"body":{"nodeType":"YulBlock","src":"20163:51:46","statements":[{"nodeType":"YulAssignment","src":"20173:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20202:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"20184:17:46"},"nodeType":"YulFunctionCall","src":"20184:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"20173:7:46"}]}]},"name":"cleanup_t_contract$_Clonable_$7948","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20145:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"20155:7:46","type":""}],"src":"20101:113:46"},{"body":{"nodeType":"YulBlock","src":"20265:81:46","statements":[{"nodeType":"YulAssignment","src":"20275:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20290:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20297:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"20286:3:46"},"nodeType":"YulFunctionCall","src":"20286:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"20275:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20247:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"20257:7:46","type":""}],"src":"20220:126:46"},{"body":{"nodeType":"YulBlock","src":"20397:32:46","statements":[{"nodeType":"YulAssignment","src":"20407:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"20418:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"20407:7:46"}]}]},"name":"cleanup_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20379:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"20389:7:46","type":""}],"src":"20352:77:46"},{"body":{"nodeType":"YulBlock","src":"20479:49:46","statements":[{"nodeType":"YulAssignment","src":"20489:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20504:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20511:10:46","type":"","value":"0xffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"20500:3:46"},"nodeType":"YulFunctionCall","src":"20500:22:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"20489:7:46"}]}]},"name":"cleanup_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20461:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"20471:7:46","type":""}],"src":"20435:93:46"},{"body":{"nodeType":"YulBlock","src":"20577:43:46","statements":[{"nodeType":"YulAssignment","src":"20587:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20602:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"20609:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"20598:3:46"},"nodeType":"YulFunctionCall","src":"20598:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"20587:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20559:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"20569:7:46","type":""}],"src":"20534:86:46"},{"body":{"nodeType":"YulBlock","src":"20703:66:46","statements":[{"nodeType":"YulAssignment","src":"20713:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20757:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"20726:30:46"},"nodeType":"YulFunctionCall","src":"20726:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"20713:9:46"}]}]},"name":"convert_t_contract$_Clonable_$7948_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20683:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"20693:9:46","type":""}],"src":"20626:143:46"},{"body":{"nodeType":"YulBlock","src":"20869:74:46","statements":[{"nodeType":"YulAssignment","src":"20879:58:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"20931:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address_payable","nodeType":"YulIdentifier","src":"20892:38:46"},"nodeType":"YulFunctionCall","src":"20892:45:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"20879:9:46"}]}]},"name":"convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"20849:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"20859:9:46","type":""}],"src":"20775:168:46"},{"body":{"nodeType":"YulBlock","src":"21041:66:46","statements":[{"nodeType":"YulAssignment","src":"21051:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21095:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"21064:30:46"},"nodeType":"YulFunctionCall","src":"21064:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"21051:9:46"}]}]},"name":"convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21021:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"21031:9:46","type":""}],"src":"20949:158:46"},{"body":{"nodeType":"YulBlock","src":"21173:66:46","statements":[{"nodeType":"YulAssignment","src":"21183:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21227:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"21196:30:46"},"nodeType":"YulFunctionCall","src":"21196:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"21183:9:46"}]}]},"name":"convert_t_uint160_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21153:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"21163:9:46","type":""}],"src":"21113:126:46"},{"body":{"nodeType":"YulBlock","src":"21313:66:46","statements":[{"nodeType":"YulAssignment","src":"21323:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21367:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"21336:30:46"},"nodeType":"YulFunctionCall","src":"21336:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"21323:9:46"}]}]},"name":"convert_t_uint160_to_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21293:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"21303:9:46","type":""}],"src":"21245:134:46"},{"body":{"nodeType":"YulBlock","src":"21445:53:46","statements":[{"nodeType":"YulAssignment","src":"21455:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21486:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"21468:17:46"},"nodeType":"YulFunctionCall","src":"21468:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"21455:9:46"}]}]},"name":"convert_t_uint160_to_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21425:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"21435:9:46","type":""}],"src":"21385:113:46"},{"body":{"nodeType":"YulBlock","src":"21555:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"21578:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"21583:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"21588:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"21565:12:46"},"nodeType":"YulFunctionCall","src":"21565:30:46"},"nodeType":"YulExpressionStatement","src":"21565:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"21636:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"21641:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21632:3:46"},"nodeType":"YulFunctionCall","src":"21632:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"21650:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21625:6:46"},"nodeType":"YulFunctionCall","src":"21625:27:46"},"nodeType":"YulExpressionStatement","src":"21625:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"21537:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"21542:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"21547:6:46","type":""}],"src":"21504:154:46"},{"body":{"nodeType":"YulBlock","src":"21713:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"21723:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"21732:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"21727:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"21792:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"21817:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"21822:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21813:3:46"},"nodeType":"YulFunctionCall","src":"21813:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"21836:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"21841:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21832:3:46"},"nodeType":"YulFunctionCall","src":"21832:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"21826:5:46"},"nodeType":"YulFunctionCall","src":"21826:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21806:6:46"},"nodeType":"YulFunctionCall","src":"21806:39:46"},"nodeType":"YulExpressionStatement","src":"21806:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"21753:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"21756:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"21750:2:46"},"nodeType":"YulFunctionCall","src":"21750:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"21764:19:46","statements":[{"nodeType":"YulAssignment","src":"21766:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"21775:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"21778:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21771:3:46"},"nodeType":"YulFunctionCall","src":"21771:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"21766:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"21746:3:46","statements":[]},"src":"21742:113:46"},{"body":{"nodeType":"YulBlock","src":"21889:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"21939:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"21944:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21935:3:46"},"nodeType":"YulFunctionCall","src":"21935:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"21953:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21928:6:46"},"nodeType":"YulFunctionCall","src":"21928:27:46"},"nodeType":"YulExpressionStatement","src":"21928:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"21870:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"21873:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"21867:2:46"},"nodeType":"YulFunctionCall","src":"21867:13:46"},"nodeType":"YulIf","src":"21864:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"21695:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"21700:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"21705:6:46","type":""}],"src":"21664:307:46"},{"body":{"nodeType":"YulBlock","src":"22020:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"22030:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"22052:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"22082:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"22060:21:46"},"nodeType":"YulFunctionCall","src":"22060:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22048:3:46"},"nodeType":"YulFunctionCall","src":"22048:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"22034:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"22199:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"22201:16:46"},"nodeType":"YulFunctionCall","src":"22201:18:46"},"nodeType":"YulExpressionStatement","src":"22201:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"22142:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"22154:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"22139:2:46"},"nodeType":"YulFunctionCall","src":"22139:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"22178:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"22190:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"22175:2:46"},"nodeType":"YulFunctionCall","src":"22175:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"22136:2:46"},"nodeType":"YulFunctionCall","src":"22136:62:46"},"nodeType":"YulIf","src":"22133:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22237:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"22241:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22230:6:46"},"nodeType":"YulFunctionCall","src":"22230:22:46"},"nodeType":"YulExpressionStatement","src":"22230:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"22006:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"22014:4:46","type":""}],"src":"21977:281:46"},{"body":{"nodeType":"YulBlock","src":"22307:190:46","statements":[{"nodeType":"YulAssignment","src":"22317:33:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"22344:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"22326:17:46"},"nodeType":"YulFunctionCall","src":"22326:24:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"22317:5:46"}]},{"body":{"nodeType":"YulBlock","src":"22440:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"22442:16:46"},"nodeType":"YulFunctionCall","src":"22442:18:46"},"nodeType":"YulExpressionStatement","src":"22442:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"22365:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"22372:66:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"22362:2:46"},"nodeType":"YulFunctionCall","src":"22362:77:46"},"nodeType":"YulIf","src":"22359:103:46"},{"nodeType":"YulAssignment","src":"22471:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"22482:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"22489:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22478:3:46"},"nodeType":"YulFunctionCall","src":"22478:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"22471:3:46"}]}]},"name":"increment_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"22293:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"22303:3:46","type":""}],"src":"22264:233:46"},{"body":{"nodeType":"YulBlock","src":"22531:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22548:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"22551:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22541:6:46"},"nodeType":"YulFunctionCall","src":"22541:88:46"},"nodeType":"YulExpressionStatement","src":"22541:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22645:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"22648:4:46","type":"","value":"0x01"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22638:6:46"},"nodeType":"YulFunctionCall","src":"22638:15:46"},"nodeType":"YulExpressionStatement","src":"22638:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22669:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"22672:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"22662:6:46"},"nodeType":"YulFunctionCall","src":"22662:15:46"},"nodeType":"YulExpressionStatement","src":"22662:15:46"}]},"name":"panic_error_0x01","nodeType":"YulFunctionDefinition","src":"22503:180:46"},{"body":{"nodeType":"YulBlock","src":"22717:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22734:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"22737:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22727:6:46"},"nodeType":"YulFunctionCall","src":"22727:88:46"},"nodeType":"YulExpressionStatement","src":"22727:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22831:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"22834:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22824:6:46"},"nodeType":"YulFunctionCall","src":"22824:15:46"},"nodeType":"YulExpressionStatement","src":"22824:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22855:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"22858:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"22848:6:46"},"nodeType":"YulFunctionCall","src":"22848:15:46"},"nodeType":"YulExpressionStatement","src":"22848:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"22689:180:46"},{"body":{"nodeType":"YulBlock","src":"22903:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22920:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"22923:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"22913:6:46"},"nodeType":"YulFunctionCall","src":"22913:88:46"},"nodeType":"YulExpressionStatement","src":"22913:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23017:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"23020:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23010:6:46"},"nodeType":"YulFunctionCall","src":"23010:15:46"},"nodeType":"YulExpressionStatement","src":"23010:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23041:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23044:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"23034:6:46"},"nodeType":"YulFunctionCall","src":"23034:15:46"},"nodeType":"YulExpressionStatement","src":"23034:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"22875:180:46"},{"body":{"nodeType":"YulBlock","src":"23089:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23106:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23109:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23099:6:46"},"nodeType":"YulFunctionCall","src":"23099:88:46"},"nodeType":"YulExpressionStatement","src":"23099:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23203:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"23206:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23196:6:46"},"nodeType":"YulFunctionCall","src":"23196:15:46"},"nodeType":"YulExpressionStatement","src":"23196:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23227:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23230:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"23220:6:46"},"nodeType":"YulFunctionCall","src":"23220:15:46"},"nodeType":"YulExpressionStatement","src":"23220:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"23061:180:46"},{"body":{"nodeType":"YulBlock","src":"23336:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23353:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23356:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"23346:6:46"},"nodeType":"YulFunctionCall","src":"23346:12:46"},"nodeType":"YulExpressionStatement","src":"23346:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"23247:117:46"},{"body":{"nodeType":"YulBlock","src":"23459:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23476:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23479:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"23469:6:46"},"nodeType":"YulFunctionCall","src":"23469:12:46"},"nodeType":"YulExpressionStatement","src":"23469:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"23370:117:46"},{"body":{"nodeType":"YulBlock","src":"23582:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23599:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23602:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"23592:6:46"},"nodeType":"YulFunctionCall","src":"23592:12:46"},"nodeType":"YulExpressionStatement","src":"23592:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"23493:117:46"},{"body":{"nodeType":"YulBlock","src":"23705:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23722:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"23725:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"23715:6:46"},"nodeType":"YulFunctionCall","src":"23715:12:46"},"nodeType":"YulExpressionStatement","src":"23715:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"23616:117:46"},{"body":{"nodeType":"YulBlock","src":"23787:54:46","statements":[{"nodeType":"YulAssignment","src":"23797:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23815:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"23822:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23811:3:46"},"nodeType":"YulFunctionCall","src":"23811:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23831:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"23827:3:46"},"nodeType":"YulFunctionCall","src":"23827:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"23807:3:46"},"nodeType":"YulFunctionCall","src":"23807:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"23797:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23770:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"23780:6:46","type":""}],"src":"23739:102:46"},{"body":{"nodeType":"YulBlock","src":"23898:51:46","statements":[{"nodeType":"YulAssignment","src":"23908:34:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"23933:1:46","type":"","value":"1"},{"name":"value","nodeType":"YulIdentifier","src":"23936:5:46"}],"functionName":{"name":"shr","nodeType":"YulIdentifier","src":"23929:3:46"},"nodeType":"YulFunctionCall","src":"23929:13:46"},"variableNames":[{"name":"newValue","nodeType":"YulIdentifier","src":"23908:8:46"}]}]},"name":"shift_right_1_unsigned","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23879:5:46","type":""}],"returnVariables":[{"name":"newValue","nodeType":"YulTypedName","src":"23889:8:46","type":""}],"src":"23847:102:46"},{"body":{"nodeType":"YulBlock","src":"24061:118:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24083:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24091:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24079:3:46"},"nodeType":"YulFunctionCall","src":"24079:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573733a20616c726561647920696e69746961","kind":"string","nodeType":"YulLiteral","src":"24095:34:46","type":"","value":"WitnetRandomness: already initia"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24072:6:46"},"nodeType":"YulFunctionCall","src":"24072:58:46"},"nodeType":"YulExpressionStatement","src":"24072:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24151:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24159:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24147:3:46"},"nodeType":"YulFunctionCall","src":"24147:15:46"},{"hexValue":"6c697a6564","kind":"string","nodeType":"YulLiteral","src":"24164:7:46","type":"","value":"lized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24140:6:46"},"nodeType":"YulFunctionCall","src":"24140:32:46"},"nodeType":"YulExpressionStatement","src":"24140:32:46"}]},"name":"store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"24053:6:46","type":""}],"src":"23955:224:46"},{"body":{"nodeType":"YulBlock","src":"24291:120:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24313:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24321:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24309:3:46"},"nodeType":"YulFunctionCall","src":"24309:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573734d6f636b3a2070656e64696e67207261","kind":"string","nodeType":"YulLiteral","src":"24325:34:46","type":"","value":"WitnetRandomnessMock: pending ra"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24302:6:46"},"nodeType":"YulFunctionCall","src":"24302:58:46"},"nodeType":"YulExpressionStatement","src":"24302:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24381:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24389:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24377:3:46"},"nodeType":"YulFunctionCall","src":"24377:15:46"},{"hexValue":"6e646f6d697a65","kind":"string","nodeType":"YulLiteral","src":"24394:9:46","type":"","value":"ndomize"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24370:6:46"},"nodeType":"YulFunctionCall","src":"24370:34:46"},"nodeType":"YulExpressionStatement","src":"24370:34:46"}]},"name":"store_literal_in_memory_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"24283:6:46","type":""}],"src":"24185:226:46"},{"body":{"nodeType":"YulBlock","src":"24523:68:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24545:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24553:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24541:3:46"},"nodeType":"YulFunctionCall","src":"24541:14:46"},{"hexValue":"436c6f6e61626c653a2043524541544532206661696c6564","kind":"string","nodeType":"YulLiteral","src":"24557:26:46","type":"","value":"Clonable: CREATE2 failed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24534:6:46"},"nodeType":"YulFunctionCall","src":"24534:50:46"},"nodeType":"YulExpressionStatement","src":"24534:50:46"}]},"name":"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"24515:6:46","type":""}],"src":"24417:174:46"},{"body":{"nodeType":"YulBlock","src":"24703:117:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24725:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24733:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24721:3:46"},"nodeType":"YulFunctionCall","src":"24721:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573734d6f636b3a2072657761726420746f6f","kind":"string","nodeType":"YulLiteral","src":"24737:34:46","type":"","value":"WitnetRandomnessMock: reward too"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24714:6:46"},"nodeType":"YulFunctionCall","src":"24714:58:46"},"nodeType":"YulExpressionStatement","src":"24714:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24793:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24801:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24789:3:46"},"nodeType":"YulFunctionCall","src":"24789:15:46"},{"hexValue":"206c6f77","kind":"string","nodeType":"YulLiteral","src":"24806:6:46","type":"","value":" low"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24782:6:46"},"nodeType":"YulFunctionCall","src":"24782:31:46"},"nodeType":"YulExpressionStatement","src":"24782:31:46"}]},"name":"store_literal_in_memory_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"24695:6:46","type":""}],"src":"24597:223:46"},{"body":{"nodeType":"YulBlock","src":"24932:117:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24954:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24962:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24950:3:46"},"nodeType":"YulFunctionCall","src":"24950:14:46"},{"hexValue":"5769746e657452616e646f6d6e6573734d6f636b3a206e6f742072616e646f6d","kind":"string","nodeType":"YulLiteral","src":"24966:34:46","type":"","value":"WitnetRandomnessMock: not random"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24943:6:46"},"nodeType":"YulFunctionCall","src":"24943:58:46"},"nodeType":"YulExpressionStatement","src":"24943:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"25022:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"25030:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25018:3:46"},"nodeType":"YulFunctionCall","src":"25018:15:46"},{"hexValue":"697a6564","kind":"string","nodeType":"YulLiteral","src":"25035:6:46","type":"","value":"ized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25011:6:46"},"nodeType":"YulFunctionCall","src":"25011:31:46"},"nodeType":"YulExpressionStatement","src":"25011:31:46"}]},"name":"store_literal_in_memory_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"24924:6:46","type":""}],"src":"24826:223:46"},{"body":{"nodeType":"YulBlock","src":"25161:67:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"25183:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"25191:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"25179:3:46"},"nodeType":"YulFunctionCall","src":"25179:14:46"},{"hexValue":"436c6f6e61626c653a20435245415445206661696c6564","kind":"string","nodeType":"YulLiteral","src":"25195:25:46","type":"","value":"Clonable: CREATE failed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25172:6:46"},"nodeType":"YulFunctionCall","src":"25172:49:46"},"nodeType":"YulExpressionStatement","src":"25172:49:46"}]},"name":"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"25153:6:46","type":""}],"src":"25055:173:46"},{"body":{"nodeType":"YulBlock","src":"25285:87:46","statements":[{"body":{"nodeType":"YulBlock","src":"25350:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25359:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25362:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25352:6:46"},"nodeType":"YulFunctionCall","src":"25352:12:46"},"nodeType":"YulExpressionStatement","src":"25352:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25308:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25341:5:46"}],"functionName":{"name":"cleanup_t_address_payable","nodeType":"YulIdentifier","src":"25315:25:46"},"nodeType":"YulFunctionCall","src":"25315:32:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"25305:2:46"},"nodeType":"YulFunctionCall","src":"25305:43:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"25298:6:46"},"nodeType":"YulFunctionCall","src":"25298:51:46"},"nodeType":"YulIf","src":"25295:71:46"}]},"name":"validator_revert_t_address_payable","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"25278:5:46","type":""}],"src":"25234:138:46"},{"body":{"nodeType":"YulBlock","src":"25421:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"25478:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25487:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25490:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25480:6:46"},"nodeType":"YulFunctionCall","src":"25480:12:46"},"nodeType":"YulExpressionStatement","src":"25480:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25444:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25469:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"25451:17:46"},"nodeType":"YulFunctionCall","src":"25451:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"25441:2:46"},"nodeType":"YulFunctionCall","src":"25441:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"25434:6:46"},"nodeType":"YulFunctionCall","src":"25434:43:46"},"nodeType":"YulIf","src":"25431:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"25414:5:46","type":""}],"src":"25378:122:46"},{"body":{"nodeType":"YulBlock","src":"25566:96:46","statements":[{"body":{"nodeType":"YulBlock","src":"25640:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25649:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25652:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25642:6:46"},"nodeType":"YulFunctionCall","src":"25642:12:46"},"nodeType":"YulExpressionStatement","src":"25642:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25589:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25631:5:46"}],"functionName":{"name":"cleanup_t_contract$_Clonable_$7948","nodeType":"YulIdentifier","src":"25596:34:46"},"nodeType":"YulFunctionCall","src":"25596:41:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"25586:2:46"},"nodeType":"YulFunctionCall","src":"25586:52:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"25579:6:46"},"nodeType":"YulFunctionCall","src":"25579:60:46"},"nodeType":"YulIf","src":"25576:80:46"}]},"name":"validator_revert_t_contract$_Clonable_$7948","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"25559:5:46","type":""}],"src":"25506:156:46"},{"body":{"nodeType":"YulBlock","src":"25711:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"25768:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25777:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25780:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25770:6:46"},"nodeType":"YulFunctionCall","src":"25770:12:46"},"nodeType":"YulExpressionStatement","src":"25770:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25734:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25759:5:46"}],"functionName":{"name":"cleanup_t_uint256","nodeType":"YulIdentifier","src":"25741:17:46"},"nodeType":"YulFunctionCall","src":"25741:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"25731:2:46"},"nodeType":"YulFunctionCall","src":"25731:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"25724:6:46"},"nodeType":"YulFunctionCall","src":"25724:43:46"},"nodeType":"YulIf","src":"25721:63:46"}]},"name":"validator_revert_t_uint256","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"25704:5:46","type":""}],"src":"25668:122:46"},{"body":{"nodeType":"YulBlock","src":"25838:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"25894:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25903:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25906:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25896:6:46"},"nodeType":"YulFunctionCall","src":"25896:12:46"},"nodeType":"YulExpressionStatement","src":"25896:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25861:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"25885:5:46"}],"functionName":{"name":"cleanup_t_uint32","nodeType":"YulIdentifier","src":"25868:16:46"},"nodeType":"YulFunctionCall","src":"25868:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"25858:2:46"},"nodeType":"YulFunctionCall","src":"25858:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"25851:6:46"},"nodeType":"YulFunctionCall","src":"25851:42:46"},"nodeType":"YulIf","src":"25848:62:46"}]},"name":"validator_revert_t_uint32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"25831:5:46","type":""}],"src":"25796:120:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n        copy_calldata_to_memory(src, dst, length)\n    }\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_t_bytes32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_contract$_Clonable_$7948_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_contract$_Clonable_$7948(value)\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_uint32(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint32(value)\n    }\n\n    function abi_decode_tuple_t_address_payable_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_address_payable_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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\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_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_contract$_Clonable_$7948_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_contract$_Clonable_$7948_fromMemory(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_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint32t_uint256t_bytes32(headStart, dataEnd) -> value0, value1, value2 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint32(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 := 64\n\n            value2 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint32t_uint256t_uint256(headStart, dataEnd) -> value0, value1, value2 {\n        if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint32(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 := 64\n\n            value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\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_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$_Clonable_$7948_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_Clonable_$7948_to_t_address(value))\n    }\n\n    function abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable(value))\n    }\n\n    function abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address(value))\n    }\n\n    function abi_encode_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n        store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 39)\n        store_literal_in_memory_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n        store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n        store_literal_in_memory_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n        store_literal_in_memory_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n        store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e(pos)\n        end := add(pos, 32)\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_uint32_to_t_uint32_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint32(value))\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_bytes32__to_t_address_t_bytes32__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_bytes32_to_t_bytes32_fromStack(value1,  add(headStart, 32))\n\n    }\n\n    function abi_encode_tuple_t_address_t_uint256_t_uint256_t_uint256__to_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed(headStart , value3, value2, value1, value0) -> tail {\n        tail := add(headStart, 128)\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        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    }\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__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$_Clonable_$7948__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_contract$_WitnetRequestBoard_$481__to_t_address_payable__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_WitnetRequestBoard_$481_to_t_address_payable_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_contract$_WitnetRequestRandomness_$9072__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_WitnetRequestRandomness_$9072_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c__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_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18__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_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__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_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1__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_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892__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_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__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_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_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_bytes32__to_t_uint256_t_bytes32__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_bytes32_to_t_bytes32_fromStack(value1,  add(headStart, 32))\n\n    }\n\n    function abi_encode_tuple_t_uint32__to_t_uint32__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint32_to_t_uint32_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_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 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_exp_helper(_power, _base, exponent, max) -> power, base {\n        power := _power\n        base  := _base\n        for { } gt(exponent, 1) {}\n        {\n            // overflow check for base * base\n            if gt(base, div(max, base)) { panic_error_0x11() }\n            if and(exponent, 1)\n            {\n                // No checks for power := mul(power, base) needed, because the check\n                // for base * base above is sufficient, since:\n                // |power| <= base (proof by induction) and thus:\n                // |power * base| <= base * base <= max <= |min| (for signed)\n                // (this is equally true for signed and unsigned exp)\n                power := mul(power, base)\n            }\n            base := mul(base, base)\n            exponent := shift_right_1_unsigned(exponent)\n        }\n    }\n\n    function checked_exp_t_uint256_t_uint8(base, exponent) -> power {\n        base := cleanup_t_uint256(base)\n        exponent := cleanup_t_uint8(exponent)\n\n        power := checked_exp_unsigned(base, exponent, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n\n    }\n\n    function checked_exp_unsigned(base, exponent, max) -> power {\n        // This function currently cannot be inlined because of the\n        // \"leave\" statements. We have to improve the optimizer.\n\n        // Note that 0**0 == 1\n        if iszero(exponent) { power := 1 leave }\n        if iszero(base) { power := 0 leave }\n\n        // Specializations for small bases\n        switch base\n        // 0 is handled above\n        case 1 { power := 1 leave }\n        case 2\n        {\n            if gt(exponent, 255) { panic_error_0x11() }\n            power := exp(2, exponent)\n            if gt(power, max) { panic_error_0x11() }\n            leave\n        }\n        if or(\n            and(lt(base, 11), lt(exponent, 78)),\n            and(lt(base, 307), lt(exponent, 32))\n        )\n        {\n            power := exp(base, exponent)\n            if gt(power, max) { panic_error_0x11() }\n            leave\n        }\n\n        power, base := checked_exp_helper(1, base, exponent, max)\n\n        if gt(power, div(max, base)) { panic_error_0x11() }\n        power := mul(power, base)\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 checked_sub_t_uint8(x, y) -> diff {\n        x := cleanup_t_uint8(x)\n        y := cleanup_t_uint8(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_address_payable(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_contract$_Clonable_$7948(value) -> cleaned {\n        cleaned := cleanup_t_address(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_uint32(value) -> cleaned {\n        cleaned := and(value, 0xffffffff)\n    }\n\n    function cleanup_t_uint8(value) -> cleaned {\n        cleaned := and(value, 0xff)\n    }\n\n    function convert_t_contract$_Clonable_$7948_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_contract$_WitnetRequestBoard_$481_to_t_address_payable(value) -> converted {\n        converted := convert_t_uint160_to_t_address_payable(value)\n    }\n\n    function convert_t_contract$_WitnetRequestRandomness_$9072_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_uint160_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_address_payable(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_uint160(value) -> converted {\n        converted := cleanup_t_uint160(value)\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 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 panic_error_0x01() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x01)\n        revert(0, 0x24)\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_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function shift_right_1_unsigned(value) -> newValue {\n        newValue :=\n\n        shr(1, value)\n\n    }\n\n    function store_literal_in_memory_27c0b327cc0b018b53b9b18cb2a71bb258135ad5b76449ea5db5c16e0520006c(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomness: already initia\")\n\n        mstore(add(memPtr, 32), \"lized\")\n\n    }\n\n    function store_literal_in_memory_5deec3b7674efa4143e47ae07c41ec89edefa27737b7dda5e9c508b304376e18(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomnessMock: pending ra\")\n\n        mstore(add(memPtr, 32), \"ndomize\")\n\n    }\n\n    function store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf(memPtr) {\n\n        mstore(add(memPtr, 0), \"Clonable: CREATE2 failed\")\n\n    }\n\n    function store_literal_in_memory_97ea46a021217f19ea885ad2c0a0acbc990fcf1a215843f01e514975240412d1(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomnessMock: reward too\")\n\n        mstore(add(memPtr, 32), \" low\")\n\n    }\n\n    function store_literal_in_memory_dab070d3b10f889718e0289cd93aedef962a048e98d90e7f3d37a0e511d23892(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRandomnessMock: not random\")\n\n        mstore(add(memPtr, 32), \"ized\")\n\n    }\n\n    function store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e(memPtr) {\n\n        mstore(add(memPtr, 0), \"Clonable: CREATE failed\")\n\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    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_contract$_Clonable_$7948(value) {\n        if iszero(eq(value, cleanup_t_contract$_Clonable_$7948(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint256(value) {\n        if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint32(value) {\n        if iszero(eq(value, cleanup_t_uint32(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"257":[{"length":32,"start":1795}],"7850":[{"length":32,"start":2425},{"length":32,"start":2551},{"length":32,"start":3322},{"length":32,"start":3586},{"length":32,"start":4264},{"length":32,"start":4529}]},"linkReferences":{},"object":"6080604052600436106101095760003560e01c80639938fd0c11610095578063a60ee26811610064578063a60ee2681461038b578063daaa360c146103c8578063e35329f814610405578063e7d4a01614610435578063fb476cad1461047257610109565b80639938fd0c146102b85780639bc86fec146102e3578063a04daef014610320578063a3252f681461034b57610109565b806340b41daa116100dc57806340b41daa146101de578063439fab911461021b57806346d1d21a14610244578063699b328a1461026f5780637104ddb21461028d57610109565b806309ed46071461010e57806324cbbfc11461013957806336b651bb146101765780633b13e76e146101b3575b600080fd5b34801561011a57600080fd5b506101236104af565b6040516101309190611959565b60405180910390f35b34801561014557600080fd5b50610160600480360381019061015b9190611679565b6104c7565b60405161016d9190611aae565b60405180910390f35b34801561018257600080fd5b5061019d600480360381019061019891906115f9565b61050d565b6040516101aa9190611a6a565b60405180910390f35b3480156101bf57600080fd5b506101c861055c565b6040516101d5919061198f565b60405180910390f35b3480156101ea57600080fd5b50610205600480360381019061020091906115f9565b610580565b6040516102129190611a6a565b60405180910390f35b34801561022757600080fd5b50610242600480360381019061023d9190611583565b61061c565b005b34801561025057600080fd5b50610259610701565b6040516102669190611974565b60405180910390f35b610277610725565b6040516102849190611a6a565b60405180910390f35b34801561029957600080fd5b506102a2610977565b6040516102af919061184f565b60405180910390f35b3480156102c457600080fd5b506102cd61099b565b6040516102da9190611a6a565b60405180910390f35b3480156102ef57600080fd5b5061030a600480360381019061030591906115f9565b6109a1565b60405161031791906118d8565b60405180910390f35b34801561032c57600080fd5b506103356109f3565b60405161034291906118d8565b60405180910390f35b34801561035757600080fd5b50610372600480360381019061036d91906115f9565b610a4a565b6040516103829493929190611893565b60405180910390f35b34801561039757600080fd5b506103b260048036038101906103ad91906115f9565b610aab565b6040516103bf9190611a6a565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611529565b610ab7565b6040516103fc9190611959565b60405180910390f35b61041f600480360381019061041a91906115f9565b610ad2565b60405161042c9190611a6a565b60405180910390f35b34801561044157600080fd5b5061045c60048036038101906104579190611626565b610b2d565b6040516104699190611aae565b60405180910390f35b34801561047e57600080fd5b50610499600480360381019061049491906115f9565b610bb4565b6040516104a691906118f3565b60405180910390f35b60006104b9610cf5565b90506104c481610e7e565b90565b60006105048484336104d886610bb4565b6040516020016104e992919061186a565b60405160208183030381529060405280519060200120610b2d565b90509392505050565b600080821161051f5761051e611f90565b5b600060015490508083116105525761054d83600260008481526020019081526020016000206001015461101c565b610554565b805b915050919050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156105fd576105f882600154611054565b610615565b60026000838152602001908152602001600020600201545b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146106ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106a2906119aa565b60405180910390fd5b808060200190518101906106bf91906114fc565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600043600154101561091957600454905080341015610779576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161077090611a0a565b60405180910390fd5b600060056000815461078a90611f47565b91905081905590506000600260004381526020019081526020016000209050338160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508181600301819055506000600154905080826001018190555043600260008381526020019081526020016000206002018190555043600181905550803373ffffffffffffffffffffffffffffffffffffffff167faf291bb4e1767569c77502edb6ad1009e856f57c09f214886c6becc9836c20c08560008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309bd5a606040518163ffffffff1660e01b815260040160206040518083038186803b1580156108c757600080fd5b505afa1580156108db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ff9190611556565b60405161090d929190611a85565b60405180910390a35050505b34811015610974573373ffffffffffffffffffffffffffffffffffffffff166108fc82346109479190611d6d565b9081150290604051600060405180830381858888f19350505050158015610972573d6000803e3d6000fd5b505b90565b7f000000000000000000000000000000000000000000000000000000000000000081565b60015481565b60008060026000848152602001908152602001600020905060008160030154141580156109eb5750600360009054906101000a900460ff1660ff16836109e79190611b4c565b4310155b915050919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6000806000806000600260008781526020019081526020016000209050806003015493508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1694508060010154925080600201549150509193509193565b60006004549050919050565b6000610ac2826110a3565b9050610acd81610e7e565b919050565b600080341115610b24573373ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610b22573d6000803e3d6000fd5b505b60009050919050565b600080610b398561122f565b60ff610b459190611da1565b905060006001826002610b589190611bf5565b610b629190611d6d565b8486604051602001610b7592919061190e565b6040516020818303038152906040528051906020012060001c1690508160ff168663ffffffff1682610ba79190611d13565b901c925050509392505050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610c2c57610c2982610580565b91505b6000600260008481526020019081526020016000206003015490506000811415610c8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c8290611a2a565b60405180910390fd5b600360009054906101000a900460ff1660ff1683610ca99190611b4c565b431015610ceb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce2906119ca565b60405180910390fd5b8240915050919050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610de9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de090611a4a565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166309ed46076040518163ffffffff1660e01b8152600401602060405180830381600087803b158015610ee957600080fd5b505af1158015610efd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f2191906115cc565b90508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401610f5c919061184f565b600060405180830381600087803b158015610f7657600080fd5b505af1158015610f8a573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff1663439fab9182604051602001610fbb919061184f565b6040516020818303038152906040526040518263ffffffff1660e01b8152600401610fe69190611937565b600060405180830381600087803b15801561100057600080fd5b505af1158015611014573d6000803e3d6000fd5b505050505050565b600081831161104a5761104583600260008581526020019081526020016000206001015461101c565b61104c565b815b905092915050565b6000818310156110835761107e836002600085815260200190815260200160002060010154611054565b61109b565b60026000838152602001908152602001600020600201545b905092915050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611198576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118f906119ea565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b600080604051806104000160405280600060ff168152602001600960ff168152602001600160ff168152602001600a60ff168152602001600d60ff168152602001601560ff168152602001600260ff168152602001601d60ff168152602001600b60ff168152602001600e60ff168152602001601060ff168152602001601260ff168152602001601660ff168152602001601960ff168152602001600360ff168152602001601e60ff168152602001600860ff168152602001600c60ff168152602001601460ff168152602001601c60ff168152602001600f60ff168152602001601160ff168152602001601860ff168152602001600760ff168152602001601360ff168152602001601b60ff168152602001601760ff168152602001600660ff168152602001601a60ff168152602001600560ff168152602001600460ff168152602001601f60ff16815250905060018363ffffffff16901c8317925060028363ffffffff16901c8317925060048363ffffffff16901c8317925060088363ffffffff16901c8317925060108363ffffffff16901c8317925080601b6307c4acdd8563ffffffff166113e29190611d13565b63ffffffff16901c63ffffffff166020811061140157611400611fee565b5b6020020151915050919050565b600061142161141c84611aee565b611ac9565b90508281526020810184848401111561143d5761143c612051565b5b611448848285611ed4565b509392505050565b60008151905061145f8161220c565b92915050565b60008135905061147481612223565b92915050565b60008151905061148981612223565b92915050565b600082601f8301126114a4576114a361204c565b5b81356114b484826020860161140e565b91505092915050565b6000815190506114cc8161223a565b92915050565b6000813590506114e181612251565b92915050565b6000813590506114f681612268565b92915050565b6000602082840312156115125761151161205b565b5b600061152084828501611450565b91505092915050565b60006020828403121561153f5761153e61205b565b5b600061154d84828501611465565b91505092915050565b60006020828403121561156c5761156b61205b565b5b600061157a8482850161147a565b91505092915050565b6000602082840312156115995761159861205b565b5b600082013567ffffffffffffffff8111156115b7576115b6612056565b5b6115c38482850161148f565b91505092915050565b6000602082840312156115e2576115e161205b565b5b60006115f0848285016114bd565b91505092915050565b60006020828403121561160f5761160e61205b565b5b600061161d848285016114d2565b91505092915050565b60008060006060848603121561163f5761163e61205b565b5b600061164d868287016114e7565b935050602061165e868287016114d2565b925050604061166f86828701611465565b9150509250925092565b6000806000606084860312156116925761169161205b565b5b60006116a0868287016114e7565b93505060206116b1868287016114d2565b92505060406116c2868287016114d2565b9150509250925092565b6116d581611dd5565b82525050565b6116e481611df9565b82525050565b6116f381611e05565b82525050565b600061170482611b1f565b61170e8185611b2a565b935061171e818560208601611ee3565b61172781612060565b840191505092915050565b61173b81611e68565b82525050565b61174a81611e7a565b82525050565b61175981611e8c565b82525050565b600061176c602583611b3b565b91506117778261207e565b604082019050919050565b600061178f602783611b3b565b915061179a826120cd565b604082019050919050565b60006117b2601883611b3b565b91506117bd8261211c565b602082019050919050565b60006117d5602483611b3b565b91506117e082612145565b604082019050919050565b60006117f8602483611b3b565b915061180382612194565b604082019050919050565b600061181b601783611b3b565b9150611826826121e3565b602082019050919050565b61183a81611e41565b82525050565b61184981611e4b565b82525050565b600060208201905061186460008301846116cc565b92915050565b600060408201905061187f60008301856116cc565b61188c60208301846116ea565b9392505050565b60006080820190506118a860008301876116cc565b6118b56020830186611831565b6118c26040830185611831565b6118cf6060830184611831565b95945050505050565b60006020820190506118ed60008301846116db565b92915050565b600060208201905061190860008301846116ea565b92915050565b600060408201905061192360008301856116ea565b6119306020830184611831565b9392505050565b6000602082019050818103600083015261195181846116f9565b905092915050565b600060208201905061196e6000830184611732565b92915050565b60006020820190506119896000830184611741565b92915050565b60006020820190506119a46000830184611750565b92915050565b600060208201905081810360008301526119c38161175f565b9050919050565b600060208201905081810360008301526119e381611782565b9050919050565b60006020820190508181036000830152611a03816117a5565b9050919050565b60006020820190508181036000830152611a23816117c8565b9050919050565b60006020820190508181036000830152611a43816117eb565b9050919050565b60006020820190508181036000830152611a638161180e565b9050919050565b6000602082019050611a7f6000830184611831565b92915050565b6000604082019050611a9a6000830185611831565b611aa760208301846116ea565b9392505050565b6000602082019050611ac36000830184611840565b92915050565b6000611ad3611ae4565b9050611adf8282611f16565b919050565b6000604051905090565b600067ffffffffffffffff821115611b0957611b0861201d565b5b611b1282612060565b9050602081019050919050565b600081519050919050565b600082825260208201905092915050565b600082825260208201905092915050565b6000611b5782611e41565b9150611b6283611e41565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b9757611b96611fbf565b5b828201905092915050565b6000808291508390505b6001851115611bec57808604811115611bc857611bc7611fbf565b5b6001851615611bd75780820291505b8081029050611be585612071565b9450611bac565b94509492505050565b6000611c0082611e41565b9150611c0b83611e5b565b9250611c387fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c40565b905092915050565b600082611c505760019050611d0c565b81611c5e5760009050611d0c565b8160018114611c745760028114611c7e57611cad565b6001915050611d0c565b60ff841115611c9057611c8f611fbf565b5b8360020a915084821115611ca757611ca6611fbf565b5b50611d0c565b5060208310610133831016604e8410600b8410161715611ce25782820a905083811115611cdd57611cdc611fbf565b5b611d0c565b611cef8484846001611ba2565b92509050818404811115611d0657611d05611fbf565b5b81810290505b9392505050565b6000611d1e82611e41565b9150611d2983611e41565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611d6257611d61611fbf565b5b828202905092915050565b6000611d7882611e41565b9150611d8383611e41565b925082821015611d9657611d95611fbf565b5b828203905092915050565b6000611dac82611e5b565b9150611db783611e5b565b925082821015611dca57611dc9611fbf565b5b828203905092915050565b6000611de082611e21565b9050919050565b6000611df282611e21565b9050919050565b60008115159050919050565b6000819050919050565b6000611e1a82611dd5565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600063ffffffff82169050919050565b600060ff82169050919050565b6000611e7382611e9e565b9050919050565b6000611e8582611eb0565b9050919050565b6000611e9782611e9e565b9050919050565b6000611ea982611ec2565b9050919050565b6000611ebb82611ec2565b9050919050565b6000611ecd82611e21565b9050919050565b82818337600083830152505050565b60005b83811015611f01578082015181840152602081019050611ee6565b83811115611f10576000848401525b50505050565b611f1f82612060565b810181811067ffffffffffffffff82111715611f3e57611f3d61201d565b5b80604052505050565b6000611f5282611e41565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611f8557611f84611fbf565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b60008160011c9050919050565b7f5769746e657452616e646f6d6e6573733a20616c726561647920696e6974696160008201527f6c697a6564000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573734d6f636b3a2070656e64696e6720726160008201527f6e646f6d697a6500000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e657452616e646f6d6e6573734d6f636b3a2072657761726420746f6f60008201527f206c6f7700000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e657452616e646f6d6e6573734d6f636b3a206e6f742072616e646f6d60008201527f697a656400000000000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b61221581611de7565b811461222057600080fd5b50565b61222c81611e05565b811461223757600080fd5b50565b61224381611e0f565b811461224e57600080fd5b50565b61225a81611e41565b811461226557600080fd5b50565b61227181611e4b565b811461227c57600080fd5b5056fea2646970667358221220c43f6e704bfd58fc565704a9130b6e8f4fd24f92ba9c5a37c952af2ebf55964064736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x109 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x9938FD0C GT PUSH2 0x95 JUMPI DUP1 PUSH4 0xA60EE268 GT PUSH2 0x64 JUMPI DUP1 PUSH4 0xA60EE268 EQ PUSH2 0x38B JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x3C8 JUMPI DUP1 PUSH4 0xE35329F8 EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0xE7D4A016 EQ PUSH2 0x435 JUMPI DUP1 PUSH4 0xFB476CAD EQ PUSH2 0x472 JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9938FD0C EQ PUSH2 0x2B8 JUMPI DUP1 PUSH4 0x9BC86FEC EQ PUSH2 0x2E3 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x320 JUMPI DUP1 PUSH4 0xA3252F68 EQ PUSH2 0x34B JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x40B41DAA GT PUSH2 0xDC JUMPI DUP1 PUSH4 0x40B41DAA EQ PUSH2 0x1DE JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x21B JUMPI DUP1 PUSH4 0x46D1D21A EQ PUSH2 0x244 JUMPI DUP1 PUSH4 0x699B328A EQ PUSH2 0x26F JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x28D JUMPI PUSH2 0x109 JUMP JUMPDEST DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x10E JUMPI DUP1 PUSH4 0x24CBBFC1 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x36B651BB EQ PUSH2 0x176 JUMPI DUP1 PUSH4 0x3B13E76E EQ PUSH2 0x1B3 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x11A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x123 PUSH2 0x4AF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x1959 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x145 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x160 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x15B SWAP2 SWAP1 PUSH2 0x1679 JUMP JUMPDEST PUSH2 0x4C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x16D SWAP2 SWAP1 PUSH2 0x1AAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x182 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x19D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x198 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0x50D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1AA SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1BF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1C8 PUSH2 0x55C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1D5 SWAP2 SWAP1 PUSH2 0x198F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x1EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x205 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x200 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0x580 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x212 SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x227 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x242 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x23D SWAP2 SWAP1 PUSH2 0x1583 JUMP JUMPDEST PUSH2 0x61C JUMP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x250 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x259 PUSH2 0x701 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x266 SWAP2 SWAP1 PUSH2 0x1974 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x277 PUSH2 0x725 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x284 SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x299 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2A2 PUSH2 0x977 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AF SWAP2 SWAP1 PUSH2 0x184F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2C4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2CD PUSH2 0x99B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2DA SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2EF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x305 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0x9A1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x317 SWAP2 SWAP1 PUSH2 0x18D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x32C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x335 PUSH2 0x9F3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x342 SWAP2 SWAP1 PUSH2 0x18D8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x357 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x372 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x36D SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xA4A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x382 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x1893 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x397 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3B2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3AD SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xAAB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3BF SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3D4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x3EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3EA SWAP2 SWAP1 PUSH2 0x1529 JUMP JUMPDEST PUSH2 0xAB7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x1959 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41A SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xAD2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x42C SWAP2 SWAP1 PUSH2 0x1A6A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x441 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x45C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x457 SWAP2 SWAP1 PUSH2 0x1626 JUMP JUMPDEST PUSH2 0xB2D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x469 SWAP2 SWAP1 PUSH2 0x1AAE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x47E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x499 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x494 SWAP2 SWAP1 PUSH2 0x15F9 JUMP JUMPDEST PUSH2 0xBB4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A6 SWAP2 SWAP1 PUSH2 0x18F3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x0 PUSH2 0x4B9 PUSH2 0xCF5 JUMP JUMPDEST SWAP1 POP PUSH2 0x4C4 DUP2 PUSH2 0xE7E JUMP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x504 DUP5 DUP5 CALLER PUSH2 0x4D8 DUP7 PUSH2 0xBB4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x4E9 SWAP3 SWAP2 SWAP1 PUSH2 0x186A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH2 0xB2D JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 GT PUSH2 0x51F JUMPI PUSH2 0x51E PUSH2 0x1F90 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP4 GT PUSH2 0x552 JUMPI PUSH2 0x54D DUP4 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x101C JUMP JUMPDEST PUSH2 0x554 JUMP JUMPDEST DUP1 JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x5FD JUMPI PUSH2 0x5F8 DUP3 PUSH1 0x1 SLOAD PUSH2 0x1054 JUMP JUMPDEST PUSH2 0x615 JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6AB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6A2 SWAP1 PUSH2 0x19AA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 DUP1 PUSH1 0x20 ADD SWAP1 MLOAD DUP2 ADD SWAP1 PUSH2 0x6BF SWAP2 SWAP1 PUSH2 0x14FC JUMP JUMPDEST 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 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x0 NUMBER PUSH1 0x1 SLOAD LT ISZERO PUSH2 0x919 JUMPI PUSH1 0x4 SLOAD SWAP1 POP DUP1 CALLVALUE LT ISZERO PUSH2 0x779 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x770 SWAP1 PUSH2 0x1A0A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP2 SLOAD PUSH2 0x78A SWAP1 PUSH2 0x1F47 JUMP JUMPDEST SWAP2 SWAP1 POP DUP2 SWAP1 SSTORE SWAP1 POP PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 NUMBER DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP CALLER DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x1 SLOAD SWAP1 POP DUP1 DUP3 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP NUMBER PUSH1 0x1 DUP2 SWAP1 SSTORE POP DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xAF291BB4E1767569C77502EDB6AD1009E856F57C09F214886C6BECC9836C20C0 DUP6 PUSH1 0x0 DUP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9BD5A60 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 0x8C7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x8DB 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 0x8FF SWAP2 SWAP1 PUSH2 0x1556 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x90D SWAP3 SWAP2 SWAP1 PUSH2 0x1A85 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMPDEST CALLVALUE DUP2 LT ISZERO PUSH2 0x974 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC DUP3 CALLVALUE PUSH2 0x947 SWAP2 SWAP1 PUSH2 0x1D6D JUMP JUMPDEST SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0x972 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH1 0x1 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 DUP2 PUSH1 0x3 ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x9EB JUMPI POP PUSH1 0x3 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND DUP4 PUSH2 0x9E7 SWAP2 SWAP1 PUSH2 0x1B4C JUMP JUMPDEST NUMBER LT ISZERO JUMPDEST SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP8 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP DUP1 PUSH1 0x3 ADD SLOAD SWAP4 POP DUP1 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP5 POP DUP1 PUSH1 0x1 ADD SLOAD SWAP3 POP DUP1 PUSH1 0x2 ADD SLOAD SWAP2 POP POP SWAP2 SWAP4 POP SWAP2 SWAP4 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x4 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xAC2 DUP3 PUSH2 0x10A3 JUMP JUMPDEST SWAP1 POP PUSH2 0xACD DUP2 PUSH2 0xE7E JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 CALLVALUE GT ISZERO PUSH2 0xB24 JUMPI CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x8FC CALLVALUE SWAP1 DUP2 ISZERO MUL SWAP1 PUSH1 0x40 MLOAD PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 DUP9 DUP9 CALL SWAP4 POP POP POP POP ISZERO DUP1 ISZERO PUSH2 0xB22 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP JUMPDEST PUSH1 0x0 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB39 DUP6 PUSH2 0x122F JUMP JUMPDEST PUSH1 0xFF PUSH2 0xB45 SWAP2 SWAP1 PUSH2 0x1DA1 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 PUSH1 0x1 DUP3 PUSH1 0x2 PUSH2 0xB58 SWAP2 SWAP1 PUSH2 0x1BF5 JUMP JUMPDEST PUSH2 0xB62 SWAP2 SWAP1 PUSH2 0x1D6D JUMP JUMPDEST DUP5 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xB75 SWAP3 SWAP2 SWAP1 PUSH2 0x190E 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 0x0 SHR AND SWAP1 POP DUP2 PUSH1 0xFF AND DUP7 PUSH4 0xFFFFFFFF AND DUP3 PUSH2 0xBA7 SWAP2 SWAP1 PUSH2 0x1D13 JUMP JUMPDEST SWAP1 SHR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xC2C JUMPI PUSH2 0xC29 DUP3 PUSH2 0x580 JUMP JUMPDEST SWAP2 POP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP PUSH1 0x0 DUP2 EQ ISZERO PUSH2 0xC8B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC82 SWAP1 PUSH2 0x1A2A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND DUP4 PUSH2 0xCA9 SWAP2 SWAP1 PUSH2 0x1B4C JUMP JUMPDEST NUMBER LT ISZERO PUSH2 0xCEB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE2 SWAP1 PUSH2 0x19CA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP3 BLOCKHASH SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xDE9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xDE0 SWAP1 PUSH2 0x1A4A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x9ED4607 PUSH1 0x40 MLOAD DUP2 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xEE9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xEFD 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 0xF21 SWAP2 SWAP1 PUSH2 0x15CC JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xF5C SWAP2 SWAP1 PUSH2 0x184F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xF76 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xF8A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 DUP3 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xFBB SWAP2 SWAP1 PUSH2 0x184F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFE6 SWAP2 SWAP1 PUSH2 0x1937 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x1000 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x1014 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 GT PUSH2 0x104A JUMPI PUSH2 0x1045 DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x101C JUMP JUMPDEST PUSH2 0x104C JUMP JUMPDEST DUP2 JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 DUP4 LT ISZERO PUSH2 0x1083 JUMPI PUSH2 0x107E DUP4 PUSH1 0x2 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x1054 JUMP JUMPDEST PUSH2 0x109B JUMP JUMPDEST PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1198 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x118F SWAP1 PUSH2 0x19EA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 MLOAD DUP1 PUSH2 0x400 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xD PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x15 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1D PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xE PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x10 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x12 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x16 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x19 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1E PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x14 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1C PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xF PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x11 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x18 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x13 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1B PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x17 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1A PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1F PUSH1 0xFF AND DUP2 MSTORE POP SWAP1 POP PUSH1 0x1 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x2 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x4 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x8 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP PUSH1 0x10 DUP4 PUSH4 0xFFFFFFFF AND SWAP1 SHR DUP4 OR SWAP3 POP DUP1 PUSH1 0x1B PUSH4 0x7C4ACDD DUP6 PUSH4 0xFFFFFFFF AND PUSH2 0x13E2 SWAP2 SWAP1 PUSH2 0x1D13 JUMP JUMPDEST PUSH4 0xFFFFFFFF AND SWAP1 SHR PUSH4 0xFFFFFFFF AND PUSH1 0x20 DUP2 LT PUSH2 0x1401 JUMPI PUSH2 0x1400 PUSH2 0x1FEE JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1421 PUSH2 0x141C DUP5 PUSH2 0x1AEE JUMP JUMPDEST PUSH2 0x1AC9 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x143D JUMPI PUSH2 0x143C PUSH2 0x2051 JUMP JUMPDEST JUMPDEST PUSH2 0x1448 DUP5 DUP3 DUP6 PUSH2 0x1ED4 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x145F DUP2 PUSH2 0x220C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1474 DUP2 PUSH2 0x2223 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1489 DUP2 PUSH2 0x2223 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x14A4 JUMPI PUSH2 0x14A3 PUSH2 0x204C JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x14B4 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x140E JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x14CC DUP2 PUSH2 0x223A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x14E1 DUP2 PUSH2 0x2251 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x14F6 DUP2 PUSH2 0x2268 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1512 JUMPI PUSH2 0x1511 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1520 DUP5 DUP3 DUP6 ADD PUSH2 0x1450 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x153F JUMPI PUSH2 0x153E PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x154D DUP5 DUP3 DUP6 ADD PUSH2 0x1465 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x156C JUMPI PUSH2 0x156B PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x157A DUP5 DUP3 DUP6 ADD PUSH2 0x147A JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1599 JUMPI PUSH2 0x1598 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x15B7 JUMPI PUSH2 0x15B6 PUSH2 0x2056 JUMP JUMPDEST JUMPDEST PUSH2 0x15C3 DUP5 DUP3 DUP6 ADD PUSH2 0x148F JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x15E2 JUMPI PUSH2 0x15E1 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x15F0 DUP5 DUP3 DUP6 ADD PUSH2 0x14BD JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x160F JUMPI PUSH2 0x160E PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x161D DUP5 DUP3 DUP6 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x163F JUMPI PUSH2 0x163E PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x164D DUP7 DUP3 DUP8 ADD PUSH2 0x14E7 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x165E DUP7 DUP3 DUP8 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x166F DUP7 DUP3 DUP8 ADD PUSH2 0x1465 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x1692 JUMPI PUSH2 0x1691 PUSH2 0x205B JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x16A0 DUP7 DUP3 DUP8 ADD PUSH2 0x14E7 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x16B1 DUP7 DUP3 DUP8 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x16C2 DUP7 DUP3 DUP8 ADD PUSH2 0x14D2 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH2 0x16D5 DUP2 PUSH2 0x1DD5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x16E4 DUP2 PUSH2 0x1DF9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x16F3 DUP2 PUSH2 0x1E05 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1704 DUP3 PUSH2 0x1B1F JUMP JUMPDEST PUSH2 0x170E DUP2 DUP6 PUSH2 0x1B2A JUMP JUMPDEST SWAP4 POP PUSH2 0x171E DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1EE3 JUMP JUMPDEST PUSH2 0x1727 DUP2 PUSH2 0x2060 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x173B DUP2 PUSH2 0x1E68 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x174A DUP2 PUSH2 0x1E7A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1759 DUP2 PUSH2 0x1E8C JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x176C PUSH1 0x25 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x1777 DUP3 PUSH2 0x207E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x178F PUSH1 0x27 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x179A DUP3 PUSH2 0x20CD JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17B2 PUSH1 0x18 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x17BD DUP3 PUSH2 0x211C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17D5 PUSH1 0x24 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x17E0 DUP3 PUSH2 0x2145 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x17F8 PUSH1 0x24 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x1803 DUP3 PUSH2 0x2194 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x181B PUSH1 0x17 DUP4 PUSH2 0x1B3B JUMP JUMPDEST SWAP2 POP PUSH2 0x1826 DUP3 PUSH2 0x21E3 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x183A DUP2 PUSH2 0x1E41 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1849 DUP2 PUSH2 0x1E4B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1864 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x16CC JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x187F PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x16CC JUMP JUMPDEST PUSH2 0x188C PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x16EA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x18A8 PUSH1 0x0 DUP4 ADD DUP8 PUSH2 0x16CC JUMP JUMPDEST PUSH2 0x18B5 PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x1831 JUMP JUMPDEST PUSH2 0x18C2 PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x1831 JUMP JUMPDEST PUSH2 0x18CF PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x1831 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x18ED PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x16DB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1908 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x16EA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1923 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x16EA JUMP JUMPDEST PUSH2 0x1930 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x1831 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 0x1951 DUP2 DUP5 PUSH2 0x16F9 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x196E PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1732 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1989 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1741 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x19A4 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1750 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x19C3 DUP2 PUSH2 0x175F 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 0x19E3 DUP2 PUSH2 0x1782 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 0x1A03 DUP2 PUSH2 0x17A5 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 0x1A23 DUP2 PUSH2 0x17C8 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 0x1A43 DUP2 PUSH2 0x17EB 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 0x1A63 DUP2 PUSH2 0x180E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1A7F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1831 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x1A9A PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x1831 JUMP JUMPDEST PUSH2 0x1AA7 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x16EA JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x1AC3 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1840 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1AD3 PUSH2 0x1AE4 JUMP JUMPDEST SWAP1 POP PUSH2 0x1ADF DUP3 DUP3 PUSH2 0x1F16 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 0x1B09 JUMPI PUSH2 0x1B08 PUSH2 0x201D JUMP JUMPDEST JUMPDEST PUSH2 0x1B12 DUP3 PUSH2 0x2060 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 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1B57 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1B62 DUP4 PUSH2 0x1E41 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x1B97 JUMPI PUSH2 0x1B96 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 DUP3 SWAP2 POP DUP4 SWAP1 POP JUMPDEST PUSH1 0x1 DUP6 GT ISZERO PUSH2 0x1BEC JUMPI DUP1 DUP7 DIV DUP2 GT ISZERO PUSH2 0x1BC8 JUMPI PUSH2 0x1BC7 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP6 AND ISZERO PUSH2 0x1BD7 JUMPI DUP1 DUP3 MUL SWAP2 POP JUMPDEST DUP1 DUP2 MUL SWAP1 POP PUSH2 0x1BE5 DUP6 PUSH2 0x2071 JUMP JUMPDEST SWAP5 POP PUSH2 0x1BAC JUMP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C00 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1C0B DUP4 PUSH2 0x1E5B JUMP JUMPDEST SWAP3 POP PUSH2 0x1C38 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP5 DUP5 PUSH2 0x1C40 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH2 0x1C50 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x1D0C JUMP JUMPDEST DUP2 PUSH2 0x1C5E JUMPI PUSH1 0x0 SWAP1 POP PUSH2 0x1D0C JUMP JUMPDEST DUP2 PUSH1 0x1 DUP2 EQ PUSH2 0x1C74 JUMPI PUSH1 0x2 DUP2 EQ PUSH2 0x1C7E JUMPI PUSH2 0x1CAD JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP PUSH2 0x1D0C JUMP JUMPDEST PUSH1 0xFF DUP5 GT ISZERO PUSH2 0x1C90 JUMPI PUSH2 0x1C8F PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP4 PUSH1 0x2 EXP SWAP2 POP DUP5 DUP3 GT ISZERO PUSH2 0x1CA7 JUMPI PUSH2 0x1CA6 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST POP PUSH2 0x1D0C JUMP JUMPDEST POP PUSH1 0x20 DUP4 LT PUSH2 0x133 DUP4 LT AND PUSH1 0x4E DUP5 LT PUSH1 0xB DUP5 LT AND OR ISZERO PUSH2 0x1CE2 JUMPI DUP3 DUP3 EXP SWAP1 POP DUP4 DUP2 GT ISZERO PUSH2 0x1CDD JUMPI PUSH2 0x1CDC PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST PUSH2 0x1D0C JUMP JUMPDEST PUSH2 0x1CEF DUP5 DUP5 DUP5 PUSH1 0x1 PUSH2 0x1BA2 JUMP JUMPDEST SWAP3 POP SWAP1 POP DUP2 DUP5 DIV DUP2 GT ISZERO PUSH2 0x1D06 JUMPI PUSH2 0x1D05 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP2 DUP2 MUL SWAP1 POP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D1E DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1D29 DUP4 PUSH2 0x1E41 JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x1D62 JUMPI PUSH2 0x1D61 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D78 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH2 0x1D83 DUP4 PUSH2 0x1E41 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x1D96 JUMPI PUSH2 0x1D95 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DAC DUP3 PUSH2 0x1E5B JUMP JUMPDEST SWAP2 POP PUSH2 0x1DB7 DUP4 PUSH2 0x1E5B JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x1DCA JUMPI PUSH2 0x1DC9 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DE0 DUP3 PUSH2 0x1E21 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1DF2 DUP3 PUSH2 0x1E21 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 PUSH2 0x1E1A DUP3 PUSH2 0x1DD5 JUMP JUMPDEST 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 PUSH4 0xFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E73 DUP3 PUSH2 0x1E9E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E85 DUP3 PUSH2 0x1EB0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E97 DUP3 PUSH2 0x1E9E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EA9 DUP3 PUSH2 0x1EC2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EBB DUP3 PUSH2 0x1EC2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ECD DUP3 PUSH2 0x1E21 JUMP JUMPDEST 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 0x1F01 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1EE6 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1F10 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x1F1F DUP3 PUSH2 0x2060 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x1F3E JUMPI PUSH2 0x1F3D PUSH2 0x201D JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F52 DUP3 PUSH2 0x1E41 JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x1F85 JUMPI PUSH2 0x1F84 PUSH2 0x1FBF JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x1 SHR SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573733A20616C726561647920696E69746961 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6C697A6564000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573734D6F636B3A2070656E64696E67207261 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6E646F6D697A6500000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573734D6F636B3A2072657761726420746F6F PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x206C6F7700000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E657452616E646F6D6E6573734D6F636B3A206E6F742072616E646F6D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x697A656400000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x2215 DUP2 PUSH2 0x1DE7 JUMP JUMPDEST DUP2 EQ PUSH2 0x2220 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x222C DUP2 PUSH2 0x1E05 JUMP JUMPDEST DUP2 EQ PUSH2 0x2237 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2243 DUP2 PUSH2 0x1E0F JUMP JUMPDEST DUP2 EQ PUSH2 0x224E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x225A DUP2 PUSH2 0x1E41 JUMP JUMPDEST DUP2 EQ PUSH2 0x2265 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x2271 DUP2 PUSH2 0x1E4B JUMP JUMPDEST DUP2 EQ PUSH2 0x227C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC4 EXTCODEHASH PUSH15 0x704BFD58FC565704A9130B6E8F4FD2 0x4F SWAP3 0xBA SWAP13 GAS CALLDATACOPY 0xC9 MSTORE 0xAF 0x2E 0xBF SSTORE SWAP7 BLOCKHASH PUSH5 0x736F6C6343 STOP ADDMOD SMOD STOP CALLER ","sourceMap":"509:6192:33:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11169:176:10;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6666:382;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5195:396;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;466:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4584:355;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12264:362;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;341:42:8;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4969:1228:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;310:45:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;526:44:10;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4187:316:33;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;522:134:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2290:442:33;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;1454:156;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11743:220:10;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6466:233:33;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7493:433:10;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3483:528:33;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11169:176:10;11243:21;11295:13;:11;:13::i;:::-;11280:28;;11318:20;11325:12;11318:6;:20::i;:::-;11169:176;:::o;6666:382::-;6793:6;6822:219;6842:6;6862;6941:10;6973:26;6992:6;6973:18;:26::i;:::-;6909:108;;;;;;;;;:::i;:::-;;;;;;;;;;;;;6882:149;;;;;;6822:6;:219::i;:::-;6815:226;;6666:382;;;;;:::o;5195:396::-;5305:7;5344:1;5335:6;:10;5328:18;;;;:::i;:::-;;5356:15;5374:20;;5356:38;;5422:7;5413:6;:16;5412:162;;5517:57;5534:6;5542:12;:21;5555:7;5542:21;;;;;;;;;;;:31;;;5517:16;:57::i;:::-;5412:162;;;5445:7;5412:162;5404:180;;;5195:396;;;:::o;466:54::-;;;;;;;;;;;;:::o;4584:355::-;4694:7;4763:1;4726:39;;:12;:20;4739:6;4726:20;;;;;;;;;;;:25;;;;;;;;;;;;:39;;;;4725:197;;4876:46;4893:6;4901:20;;4876:16;:46::i;:::-;4725:197;;;4781:12;:20;4794:6;4781:20;;;;;;;;;;;:30;;;4725:197;4717:215;;4584:355;;;:::o;12264:362::-;12414:1;12370:46;;12378:23;;;;;;;;;;12370:46;;;12362:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;12559:9;12531:78;;;;;;;;;;;;:::i;:::-;12468:23;;:151;;;;;;;;;;;;;;;;;;12264:362;:::o;341:42:8:-;;;:::o;4969:1228:33:-;5057:18;5118:12;5095:20;;:35;5091:944;;;5159:18;;5146:31;;5229:10;5216:9;:23;;5191:118;;;;;;;;;;;;:::i;:::-;;;;;;;;;5374:13;5393:23;;5390:26;;;;;:::i;:::-;;;;;;;5374:42;;5430:27;5460:12;:26;5473:12;5460:26;;;;;;;;;;;5430:56;;5513:10;5500:5;:10;;;:23;;;;;;;;;;;;;;;;;;5559:8;5537:5;:19;;:30;;;;5628:18;5649:20;;5628:41;;5701:10;5683:5;:15;;:28;;;;5762:12;5725;:24;5738:10;5725:24;;;;;;;;;;;:34;;:49;;;;5811:12;5788:20;:35;;;;5926:10;5898;5870:154;;;5954:8;5980:23;;;;;;;;;;:28;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5870:154;;;;;;;:::i;:::-;;;;;;;;5132:903;;;5091:944;6103:9;6090:10;:22;6086:105;;;6136:10;6128:28;;:52;6169:10;6157:9;:22;;;;:::i;:::-;6128:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6086:105;4969:1228;:::o;310:45:34:-;;;:::o;526:44:10:-;;;;:::o;4187:316:33:-;4287:4;4307:27;4337:12;:20;4350:6;4337:20;;;;;;;;;;;4307:50;;4411:1;4388:5;:19;;;:24;;:98;;;;;4458:28;;;;;;;;;;;4449:37;;:6;:37;;;;:::i;:::-;4433:12;:53;;4388:98;4367:129;;;4187:316;;;:::o;522:134:34:-;577:4;635;618:21;;626:4;618:21;;;;597:52;;522:134;:::o;2290:442:33:-;2409:13;2436:11;2461:18;2493;2536:27;2566:12;:20;2579:6;2566:20;;;;;;;;;;;2536:50;;2602:5;:19;;;2596:25;;2639:5;:10;;;;;;;;;;;;2631:18;;2672:5;:15;;;2659:28;;2710:5;:15;;;2697:28;;2526:206;2290:442;;;;;:::o;1454:156::-;1555:7;1585:18;;1578:25;;1454:156;;;:::o;11743:220:10:-;11843:21;11895:31;11920:5;11895:24;:31::i;:::-;11880:46;;11936:20;11943:12;11936:6;:20::i;:::-;11743:220;;;:::o;6466:233:33:-;6569:7;6608:1;6596:9;:13;6592:83;;;6633:10;6625:28;;:39;6654:9;6625:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6592:83;6691:1;6684:8;;6466:233;;;:::o;7493:433:10:-;7617:6;7639:15;7669:22;7684:6;7669:14;:22::i;:::-;7663:3;:28;;;;:::i;:::-;7639:53;;7702:15;7861:1;7849:9;7844:1;:14;;;;:::i;:::-;:18;;;;:::i;:::-;7787:5;7794:6;7776:25;;;;;;;;;:::i;:::-;;;;;;;;;;;;;7745:74;;;;;;7720:113;;:143;7702:161;;7909:9;7887:31;;7898:6;7888:16;;:7;:16;;;;:::i;:::-;7887:31;;7873:46;;;;7493:433;;;;;:::o;3483:528:33:-;3589:7;3653:1;3616:39;;:12;:20;3629:6;3616:20;;;;;;;;;;;:25;;;;;;;;;;;;:39;;;3612:109;;;3680:30;3703:6;3680:22;:30::i;:::-;3671:39;;3612:109;3730:16;3749:12;:20;3762:6;3749:20;;;;;;;;;;;:34;;;3730:53;;3813:1;3801:8;:13;;3793:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;3898:28;;;;;;;;;;;3889:37;;:6;:37;;;;:::i;:::-;3873:12;:53;;3865:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;3997:6;3987:17;3980:24;;;3483:528;;;:::o;1102:870:34:-;1159:18;1193:13;1209:4;1193:20;;1295:4;1289:11;1383:66;1378:3;1371:79;1562:5;1556:4;1552:16;1545:4;1540:3;1536:14;1529:40;1661:66;1654:4;1649:3;1645:14;1638:90;1805:4;1800:3;1797:1;1790:20;1777:33;;1232:588;1875:1;1845:32;;1853:9;1845:32;;;;1837:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1955:9;1920:45;;1948:4;1920:45;;1927:10;1920:45;;;;;;;;;;;;1183:789;1102:870;:::o;12954:230:10:-;13009:16;13036:23;;;;;;;;;;;:29;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13009:59;;13086:8;13078:35;;;13114:10;13078:47;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13135:9;:20;;;13167:8;13156:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;13135:42;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12999:185;12954:230;:::o;14475:241::-;14558:7;14596;14586;:17;14585:114;;14641:58;14658:7;14667:12;:21;14680:7;14667:21;;;;;;;;;;;:31;;;14641:16;:58::i;:::-;14585:114;;;14619:7;14585:114;14577:132;;14475:241;;;;:::o;14022:267::-;14105:7;14144;14133;:18;;14132:140;;14214:58;14231:7;14240:12;:21;14253:7;14240:21;;;;;;;;;;;:31;;;14214:16;:58::i;:::-;14132:140;;;14168:12;:21;14181:7;14168:21;;;;;;;;;;;:31;;;14132:140;14124:158;;14022:267;;;;:::o;2520:840:34:-;2603:18;2637:13;2653:4;2637:20;;2739:4;2733:11;2769:66;2764:3;2757:79;2948:5;2942:4;2938:16;2931:4;2926:3;2922:14;2915:40;3047:66;3040:4;3035:3;3031:14;3024:90;3199:5;3193:4;3188:3;3185:1;3177:28;3164:41;;2676:539;3262:1;3232:32;;3240:9;3232:32;;;;3224:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;3343:9;3308:45;;3336:4;3308:45;;3315:10;3308:45;;;;;;;;;;;;2627:733;2520:840;;;:::o;13301:537:10:-;13375:5;13396:29;:228;;;;;;;;13446:1;13396:228;;;;;;13449:1;13396:228;;;;;;13452:1;13396:228;;;;;;13455:2;13396:228;;;;;;13459:2;13396:228;;;;;;13463:2;13396:228;;;;;;13467:1;13396:228;;;;;;13470:2;13396:228;;;;;;13490:2;13396:228;;;;;;13494:2;13396:228;;;;;;13498:2;13396:228;;;;;;13502:2;13396:228;;;;;;13506:2;13396:228;;;;;;13510:2;13396:228;;;;;;13514:1;13396:228;;;;;;13517:2;13396:228;;;;;;13537:1;13396:228;;;;;;13540:2;13396:228;;;;;;13544:2;13396:228;;;;;;13548:2;13396:228;;;;;;13552:2;13396:228;;;;;;13556:2;13396:228;;;;;;13560:2;13396:228;;;;;;13564:1;13396:228;;;;;;13583:2;13396:228;;;;;;13587:2;13396:228;;;;;;13591:2;13396:228;;;;;;13595:1;13396:228;;;;;;13598:2;13396:228;;;;;;13602:1;13396:228;;;;;;13605:1;13396:228;;;;;;13608:2;13396:228;;;;;;;13646:1;13640:2;:7;;;;13634:13;;;;13669:1;13663:2;:7;;;;13657:13;;;;13692:1;13686:2;:7;;;;13680:13;;;;13715:1;13709:2;:7;;;;13703:13;;;;13738:2;13732;:8;;;;13726:14;;;;13757:12;13819:2;13803:10;13790:2;:24;;;;;;:::i;:::-;13783:38;;;;13757:74;;;;;;;;;:::i;:::-;;;;;;13750:81;;;13301:537;;;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;423:159::-;488:5;519:6;513:13;504:22;;535:41;570:5;535:41;:::i;:::-;423:159;;;;:::o;588:139::-;634:5;672:6;659:20;650:29;;688:33;715:5;688:33;:::i;:::-;588:139;;;;:::o;733:143::-;790:5;821:6;815:13;806:22;;837:33;864:5;837:33;:::i;:::-;733:143;;;;:::o;895:338::-;950:5;999:3;992:4;984:6;980:17;976:27;966:122;;1007:79;;:::i;:::-;966:122;1124:6;1111:20;1149:78;1223:3;1215:6;1208:4;1200:6;1196:17;1149:78;:::i;:::-;1140:87;;956:277;895:338;;;;:::o;1239:177::-;1313:5;1344:6;1338:13;1329:22;;1360:50;1404:5;1360:50;:::i;:::-;1239:177;;;;:::o;1422:139::-;1468:5;1506:6;1493:20;1484:29;;1522:33;1549:5;1522:33;:::i;:::-;1422:139;;;;:::o;1567:137::-;1612:5;1650:6;1637:20;1628:29;;1666:32;1692:5;1666:32;:::i;:::-;1567:137;;;;:::o;1710:367::-;1788:6;1837:2;1825:9;1816:7;1812:23;1808:32;1805:119;;;1843:79;;:::i;:::-;1805:119;1963:1;1988:72;2052:7;2043:6;2032:9;2028:22;1988:72;:::i;:::-;1978:82;;1934:136;1710:367;;;;:::o;2083:329::-;2142:6;2191:2;2179:9;2170:7;2166:23;2162:32;2159:119;;;2197:79;;:::i;:::-;2159:119;2317:1;2342:53;2387:7;2378:6;2367:9;2363:22;2342:53;:::i;:::-;2332:63;;2288:117;2083:329;;;;:::o;2418:351::-;2488:6;2537:2;2525:9;2516:7;2512:23;2508:32;2505:119;;;2543:79;;:::i;:::-;2505:119;2663:1;2688:64;2744:7;2735:6;2724:9;2720:22;2688:64;:::i;:::-;2678:74;;2634:128;2418:351;;;;:::o;2775:507::-;2843:6;2892:2;2880:9;2871:7;2867:23;2863:32;2860:119;;;2898:79;;:::i;:::-;2860:119;3046:1;3035:9;3031:17;3018:31;3076:18;3068:6;3065:30;3062:117;;;3098:79;;:::i;:::-;3062:117;3203:62;3257:7;3248:6;3237:9;3233:22;3203:62;:::i;:::-;3193:72;;2989:286;2775:507;;;;:::o;3288:385::-;3375:6;3424:2;3412:9;3403:7;3399:23;3395:32;3392:119;;;3430:79;;:::i;:::-;3392:119;3550:1;3575:81;3648:7;3639:6;3628:9;3624:22;3575:81;:::i;:::-;3565:91;;3521:145;3288:385;;;;:::o;3679:329::-;3738:6;3787:2;3775:9;3766:7;3762:23;3758:32;3755:119;;;3793:79;;:::i;:::-;3755:119;3913:1;3938:53;3983:7;3974:6;3963:9;3959:22;3938:53;:::i;:::-;3928:63;;3884:117;3679:329;;;;:::o;4014:617::-;4090:6;4098;4106;4155:2;4143:9;4134:7;4130:23;4126:32;4123:119;;;4161:79;;:::i;:::-;4123:119;4281:1;4306:52;4350:7;4341:6;4330:9;4326:22;4306:52;:::i;:::-;4296:62;;4252:116;4407:2;4433:53;4478:7;4469:6;4458:9;4454:22;4433:53;:::i;:::-;4423:63;;4378:118;4535:2;4561:53;4606:7;4597:6;4586:9;4582:22;4561:53;:::i;:::-;4551:63;;4506:118;4014:617;;;;;:::o;4637:::-;4713:6;4721;4729;4778:2;4766:9;4757:7;4753:23;4749:32;4746:119;;;4784:79;;:::i;:::-;4746:119;4904:1;4929:52;4973:7;4964:6;4953:9;4949:22;4929:52;:::i;:::-;4919:62;;4875:116;5030:2;5056:53;5101:7;5092:6;5081:9;5077:22;5056:53;:::i;:::-;5046:63;;5001:118;5158:2;5184:53;5229:7;5220:6;5209:9;5205:22;5184:53;:::i;:::-;5174:63;;5129:118;4637:617;;;;;:::o;5260:118::-;5347:24;5365:5;5347:24;:::i;:::-;5342:3;5335:37;5260:118;;:::o;5384:109::-;5465:21;5480:5;5465:21;:::i;:::-;5460:3;5453:34;5384:109;;:::o;5499:118::-;5586:24;5604:5;5586:24;:::i;:::-;5581:3;5574:37;5499:118;;:::o;5623:360::-;5709:3;5737:38;5769:5;5737:38;:::i;:::-;5791:70;5854:6;5849:3;5791:70;:::i;:::-;5784:77;;5870:52;5915:6;5910:3;5903:4;5896:5;5892:16;5870:52;:::i;:::-;5947:29;5969:6;5947:29;:::i;:::-;5942:3;5938:39;5931:46;;5713:270;5623:360;;;;:::o;5989:165::-;6093:54;6141:5;6093:54;:::i;:::-;6088:3;6081:67;5989:165;;:::o;6160:199::-;6281:71;6346:5;6281:71;:::i;:::-;6276:3;6269:84;6160:199;;:::o;6365:195::-;6484:69;6547:5;6484:69;:::i;:::-;6479:3;6472:82;6365:195;;:::o;6566:366::-;6708:3;6729:67;6793:2;6788:3;6729:67;:::i;:::-;6722:74;;6805:93;6894:3;6805:93;:::i;:::-;6923:2;6918:3;6914:12;6907:19;;6566:366;;;:::o;6938:::-;7080:3;7101:67;7165:2;7160:3;7101:67;:::i;:::-;7094:74;;7177:93;7266:3;7177:93;:::i;:::-;7295:2;7290:3;7286:12;7279:19;;6938:366;;;:::o;7310:::-;7452:3;7473:67;7537:2;7532:3;7473:67;:::i;:::-;7466:74;;7549:93;7638:3;7549:93;:::i;:::-;7667:2;7662:3;7658:12;7651:19;;7310:366;;;:::o;7682:::-;7824:3;7845:67;7909:2;7904:3;7845:67;:::i;:::-;7838:74;;7921:93;8010:3;7921:93;:::i;:::-;8039:2;8034:3;8030:12;8023:19;;7682:366;;;:::o;8054:::-;8196:3;8217:67;8281:2;8276:3;8217:67;:::i;:::-;8210:74;;8293:93;8382:3;8293:93;:::i;:::-;8411:2;8406:3;8402:12;8395:19;;8054:366;;;:::o;8426:::-;8568:3;8589:67;8653:2;8648:3;8589:67;:::i;:::-;8582:74;;8665:93;8754:3;8665:93;:::i;:::-;8783:2;8778:3;8774:12;8767:19;;8426:366;;;:::o;8798:118::-;8885:24;8903:5;8885:24;:::i;:::-;8880:3;8873:37;8798:118;;:::o;8922:115::-;9007:23;9024:5;9007:23;:::i;:::-;9002:3;8995:36;8922:115;;:::o;9043:222::-;9136:4;9174:2;9163:9;9159:18;9151:26;;9187:71;9255:1;9244:9;9240:17;9231:6;9187:71;:::i;:::-;9043:222;;;;:::o;9271:332::-;9392:4;9430:2;9419:9;9415:18;9407:26;;9443:71;9511:1;9500:9;9496:17;9487:6;9443:71;:::i;:::-;9524:72;9592:2;9581:9;9577:18;9568:6;9524:72;:::i;:::-;9271:332;;;;;:::o;9609:553::-;9786:4;9824:3;9813:9;9809:19;9801:27;;9838:71;9906:1;9895:9;9891:17;9882:6;9838:71;:::i;:::-;9919:72;9987:2;9976:9;9972:18;9963:6;9919:72;:::i;:::-;10001;10069:2;10058:9;10054:18;10045:6;10001:72;:::i;:::-;10083;10151:2;10140:9;10136:18;10127:6;10083:72;:::i;:::-;9609:553;;;;;;;:::o;10168:210::-;10255:4;10293:2;10282:9;10278:18;10270:26;;10306:65;10368:1;10357:9;10353:17;10344:6;10306:65;:::i;:::-;10168:210;;;;:::o;10384:222::-;10477:4;10515:2;10504:9;10500:18;10492:26;;10528:71;10596:1;10585:9;10581:17;10572:6;10528:71;:::i;:::-;10384:222;;;;:::o;10612:332::-;10733:4;10771:2;10760:9;10756:18;10748:26;;10784:71;10852:1;10841:9;10837:17;10828:6;10784:71;:::i;:::-;10865:72;10933:2;10922:9;10918:18;10909:6;10865:72;:::i;:::-;10612:332;;;;;:::o;10950:309::-;11061:4;11099:2;11088:9;11084:18;11076:26;;11148:9;11142:4;11138:20;11134:1;11123:9;11119:17;11112:47;11176:76;11247:4;11238:6;11176:76;:::i;:::-;11168:84;;10950:309;;;;:::o;11265:256::-;11375:4;11413:2;11402:9;11398:18;11390:26;;11426:88;11511:1;11500:9;11496:17;11487:6;11426:88;:::i;:::-;11265:256;;;;:::o;11527:290::-;11654:4;11692:2;11681:9;11677:18;11669:26;;11705:105;11807:1;11796:9;11792:17;11783:6;11705:105;:::i;:::-;11527:290;;;;:::o;11823:286::-;11948:4;11986:2;11975:9;11971:18;11963:26;;11999:103;12099:1;12088:9;12084:17;12075:6;11999:103;:::i;:::-;11823:286;;;;:::o;12115:419::-;12281:4;12319:2;12308:9;12304:18;12296:26;;12368:9;12362:4;12358:20;12354:1;12343:9;12339:17;12332:47;12396:131;12522:4;12396:131;:::i;:::-;12388:139;;12115:419;;;:::o;12540:::-;12706:4;12744:2;12733:9;12729:18;12721:26;;12793:9;12787:4;12783:20;12779:1;12768:9;12764:17;12757:47;12821:131;12947:4;12821:131;:::i;:::-;12813:139;;12540:419;;;:::o;12965:::-;13131:4;13169:2;13158:9;13154:18;13146:26;;13218:9;13212:4;13208:20;13204:1;13193:9;13189:17;13182:47;13246:131;13372:4;13246:131;:::i;:::-;13238:139;;12965:419;;;:::o;13390:::-;13556:4;13594:2;13583:9;13579:18;13571:26;;13643:9;13637:4;13633:20;13629:1;13618:9;13614:17;13607:47;13671:131;13797:4;13671:131;:::i;:::-;13663:139;;13390:419;;;:::o;13815:::-;13981:4;14019:2;14008:9;14004:18;13996:26;;14068:9;14062:4;14058:20;14054:1;14043:9;14039:17;14032:47;14096:131;14222:4;14096:131;:::i;:::-;14088:139;;13815:419;;;:::o;14240:::-;14406:4;14444:2;14433:9;14429:18;14421:26;;14493:9;14487:4;14483:20;14479:1;14468:9;14464:17;14457:47;14521:131;14647:4;14521:131;:::i;:::-;14513:139;;14240:419;;;:::o;14665:222::-;14758:4;14796:2;14785:9;14781:18;14773:26;;14809:71;14877:1;14866:9;14862:17;14853:6;14809:71;:::i;:::-;14665:222;;;;:::o;14893:332::-;15014:4;15052:2;15041:9;15037:18;15029:26;;15065:71;15133:1;15122:9;15118:17;15109:6;15065:71;:::i;:::-;15146:72;15214:2;15203:9;15199:18;15190:6;15146:72;:::i;:::-;14893:332;;;;;:::o;15231:218::-;15322:4;15360:2;15349:9;15345:18;15337:26;;15373:69;15439:1;15428:9;15424:17;15415:6;15373:69;:::i;:::-;15231:218;;;;:::o;15455:129::-;15489:6;15516:20;;:::i;:::-;15506:30;;15545:33;15573:4;15565:6;15545:33;:::i;:::-;15455:129;;;:::o;15590:75::-;15623:6;15656:2;15650:9;15640:19;;15590:75;:::o;15671:307::-;15732:4;15822:18;15814:6;15811:30;15808:56;;;15844:18;;:::i;:::-;15808:56;15882:29;15904:6;15882:29;:::i;:::-;15874:37;;15966:4;15960;15956:15;15948:23;;15671:307;;;:::o;15984:98::-;16035:6;16069:5;16063:12;16053:22;;15984:98;;;:::o;16088:168::-;16171:11;16205:6;16200:3;16193:19;16245:4;16240:3;16236:14;16221:29;;16088:168;;;;:::o;16262:169::-;16346:11;16380:6;16375:3;16368:19;16420:4;16415:3;16411:14;16396:29;;16262:169;;;;:::o;16437:305::-;16477:3;16496:20;16514:1;16496:20;:::i;:::-;16491:25;;16530:20;16548:1;16530:20;:::i;:::-;16525:25;;16684:1;16616:66;16612:74;16609:1;16606:81;16603:107;;;16690:18;;:::i;:::-;16603:107;16734:1;16731;16727:9;16720:16;;16437:305;;;;:::o;16748:848::-;16809:5;16816:4;16840:6;16831:15;;16864:5;16855:14;;16878:712;16899:1;16889:8;16886:15;16878:712;;;16994:4;16989:3;16985:14;16979:4;16976:24;16973:50;;;17003:18;;:::i;:::-;16973:50;17053:1;17043:8;17039:16;17036:451;;;17468:4;17461:5;17457:16;17448:25;;17036:451;17518:4;17512;17508:15;17500:23;;17548:32;17571:8;17548:32;:::i;:::-;17536:44;;16878:712;;;16748:848;;;;;;;:::o;17602:281::-;17660:5;17684:23;17702:4;17684:23;:::i;:::-;17676:31;;17728:25;17744:8;17728:25;:::i;:::-;17716:37;;17772:104;17809:66;17799:8;17793:4;17772:104;:::i;:::-;17763:113;;17602:281;;;;:::o;17889:1073::-;17943:5;18134:8;18124:40;;18155:1;18146:10;;18157:5;;18124:40;18183:4;18173:36;;18200:1;18191:10;;18202:5;;18173:36;18269:4;18317:1;18312:27;;;;18353:1;18348:191;;;;18262:277;;18312:27;18330:1;18321:10;;18332:5;;;18348:191;18393:3;18383:8;18380:17;18377:43;;;18400:18;;:::i;:::-;18377:43;18449:8;18446:1;18442:16;18433:25;;18484:3;18477:5;18474:14;18471:40;;;18491:18;;:::i;:::-;18471:40;18524:5;;;18262:277;;18648:2;18638:8;18635:16;18629:3;18623:4;18620:13;18616:36;18598:2;18588:8;18585:16;18580:2;18574:4;18571:12;18567:35;18551:111;18548:246;;;18704:8;18698:4;18694:19;18685:28;;18739:3;18732:5;18729:14;18726:40;;;18746:18;;:::i;:::-;18726:40;18779:5;;18548:246;18819:42;18857:3;18847:8;18841:4;18838:1;18819:42;:::i;:::-;18804:57;;;;18893:4;18888:3;18884:14;18877:5;18874:25;18871:51;;;18902:18;;:::i;:::-;18871:51;18951:4;18944:5;18940:16;18931:25;;17889:1073;;;;;;:::o;18968:348::-;19008:7;19031:20;19049:1;19031:20;:::i;:::-;19026:25;;19065:20;19083:1;19065:20;:::i;:::-;19060:25;;19253:1;19185:66;19181:74;19178:1;19175:81;19170:1;19163:9;19156:17;19152:105;19149:131;;;19260:18;;:::i;:::-;19149:131;19308:1;19305;19301:9;19290:20;;18968:348;;;;:::o;19322:191::-;19362:4;19382:20;19400:1;19382:20;:::i;:::-;19377:25;;19416:20;19434:1;19416:20;:::i;:::-;19411:25;;19455:1;19452;19449:8;19446:34;;;19460:18;;:::i;:::-;19446:34;19505:1;19502;19498:9;19490:17;;19322:191;;;;:::o;19519:185::-;19557:4;19577:18;19593:1;19577:18;:::i;:::-;19572:23;;19609:18;19625:1;19609:18;:::i;:::-;19604:23;;19646:1;19643;19640:8;19637:34;;;19651:18;;:::i;:::-;19637:34;19696:1;19693;19689:9;19681:17;;19519:185;;;;:::o;19710:96::-;19747:7;19776:24;19794:5;19776:24;:::i;:::-;19765:35;;19710:96;;;:::o;19812:104::-;19857:7;19886:24;19904:5;19886:24;:::i;:::-;19875:35;;19812:104;;;:::o;19922:90::-;19956:7;19999:5;19992:13;19985:21;19974:32;;19922:90;;;:::o;20018:77::-;20055:7;20084:5;20073:16;;20018:77;;;:::o;20101:113::-;20155:7;20184:24;20202:5;20184:24;:::i;:::-;20173:35;;20101:113;;;:::o;20220:126::-;20257:7;20297:42;20290:5;20286:54;20275:65;;20220:126;;;:::o;20352:77::-;20389:7;20418:5;20407:16;;20352:77;;;:::o;20435:93::-;20471:7;20511:10;20504:5;20500:22;20489:33;;20435:93;;;:::o;20534:86::-;20569:7;20609:4;20602:5;20598:16;20587:27;;20534:86;;;:::o;20626:143::-;20693:9;20726:37;20757:5;20726:37;:::i;:::-;20713:50;;20626:143;;;:::o;20775:168::-;20859:9;20892:45;20931:5;20892:45;:::i;:::-;20879:58;;20775:168;;;:::o;20949:158::-;21031:9;21064:37;21095:5;21064:37;:::i;:::-;21051:50;;20949:158;;;:::o;21113:126::-;21163:9;21196:37;21227:5;21196:37;:::i;:::-;21183:50;;21113:126;;;:::o;21245:134::-;21303:9;21336:37;21367:5;21336:37;:::i;:::-;21323:50;;21245:134;;;:::o;21385:113::-;21435:9;21468:24;21486:5;21468:24;:::i;:::-;21455:37;;21385:113;;;:::o;21504:154::-;21588:6;21583:3;21578;21565:30;21650:1;21641:6;21636:3;21632:16;21625:27;21504:154;;;:::o;21664:307::-;21732:1;21742:113;21756:6;21753:1;21750:13;21742:113;;;21841:1;21836:3;21832:11;21826:18;21822:1;21817:3;21813:11;21806:39;21778:2;21775:1;21771:10;21766:15;;21742:113;;;21873:6;21870:1;21867:13;21864:101;;;21953:1;21944:6;21939:3;21935:16;21928:27;21864:101;21713:258;21664:307;;;:::o;21977:281::-;22060:27;22082:4;22060:27;:::i;:::-;22052:6;22048:40;22190:6;22178:10;22175:22;22154:18;22142:10;22139:34;22136:62;22133:88;;;22201:18;;:::i;:::-;22133:88;22241:10;22237:2;22230:22;22020:238;21977:281;;:::o;22264:233::-;22303:3;22326:24;22344:5;22326:24;:::i;:::-;22317:33;;22372:66;22365:5;22362:77;22359:103;;;22442:18;;:::i;:::-;22359:103;22489:1;22482:5;22478:13;22471:20;;22264:233;;;:::o;22503:180::-;22551:77;22548:1;22541:88;22648:4;22645:1;22638:15;22672:4;22669:1;22662:15;22689:180;22737:77;22734:1;22727:88;22834:4;22831:1;22824:15;22858:4;22855:1;22848:15;22875:180;22923:77;22920:1;22913:88;23020:4;23017:1;23010:15;23044:4;23041:1;23034:15;23061:180;23109:77;23106:1;23099:88;23206:4;23203:1;23196:15;23230:4;23227:1;23220:15;23247:117;23356:1;23353;23346:12;23370:117;23479:1;23476;23469:12;23493:117;23602:1;23599;23592:12;23616:117;23725:1;23722;23715:12;23739:102;23780:6;23831:2;23827:7;23822:2;23815:5;23811:14;23807:28;23797:38;;23739:102;;;:::o;23847:::-;23889:8;23936:5;23933:1;23929:13;23908:34;;23847:102;;;:::o;23955:224::-;24095:34;24091:1;24083:6;24079:14;24072:58;24164:7;24159:2;24151:6;24147:15;24140:32;23955:224;:::o;24185:226::-;24325:34;24321:1;24313:6;24309:14;24302:58;24394:9;24389:2;24381:6;24377:15;24370:34;24185:226;:::o;24417:174::-;24557:26;24553:1;24545:6;24541:14;24534:50;24417:174;:::o;24597:223::-;24737:34;24733:1;24725:6;24721:14;24714:58;24806:6;24801:2;24793:6;24789:15;24782:31;24597:223;:::o;24826:::-;24966:34;24962:1;24954:6;24950:14;24943:58;25035:6;25030:2;25022:6;25018:15;25011:31;24826:223;:::o;25055:173::-;25195:25;25191:1;25183:6;25179:14;25172:49;25055:173;:::o;25234:138::-;25315:32;25341:5;25315:32;:::i;:::-;25308:5;25305:43;25295:71;;25362:1;25359;25352:12;25295:71;25234:138;:::o;25378:122::-;25451:24;25469:5;25451:24;:::i;:::-;25444:5;25441:35;25431:63;;25490:1;25487;25480:12;25431:63;25378:122;:::o;25506:156::-;25596:41;25631:5;25596:41;:::i;:::-;25589:5;25586:52;25576:80;;25652:1;25649;25642:12;25576:80;25506:156;:::o;25668:122::-;25741:24;25759:5;25741:24;:::i;:::-;25734:5;25731:35;25721:63;;25780:1;25777;25770:12;25721:63;25668:122;:::o;25796:120::-;25868:23;25885:5;25868:23;:::i;:::-;25861:5;25858:34;25848:62;;25906:1;25903;25896:12;25848:62;25796:120;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"1777000","executionCost":"infinite","totalCost":"infinite"},"external":{"clone()":"infinite","cloneDeterministic(bytes32)":"infinite","cloned()":"infinite","estimateRandomizeFee(uint256)":"infinite","getRandomizeData(uint256)":"infinite","getRandomnessAfter(uint256)":"infinite","getRandomnessNextBlock(uint256)":"infinite","getRandomnessPrevBlock(uint256)":"infinite","initialize(bytes)":"infinite","isRandomized(uint256)":"infinite","latestRandomizeBlock()":"2452","random(uint32,uint256,bytes32)":"infinite","random(uint32,uint256,uint256)":"infinite","randomize()":"infinite","self()":"infinite","upgradeRandomizeFee(uint256)":"infinite","witnet()":"infinite","witnetRandomnessRequest()":"2687"}},"methodIdentifiers":{"clone()":"09ed4607","cloneDeterministic(bytes32)":"daaa360c","cloned()":"a04daef0","estimateRandomizeFee(uint256)":"a60ee268","getRandomizeData(uint256)":"a3252f68","getRandomnessAfter(uint256)":"fb476cad","getRandomnessNextBlock(uint256)":"40b41daa","getRandomnessPrevBlock(uint256)":"36b651bb","initialize(bytes)":"439fab91","isRandomized(uint256)":"9bc86fec","latestRandomizeBlock()":"9938fd0c","random(uint32,uint256,bytes32)":"e7d4a016","random(uint32,uint256,uint256)":"24cbbfc1","randomize()":"699b328a","self()":"7104ddb2","upgradeRandomizeFee(uint256)":"e35329f8","witnet()":"46d1d21a","witnetRandomnessRequest()":"3b13e76e"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_mockRandomizeLatencyBlocks\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"_mockRandomizeFee\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"self\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"clone\",\"type\":\"address\"}],\"name\":\"Cloned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"prevBlock\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"witnetQueryId\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"witnetRequestHash\",\"type\":\"bytes32\"}],\"name\":\"Randomized\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"clone\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_newInstance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_salt\",\"type\":\"bytes32\"}],\"name\":\"cloneDeterministic\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_newInstance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"estimateRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomizeData\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_id\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_prevBlock\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_nextBlock\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessAfter\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessNextBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"getRandomnessPrevBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_initData\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"isRandomized\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"latestRandomizeBlock\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_block\",\"type\":\"uint256\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint32\",\"name\":\"_range\",\"type\":\"uint32\"},{\"internalType\":\"uint256\",\"name\":\"_nonce\",\"type\":\"uint256\"},{\"internalType\":\"bytes32\",\"name\":\"_seed\",\"type\":\"bytes32\"}],\"name\":\"random\",\"outputs\":[{\"internalType\":\"uint32\",\"name\":\"\",\"type\":\"uint32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"randomize\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"_usedFunds\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"self\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"upgradeRandomizeFee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnet\",\"outputs\":[{\"internalType\":\"contract WitnetRequestBoard\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnetRandomnessRequest\",\"outputs\":[{\"internalType\":\"contract WitnetRequestRandomness\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"Witnet Foundation.\",\"details\":\"TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. ON SUPPORTED TESTNETS, PLEASE USE THE `WitnetRandomness`CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.SEE: https://docs.witnet.io/smart-contracts/witnet-randomness-oracle/contract-addresses\",\"kind\":\"dev\",\"methods\":{\"clone()\":{\"details\":\"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`.\"},\"cloneDeterministic(bytes32)\":{\"details\":\"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address.\"},\"constructor\":{\"params\":{\"_mockRandomizeFee\":\"Mocked randomize fee (will be constant no matter what tx gas price is provided).\",\"_mockRandomizeLatencyBlocks\":\"Mocked number of blocks in which a new randomness will be provided after `randomize()`\"}},\"getRandomizeData(uint256)\":{\"details\":\"Returns zero values if no randomness request was actually posted within a given block.\",\"params\":{\"_block\":\"Block number whose randomness request is being queried for.\"},\"returns\":{\"_from\":\"Address from which the latest randomness request was posted.\",\"_id\":\"Unique request identifier as provided by the WRB.\",\"_nextBlock\":\"Block number in which a randomness request got posted just after this one, 0 if none.\",\"_prevBlock\":\"Block number in which a randomness request got posted just before this one. 0 if none.\"}},\"getRandomnessAfter(uint256)\":{\"details\":\"Please, note that 256 blocks after a `randomize()` request, randomness will be possibly returned as `bytes32(0)` (depending on actual EVM implementation). Fails if:i.   no `randomize()` was not called in either the given block, or afterwards.ii.  a request posted in/after given block does exist, but lest than `__mockRandomizeLatencyBlocks` have elapsed.\",\"params\":{\"_block\":\"Block number from which the search will start.\"}},\"getRandomnessNextBlock(uint256)\":{\"params\":{\"_block\":\"Block number from which the search will start.\"},\"returns\":{\"_0\":\"Number of the first block found after the given one, or `0` otherwise.\"}},\"getRandomnessPrevBlock(uint256)\":{\"params\":{\"_block\":\"Block number from which the search will start. Cannot be zero.\"},\"returns\":{\"_0\":\"First block found before the given one, or `0` otherwise.\"}},\"initialize(bytes)\":{\"details\":\"Initializes contract's storage context.\"},\"random(uint32,uint256,bytes32)\":{\"params\":{\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\",\"_seed\":\"Seed value used as entropy source.\"}},\"random(uint32,uint256,uint256)\":{\"details\":\"Fails under same conditions as `getRandomnessAfter(uint256)` may do.\",\"params\":{\"_block\":\"Block number from which the search will start.\",\"_nonce\":\"Nonce value enabling multiple random numbers from the same randomness value.\",\"_range\":\"Range within which the uniformly-distributed random number will be generated.\"}},\"randomize()\":{\"details\":\"FOR UNITARY TESTING ONLY. DO NOT USE IN PRODUCTION, AS PROVIDED RANDOMNESSWILL NEITHER BE EVM-AGNOSTIC, NOR SECURE.\",\"returns\":{\"_usedFunds\":\"Amount of funds actually used from those provided by the tx sender.\"}},\"upgradeRandomizeFee(uint256)\":{\"details\":\"The whole `msg.value` shall be transferred back to the tx sender.\",\"returns\":{\"_0\":\"_usedFunds Amount of funds actually used from those provided by the tx sender.\"}}},\"title\":\"WitnetRandomness mock contract implementation. \",\"version\":1},\"userdoc\":{\"events\":{\"Randomized(address,uint256,uint256,bytes32)\":{\"notice\":\"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\"}},\"kind\":\"user\",\"methods\":{\"clone()\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage.\"},\"cloneDeterministic(bytes32)\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage.\"},\"cloned()\":{\"notice\":\"Tells whether this contract is a clone of another (i.e. `self()`)\"},\"constructor\":{\"notice\":\"Constructor: new WitnetRandomnessMock contract\"},\"estimateRandomizeFee(uint256)\":{\"notice\":\"Returns mocked amount of wei required to be paid as a fee when requesting new randomization.\"},\"getRandomizeData(uint256)\":{\"notice\":\"Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\"},\"getRandomnessAfter(uint256)\":{\"notice\":\"Mocks randomness generated upon solving a request that was posted within a given block, if more than `__mockRandomizeLatencyBlocks` have elapsed since rquest, or to the _first_ request  posted after that block, otherwise. \"},\"getRandomnessNextBlock(uint256)\":{\"notice\":\"Tells what is the number of the next block in which a randomization request was posted after the given one. \"},\"getRandomnessPrevBlock(uint256)\":{\"notice\":\"Gets previous block in which a randomness request was posted before the given one.\"},\"isRandomized(uint256)\":{\"notice\":\"Mocks `true` only when a randomness request got actually posted within given block, and at least `__mockRandomizeLatencyBlocks` have elapsed since then. \"},\"latestRandomizeBlock()\":{\"notice\":\"Returns latest block in which a randomness request got sucessfully posted to the WRB.\"},\"random(uint32,uint256,bytes32)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the given `_seed` as a source of entropy.\"},\"random(uint32,uint256,uint256)\":{\"notice\":\"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \"},\"randomize()\":{\"notice\":\"Mocks request to generate randomness, using underlying EVM as entropy source. Only one randomness request per block will be actually posted. Unused funds shall  be transfered back to the tx sender.\"},\"self()\":{\"notice\":\"Immutable contract address that actually attends all calls to this contract.\"},\"upgradeRandomizeFee(uint256)\":{\"notice\":\"Mocks by ignoring any fee increase on a pending-to-be-solved randomness request.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol\":\"WitnetRandomnessMock\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/UsingWitnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./WitnetRequestBoard.sol\\\";\\n\\n/// @title The UsingWitnet contract\\n/// @dev Witnet-aware contracts can inherit from this contract in order to interact with Witnet.\\n/// @author The Witnet Foundation.\\nabstract contract UsingWitnet {\\n\\n    WitnetRequestBoard public immutable witnet;\\n\\n    /// Include an address to specify the WitnetRequestBoard entry point address.\\n    /// @param _wrb The WitnetRequestBoard entry point address.\\n    constructor(WitnetRequestBoard _wrb)\\n    {\\n        require(address(_wrb) != address(0), \\\"UsingWitnet: zero address\\\");\\n        witnet = _wrb;\\n    }\\n\\n    /// Provides a convenient way for client contracts extending this to block the execution of the main logic of the\\n    /// contract until a particular request has been successfully solved and reported by Witnet.\\n    modifier witnetRequestSolved(uint256 _id) {\\n        require(\\n                _witnetCheckResultAvailability(_id),\\n                \\\"UsingWitnet: request not solved\\\"\\n            );\\n        _;\\n    }\\n\\n    /// Check if a data request has been solved and reported by Witnet.\\n    /// @dev Contracts depending on Witnet should not start their main business logic (e.g. receiving value from third.\\n    /// parties) before this method returns `true`.\\n    /// @param _id The unique identifier of a previously posted data request.\\n    /// @return A boolean telling if the request has been already resolved or not. Returns `false` also, if the result was deleted.\\n    function _witnetCheckResultAvailability(uint256 _id)\\n        internal view\\n        virtual\\n        returns (bool)\\n    {\\n        return witnet.getQueryStatus(_id) == Witnet.QueryStatus.Reported;\\n    }\\n\\n    /// Estimate the reward amount.\\n    /// @param _gasPrice The gas price for which we want to retrieve the estimation.\\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\\n    function _witnetEstimateReward(uint256 _gasPrice)\\n        internal view\\n        virtual\\n        returns (uint256)\\n    {\\n        return witnet.estimateReward(_gasPrice);\\n    }\\n\\n    /// Estimates the reward amount, considering current transaction gas price.\\n    /// @return The reward to be included when either posting a new request, or upgrading the reward of a previously posted one.\\n    function _witnetEstimateReward()\\n        internal view\\n        virtual\\n        returns (uint256)\\n    {\\n        return witnet.estimateReward(tx.gasprice);\\n    }\\n\\n    /// Send a new request to the Witnet network with transaction value as a reward.\\n    /// @param _request An instance of `IWitnetRequest` contract.\\n    /// @return _id Sequential identifier for the request included in the WitnetRequestBoard.\\n    /// @return _reward Current reward amount escrowed by the WRB until a result gets reported.\\n    function _witnetPostRequest(IWitnetRequest _request)\\n        internal\\n        virtual\\n        returns (uint256 _id, uint256 _reward)\\n    {\\n        _reward = _witnetEstimateReward();\\n        require(\\n            _reward <= msg.value,\\n            \\\"UsingWitnet: reward too low\\\"\\n        );\\n        _id = witnet.postRequest{value: _reward}(_request);\\n    }\\n\\n    /// Upgrade the reward for a previously posted request.\\n    /// @dev Call to `upgradeReward` function in the WitnetRequestBoard contract.\\n    /// @param _id The unique identifier of a request that has been previously sent to the WitnetRequestBoard.\\n    /// @return Amount in which the reward has been increased.\\n    function _witnetUpgradeReward(uint256 _id)\\n        internal\\n        virtual\\n        returns (uint256)\\n    {\\n        uint256 _currentReward = witnet.readRequestReward(_id);        \\n        uint256 _newReward = _witnetEstimateReward();\\n        uint256 _fundsToAdd = 0;\\n        if (_newReward > _currentReward) {\\n            _fundsToAdd = (_newReward - _currentReward);\\n        }\\n        witnet.upgradeReward{value: _fundsToAdd}(_id); // Let Request.gasPrice be updated\\n        return _fundsToAdd;\\n    }\\n\\n    /// Read the Witnet-provided result to a previously posted request.\\n    /// @param _id The unique identifier of a request that was posted to Witnet.\\n    /// @return The result of the request as an instance of `Witnet.Result`.\\n    function _witnetReadResult(uint256 _id)\\n        internal view\\n        virtual\\n        returns (Witnet.Result memory)\\n    {\\n        return witnet.readResponseResult(_id);\\n    }\\n\\n    /// Retrieves copy of all response data related to a previously posted request, removing the whole query from storage.\\n    /// @param _id The unique identifier of a previously posted request.\\n    /// @return The Witnet-provided result to the request.\\n    function _witnetDeleteQuery(uint256 _id)\\n        internal\\n        virtual\\n        returns (Witnet.Response memory)\\n    {\\n        return witnet.deleteQuery(_id);\\n    }\\n\\n}\\n\",\"keccak256\":\"0x197b4fcecea2958249928d85183e3c9e094bff8c2f4dab29ef13361683c576bd\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/WitnetRequestBoard.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"./interfaces/IWitnetRequestBoardEvents.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardReporter.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardRequestor.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestBoardView.sol\\\";\\nimport \\\"./interfaces/IWitnetRequestParser.sol\\\";\\n\\n/// @title Witnet Request Board functionality base contract.\\n/// @author The Witnet Foundation.\\nabstract contract WitnetRequestBoard is\\n    IWitnetRequestBoardEvents,\\n    IWitnetRequestBoardReporter,\\n    IWitnetRequestBoardRequestor,\\n    IWitnetRequestBoardView,\\n    IWitnetRequestParser\\n{\\n    receive() external payable {\\n        revert(\\\"WitnetRequestBoard: no transfers accepted\\\");\\n    }\\n}\\n\",\"keccak256\":\"0xb04deadd6e24568accfcbb7b76f1c03cb925933aee189115b5b23badc5b6e9ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/apps/WitnetRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../UsingWitnet.sol\\\";\\nimport \\\"../interfaces/IWitnetRandomness.sol\\\";\\nimport \\\"../requests/WitnetRequestRandomness.sol\\\";\\n\\n/// @title WitnetRandomness: A trustless randomness generator and registry, based on the Witnet oracle. \\n/// @author Witnet Foundation.\\ncontract WitnetRandomness\\n    is\\n        IWitnetRandomness,\\n        UsingWitnet,\\n        Clonable\\n{\\n    WitnetRequestRandomness public witnetRandomnessRequest;\\n    uint256 public override latestRandomizeBlock;\\n\\n    mapping (uint256 => RandomizeData) internal __randomize_;\\n    struct RandomizeData {\\n        address from;\\n        uint256 prevBlock;\\n        uint256 nextBlock;\\n        uint256 witnetQueryId;\\n    }\\n\\n    /// Include an address to specify the immutable WitnetRequestBoard entrypoint address.\\n    /// @param _wrb The WitnetRequestBoard immutable entrypoint address.\\n    constructor(WitnetRequestBoard _wrb)\\n        UsingWitnet(_wrb)\\n    {\\n        witnetRandomnessRequest = new WitnetRequestRandomness();\\n        witnetRandomnessRequest.transferOwnership(msg.sender);\\n    }\\n\\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \\n    /// transaction gas price as the one given.\\n    function estimateRandomizeFee(uint256 _gasPrice)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return _witnetEstimateReward(_gasPrice);\\n    }\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view\\n        virtual override\\n        returns (\\n            address _from,\\n            uint256 _id,\\n            uint256 _prevBlock,\\n            uint256 _nextBlock\\n        )\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        _id = _data.witnetQueryId;\\n        _from = _data.from;\\n        _prevBlock = _data.prevBlock;\\n        _nextBlock = _data.nextBlock;\\n    }\\n\\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \\n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \\n    /// will recursively try to return randomness from the next non-faulty randomization request found \\n    /// in storage, if any. \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\\n    /// @dev   iii. all requests in/after the given block were solved with errors.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block)\\n        public view\\n        virtual override\\n        returns (bytes32)\\n    {\\n        if (__randomize_[_block].from == address(0)) {\\n            _block = getRandomnessNextBlock(_block);\\n        }\\n        uint256 _queryId = __randomize_[_block].witnetQueryId;\\n        require(_queryId != 0, \\\"WitnetRandomness: not randomized\\\");\\n        require(_witnetCheckResultAvailability(_queryId), \\\"WitnetRandomness: pending randomize\\\");\\n        Witnet.Result memory _witnetResult = _witnetReadResult(_queryId);\\n        if (witnet.isOk(_witnetResult)) {\\n            return witnet.asBytes32(_witnetResult);\\n        } else {\\n            uint256 _nextRandomizeBlock = __randomize_[_block].nextBlock;\\n            require(_nextRandomizeBlock != 0, \\\"WitnetRandomness: faulty randomize\\\");\\n            return getRandomnessAfter(_nextRandomizeBlock);\\n        }\\n    }\\n\\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \\n    /// @param _block Block number from which the search will start.\\n    /// @return Number of the first block found after the given one, or `0` otherwise.\\n    function getRandomnessNextBlock(uint256 _block)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return ((__randomize_[_block].from != address(0))\\n            ? __randomize_[_block].nextBlock\\n            // start search from the latest block\\n            : _searchNextBlock(_block, latestRandomizeBlock)\\n        );\\n    }\\n\\n    /// Gets previous block in which a randomness request was posted before the given one.\\n    /// @param _block Block number from which the search will start. Cannot be zero.\\n    /// @return First block found before the given one, or `0` otherwise.\\n    function getRandomnessPrevBlock(uint256 _block)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        assert(_block > 0);\\n        uint256 _latest = latestRandomizeBlock;\\n        return ((_block > _latest)\\n            ? _latest\\n            // start search from the latest block\\n            : _searchPrevBlock(_block, __randomize_[_latest].prevBlock)\\n        );\\n    }\\n\\n    /// Returns `true` only when the randomness request that got posted within given block was already\\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\\n    function isRandomized(uint256 _block)\\n        public view\\n        virtual override\\n        returns (bool)\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        return (\\n            _data.witnetQueryId != 0 \\n                && _witnetCheckResultAvailability(_data.witnetQueryId)\\n        );\\n    }\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \\n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _block Block number from which the search will start.\\n    function random(uint32 _range, uint256 _nonce, uint256 _block)\\n        external view\\n        virtual override\\n        returns (uint32)\\n    {\\n        return random(\\n            _range,\\n            _nonce,\\n            keccak256(\\n                abi.encode(\\n                    msg.sender,\\n                    getRandomnessAfter(_block)\\n                )\\n            )\\n        );\\n    }\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _seed Seed value used as entropy source.\\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed)\\n        public pure\\n        virtual override\\n        returns (uint32)\\n    {\\n        uint8 _flagBits = uint8(255 - _msbDeBruijn32(_range));\\n        uint256 _number = uint256(\\n                keccak256(\\n                    abi.encode(_seed, _nonce)\\n                )\\n            ) & uint256(2 ** _flagBits - 1);\\n        return uint32((_number * _range) >> _flagBits);\\n    }\\n\\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \\n    /// Only one randomness request per block will be actually posted to the WRB. Should there \\n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \\n    /// block randomness request according to current gas price. In both cases, all unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize()\\n        external payable\\n        virtual override\\n        returns (uint256 _usedFunds)\\n    {\\n        if (latestRandomizeBlock < block.number) {\\n            // Post the Witnet Randomness request:\\n            uint _queryId;\\n            (_queryId, _usedFunds) = _witnetPostRequest(witnetRandomnessRequest);\\n            // Keep Randomize data in storage:\\n            RandomizeData storage _data = __randomize_[block.number];\\n            _data.witnetQueryId = _queryId;\\n            _data.from = msg.sender;\\n            // Update block links:\\n            uint256 _prevBlock = latestRandomizeBlock;\\n            _data.prevBlock = _prevBlock;\\n            __randomize_[_prevBlock].nextBlock = block.number;\\n            latestRandomizeBlock = block.number;\\n            // Throw event:\\n            emit Randomized(\\n                msg.sender,\\n                _prevBlock,\\n                _queryId,\\n                witnetRandomnessRequest.hash()\\n            );\\n            // Transfer back unused tx value:\\n            if (_usedFunds < msg.value) {\\n                payable(msg.sender).transfer(msg.value - _usedFunds);\\n            }\\n        } else {\\n            return upgradeRandomizeFee(block.number);\\n        }\\n    }\\n\\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \\n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \\n    /// request was posted. All unused funds shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256 _block)\\n        public payable\\n        virtual override\\n        returns (uint256 _usedFunds)\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        if (_data.witnetQueryId != 0) {\\n            _usedFunds = _witnetUpgradeReward(_data.witnetQueryId);\\n        }\\n        if (_usedFunds < msg.value) {\\n            payable(msg.sender).transfer(msg.value - _usedFunds);\\n        }\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    function clone()\\n        public\\n        virtual override\\n        returns (Clonable _newInstance)\\n    {\\n        _newInstance = super.clone();\\n        _clone(_newInstance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    function cloneDeterministic(bytes32 _salt)\\n        public\\n        virtual override\\n        returns (Clonable _newInstance)\\n    {\\n        _newInstance = super.cloneDeterministic(_salt);\\n        _clone(_newInstance);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\\n\\n    /// @dev Initializes contract's storage context.\\n    function initialize(bytes memory _initData)\\n        public\\n        virtual override\\n    {\\n        require(address(witnetRandomnessRequest) == address(0), \\\"WitnetRandomness: already initialized\\\");\\n        witnetRandomnessRequest = WitnetRequestRandomness(\\n            abi.decode(\\n                _initData,\\n                (address)\\n            )\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------\\n\\n    /// @dev Common steps for both deterministic and non-deterministic cloning.\\n    function _clone(Clonable _instance) internal {\\n        address _request = address(witnetRandomnessRequest.clone());\\n        Ownable(_request).transferOwnership(msg.sender);\\n        _instance.initialize(abi.encode(_request));\\n    }\\n\\n    /// @dev Returns index of the Most Significant Bit of the given number, applying De Bruijn O(1) algorithm.\\n    function _msbDeBruijn32(uint32 _v)\\n        internal pure\\n        returns (uint8)\\n    {\\n        uint8[32] memory _bitPosition = [\\n                0, 9, 1, 10, 13, 21, 2, 29,\\n                11, 14, 16, 18, 22, 25, 3, 30,\\n                8, 12, 20, 28, 15, 17, 24, 7,\\n                19, 27, 23, 6, 26, 5, 4, 31\\n            ];\\n        _v |= _v >> 1;\\n        _v |= _v >> 2;\\n        _v |= _v >> 4;\\n        _v |= _v >> 8;\\n        _v |= _v >> 16;\\n        return _bitPosition[\\n            uint32(_v * uint256(0x07c4acdd)) >> 27\\n        ];\\n    }\\n\\n    /// @dev Recursively searches for the number of the first block after the given one in which a Witnet randomization request was posted.\\n    /// @dev Returns 0 if none found.\\n    function _searchNextBlock(uint256 _target, uint256 _latest) internal view returns (uint256) {\\n        return ((_target >= _latest) \\n            ? __randomize_[_latest].nextBlock\\n            : _searchNextBlock(_target, __randomize_[_latest].prevBlock)\\n        );\\n    }\\n\\n    /// @dev Recursively searches for the number of the first block before the given one in which a Witnet randomization request was posted.\\n    /// @dev Returns 0 if none found.\\n\\n    function _searchPrevBlock(uint256 _target, uint256 _latest) internal view returns (uint256) {\\n        return ((_target > _latest)\\n            ? _latest\\n            : _searchPrevBlock(_target, __randomize_[_latest].prevBlock)\\n        );\\n    }\\n}\\n\",\"keccak256\":\"0x04a32e324f78f56c2c5d5f85fc813ece2e37cd37f773c4cdd3de7cad22512fab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet Randomness generator interface.\\n/// @author Witnet Foundation.\\ninterface IWitnetRandomness {\\n\\n    /// Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard.\\n    /// @param from Address from which the randomize() function was called. \\n    /// @param prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @param witnetQueryId Unique query id assigned to this request by the WRB.\\n    /// @param witnetRequestHash SHA-256 hash of the WitnetRandomnessRequest actual bytecode just posted to the WRB.\\n    event Randomized(\\n        address indexed from,\\n        uint256 indexed prevBlock,\\n        uint256 witnetQueryId,\\n        bytes32 witnetRequestHash\\n    );\\n\\n    /// Returns amount of wei required to be paid as a fee when requesting randomization with a \\n    /// transaction gas price as the one given.\\n    function estimateRandomizeFee(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view returns (address _from, uint256 _id, uint256 _prevBlock, uint256 _nextBlock);\\n\\n    /// Retrieves the randomness generated upon solving a request that was posted within a given block,\\n    /// if any, or to the _first_ request posted after that block, otherwise. Should the intended \\n    /// request happen to be finalized with errors on the Witnet oracle network side, this function \\n    /// will recursively try to return randomness from the next non-faulty randomization request found \\n    /// in storage, if any. \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but no result has been provided yet.\\n    /// @dev   iii. all requests in/after the given block were solved with errors.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block) external view returns (bytes32); \\n\\n    /// Tells what is the number of the next block in which a randomization request was posted after the given one. \\n    /// @param _block Block number from which the search will start.\\n    /// @return Number of the first block found after the given one, or `0` otherwise.\\n    function getRandomnessNextBlock(uint256 _block) external view returns (uint256); \\n\\n    /// Gets previous block in which a randomness request was posted before the given one.\\n    /// @param _block Block number from which the search will start.\\n    /// @return First block found before the given one, or `0` otherwise.\\n    function getRandomnessPrevBlock(uint256 _block) external view returns (uint256);\\n\\n    /// Returns `true` only when the randomness request that got posted within given block was already\\n    /// reported back from the Witnet oracle, either successfully or with an error of any kind.\\n    function isRandomized(uint256 _block) external view returns (bool);\\n\\n    /// Returns latest block in which a randomness request got sucessfully posted to the WRB.\\n    function latestRandomizeBlock() external view returns (uint256);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. \\n    /// @dev Fails under same conditions as `getRandomnessAfter(uint256)` may do.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _block Block number from which the search will start.\\n    function random(uint32 _range, uint256 _nonce, uint256 _block) external view returns (uint32);\\n\\n    /// Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using \\n    /// the given `_nonce` value and the given `_seed` as a source of entropy.\\n    /// @param _range Range within which the uniformly-distributed random number will be generated.\\n    /// @param _nonce Nonce value enabling multiple random numbers from the same randomness value.\\n    /// @param _seed Seed value used as entropy source.\\n    function random(uint32 _range, uint256 _nonce, bytes32 _seed) external pure returns (uint32);\\n\\n    /// Requests the Witnet oracle to generate an EVM-agnostic and trustless source of randomness. \\n    /// Only one randomness request per block will be actually posted to the WRB. Should there \\n    /// already be a posted request within current block, it will try to upgrade Witnet fee of current's \\n    /// block randomness request according to current gas price. In both cases, all unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize() external payable returns (uint256 _usedFunds);\\n\\n    /// Increases Witnet fee related to a pending-to-be-solved randomness request, as much as it\\n    /// may be required in proportion to how much bigger the current tx gas price is with respect the \\n    /// highest gas price that was paid in either previous fee upgrades, or when the given randomness \\n    /// request was posted. All unused funds shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of dunds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256 _block) external payable returns (uint256 _usedFunds);\\n}\\n\",\"keccak256\":\"0x67868d08fe2406086cdd9a3860614201911a1ad16e3d34a94151fad721a12934\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardEvents.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title Witnet Request Board emitting events interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardEvents {\\n    /// Emitted when a Witnet Data Request is posted to the WRB.\\n    event PostedRequest(uint256 queryId, address from);\\n\\n    /// Emitted when a Witnet-solved result is reported to the WRB.\\n    event PostedResult(uint256 queryId, address from);\\n\\n    /// Emitted when all data related to given query is deleted from the WRB.\\n    event DeletedQuery(uint256 queryId, address from);\\n}\\n\",\"keccak256\":\"0xe2cb1369ba158db394c0380231f99174a88d62a66b0e7f8be14179b8c2fbd12f\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardReporter.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Request Board Reporter interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardReporter {\\n    /// Reports the Witnet-provided result to a previously posted request. \\n    /// @dev Will assume `block.timestamp` as the timestamp at which the request was solved.\\n    /// @dev Fails if:\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique identifier of the data request.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports the Witnet-provided result to a previously posted request.\\n    /// @dev Fails if:\\n    /// @dev - called from unauthorized address;\\n    /// @dev - the `_queryId` is not in 'Posted' status.\\n    /// @dev - provided `_drTxHash` is zero;\\n    /// @dev - length of provided `_result` is zero.\\n    /// @param _queryId The unique query identifier\\n    /// @param _timestamp The timestamp of the solving tally transaction in Witnet.\\n    /// @param _drTxHash The hash of the corresponding data request transaction in Witnet.\\n    /// @param _result The result itself as bytes.\\n    function reportResult(\\n            uint256 _queryId,\\n            uint256 _timestamp,\\n            bytes32 _drTxHash,\\n            bytes calldata _result\\n        ) external;\\n\\n    /// Reports Witnet-provided results to multiple requests within a single EVM tx.\\n    /// @dev Must emit a PostedResult event for every succesfully reported result.\\n    /// @param _batchResults Array of BatchResult structs, every one containing:\\n    ///         - unique query identifier;\\n    ///         - timestamp of the solving tally txs in Witnet. If zero is provided, EVM-timestamp will be used instead;\\n    ///         - hash of the corresponding data request tx at the Witnet side-chain level;\\n    ///         - data request result in raw bytes.\\n    /// @param _verbose If true, must emit a BatchReportError event for every failing report, if any. \\n    function reportResultBatch(BatchResult[] calldata _batchResults, bool _verbose) external;\\n        \\n        struct BatchResult {\\n            uint256 queryId;\\n            uint256 timestamp;\\n            bytes32 drTxHash;\\n            bytes   cborBytes;\\n        }\\n\\n        event BatchReportError(uint256 queryId, string reason);\\n}\\n\",\"keccak256\":\"0x70655a9a394143ac1f03477a2cca5e2d1773523832bf127b9e9971596c105812\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardRequestor.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Requestor Interface\\n/// @notice It defines how to interact with the Witnet Request Board in order to:\\n///   - request the execution of Witnet Radon scripts (data request);\\n///   - upgrade the resolution reward of any previously posted request, in case gas price raises in mainnet;\\n///   - read the result of any previously posted request, eventually reported by the Witnet DON.\\n///   - remove from storage all data related to past and solved data requests, and results.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardRequestor {\\n    /// Retrieves a copy of all Witnet-provided data related to a previously posted request, removing the whole query from the WRB storage.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status, or called from an address different to\\n    /// @dev the one that actually posted the given request.\\n    /// @param _queryId The unique query identifier.\\n    function deleteQuery(uint256 _queryId) external returns (Witnet.Response memory);\\n\\n    /// Requests the execution of the given Witnet Data Request in expectation that it will be relayed and solved by the Witnet DON.\\n    /// A reward amount is escrowed by the Witnet Request Board that will be transferred to the reporter who relays back the Witnet-provided \\n    /// result to this request.\\n    /// @dev Fails if:\\n    /// @dev - provided reward is too low.\\n    /// @dev - provided script is zero address.\\n    /// @dev - provided script bytecode is empty.\\n    /// @param _addr The address of the IWitnetRequest contract that can provide the actual Data Request bytecode.\\n    /// @return _queryId An unique query identifier.\\n    function postRequest(IWitnetRequest _addr) external payable returns (uint256 _queryId);\\n\\n    /// Increments the reward of a previously posted request by adding the transaction value to it.\\n    /// @dev Updates request `gasPrice` in case this method is called with a higher \\n    /// @dev gas price value than the one used in previous calls to `postRequest` or\\n    /// @dev `upgradeReward`. \\n    /// @dev Fails if the `_queryId` is not in 'Posted' status.\\n    /// @dev Fails also in case the request `gasPrice` is increased, and the new \\n    /// @dev reward value gets below new recalculated threshold. \\n    /// @param _queryId The unique query identifier.\\n    function upgradeReward(uint256 _queryId) external payable;\\n}\\n\",\"keccak256\":\"0x7c7a991de5f087102b1931d5d8b2e3716d7a90354b3cbafef95d2509a0643453\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestBoardView.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title Witnet Request Board info interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestBoardView {\\n    /// Estimates the amount of reward we need to insert for a given gas price.\\n    /// @param _gasPrice The gas price for which we need to calculate the rewards.\\n    function estimateReward(uint256 _gasPrice) external view returns (uint256);\\n\\n    /// Returns next query id to be generated by the Witnet Request Board.\\n    function getNextQueryId() external view returns (uint256);\\n\\n    /// Gets the whole Query data contents, if any, no matter its current status.\\n    function getQueryData(uint256 _queryId) external view returns (Witnet.Query memory);\\n\\n    /// Gets current status of given query.\\n    function getQueryStatus(uint256 _queryId) external view returns (Witnet.QueryStatus);\\n\\n    /// Retrieves the whole Request record posted to the Witnet Request Board.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been reported\\n    /// @dev or deleted.\\n    /// @param _queryId The unique identifier of a previously posted query.\\n    function readRequest(uint256 _queryId) external view returns (Witnet.Request memory);\\n\\n    /// Retrieves the serialized bytecode of a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not valid, or if the related script bytecode \\n    /// @dev got changed after being posted. Returns empty array once it gets reported, \\n    /// @dev or deleted.\\n    /// @param _queryId The unique query identifier.\\n    function readRequestBytecode(uint256 _queryId) external view returns (bytes memory);\\n\\n    /// Retrieves the gas price that any assigned reporter will have to pay when reporting \\n    /// result to a previously posted Witnet data request.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifie\\n    function readRequestGasPrice(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the reward currently set for the referred query.\\n    /// @dev Fails if the `_queryId` is not valid or, if it has already been \\n    /// @dev reported, or deleted. \\n    /// @param _queryId The unique query identifier.\\n    function readRequestReward(uint256 _queryId) external view returns (uint256);\\n\\n    /// Retrieves the whole `Witnet.Response` record referred to a previously posted Witnet Data Request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponse(uint256 _queryId) external view returns (Witnet.Response memory);\\n\\n    /// Retrieves the hash of the Witnet transaction hash that actually solved the referred query.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseDrTxHash(uint256 _queryId) external view returns (bytes32);    \\n\\n    /// Retrieves the address that reported the result to a previously-posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseReporter(uint256 _queryId) external view returns (address);\\n\\n    /// Retrieves the Witnet-provided CBOR-bytes result of a previously posted request.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseResult(uint256 _queryId) external view returns (Witnet.Result memory);\\n\\n    /// Retrieves the timestamp in which the result to the referred query was solved by the Witnet DON.\\n    /// @dev Fails if the `_queryId` is not in 'Reported' status.\\n    /// @param _queryId The unique query identifier.\\n    function readResponseTimestamp(uint256 _queryId) external view returns (uint256);\\n}\\n\",\"keccak256\":\"0x782ec2ff166948f5d097765c0190b352793d8b8887af5f8384d875d63cff4e9b\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequestParser.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\n/// @title The Witnet interface for decoding Witnet-provided request to Data Requests.\\n/// This interface exposes functions to check for the success/failure of\\n/// a Witnet-provided result, as well as to parse and convert result into\\n/// Solidity types suitable to the application level. \\n/// @author The Witnet Foundation.\\ninterface IWitnetRequestParser {\\n\\n    /// Decode raw CBOR bytes into a Witnet.Result instance.\\n    /// @param _cborBytes Raw bytes representing a CBOR-encoded value.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborBytes(bytes memory _cborBytes) external pure returns (Witnet.Result memory);\\n\\n    /// Decode a CBOR value into a Witnet.Result instance.\\n    /// @param _cborValue An instance of `Witnet.CBOR`.\\n    /// @return A `Witnet.Result` instance.\\n    function resultFromCborValue(Witnet.CBOR memory _cborValue) external pure returns (Witnet.Result memory);\\n\\n    /// Tell if a Witnet.Result is successful.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if successful, `false` if errored.\\n    function isOk(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Tell if a Witnet.Result is errored.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return `true` if errored, `false` if successful.\\n    function isError(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes` decoded from the Witnet.Result.\\n    function asBytes(Witnet.Result memory _result) external pure returns (bytes memory);\\n\\n    /// Decode a bytes value from a Witnet.Result as a `bytes32` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bytes32` decoded from the Witnet.Result.\\n    function asBytes32(Witnet.Result memory _result) external pure returns (bytes32);\\n\\n    /// Decode an error code from a Witnet.Result as a member of `Witnet.ErrorCodes`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `CBORValue.Error memory` decoded from the Witnet.Result.\\n    function asErrorCode(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes);\\n\\n\\n    /// Generate a suitable error message for a member of `Witnet.ErrorCodes` and its corresponding arguments.\\n    /// @dev WARN: Note that client contracts should wrap this function into a try-catch foreseing potential errors generated in this function\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return A tuple containing the `CBORValue.Error memory` decoded from the `Witnet.Result`, plus a loggable error message.\\n    function asErrorMessage(Witnet.Result memory _result) external pure returns (Witnet.ErrorCodes, string memory);\\n\\n    /// Decode a raw error from a `Witnet.Result` as a `uint64[]`.\\n    /// @param _result An instance of `Witnet.Result`.\\n    /// @return The `uint64[]` raw error as decoded from the `Witnet.Result`.\\n    function asRawError(Witnet.Result memory _result) external pure returns(uint64[] memory);\\n\\n    /// Decode a boolean value from a Witnet.Result as an `bool` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `bool` decoded from the Witnet.Result.\\n    function asBool(Witnet.Result memory _result) external pure returns (bool);\\n\\n    /// Decode a fixed16 (half-precision) numeric value from a Witnet.Result as an `int32` value.\\n    /// @dev Due to the lack of support for floating or fixed point arithmetic in the EVM, this method offsets all values.\\n    /// by 5 decimal orders so as to get a fixed precision of 5 decimal positions, which should be OK for most `fixed16`.\\n    /// use cases. In other words, the output of this method is 10,000 times the actual value, encoded into an `int32`.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asFixed16(Witnet.Result memory _result) external pure returns (int32);\\n\\n    /// Decode an array of fixed16 values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asFixed16Array(Witnet.Result memory _result) external pure returns (int32[] memory);\\n\\n    /// Decode a integer numeric value from a Witnet.Result as an `int128` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128` decoded from the Witnet.Result.\\n    function asInt128(Witnet.Result memory _result) external pure returns (int128);\\n\\n    /// Decode an array of integer numeric values from a Witnet.Result as an `int128[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `int128[]` decoded from the Witnet.Result.\\n    function asInt128Array(Witnet.Result memory _result) external pure returns (int128[] memory);\\n\\n    /// Decode a string value from a Witnet.Result as a `string` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string` decoded from the Witnet.Result.\\n    function asString(Witnet.Result memory _result) external pure returns (string memory);\\n\\n    /// Decode an array of string values from a Witnet.Result as a `string[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `string[]` decoded from the Witnet.Result.\\n    function asStringArray(Witnet.Result memory _result) external pure returns (string[] memory);\\n\\n    /// Decode a natural numeric value from a Witnet.Result as a `uint64` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64` decoded from the Witnet.Result.\\n    function asUint64(Witnet.Result memory _result) external pure returns(uint64);\\n\\n    /// Decode an array of natural numeric values from a Witnet.Result as a `uint64[]` value.\\n    /// @param _result An instance of Witnet.Result.\\n    /// @return The `uint64[]` decoded from the Witnet.Result.\\n    function asUint64Array(Witnet.Result memory _result) external pure returns (uint64[] memory);\\n\\n}\\n\",\"keccak256\":\"0xe7c24475babac7d21172d37d976a97b81053739e81b4697be39decfe2aa90945\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../apps/WitnetRandomness.sol\\\";\\n\\n/// @title WitnetRandomness mock contract implementation. \\n/// @dev TO BE USED ONLY ON DEVELOPMENT ENVIRONMENTS. \\n/// @dev ON SUPPORTED TESTNETS, PLEASE USE THE `WitnetRandomness`\\n/// @dev CONTRACT ADDRESS PROVIDED BY THE WITNET FOUNDATION.\\n/// @dev SEE: https://docs.witnet.io/smart-contracts/witnet-randomness-oracle/contract-addresses\\n/// @author Witnet Foundation.\\ncontract WitnetRandomnessMock\\n    is\\n        WitnetRandomness\\n{\\n    uint8 internal __mockRandomizeLatencyBlocks;\\n    uint256 internal __mockRandomizeFee;\\n    uint256 internal __mockRandomizeLatestId;\\n\\n    /// Constructor: new WitnetRandomnessMock contract\\n    /// @param _mockRandomizeLatencyBlocks Mocked number of blocks in which a new randomness will be provided after `randomize()`\\n    /// @param _mockRandomizeFee Mocked randomize fee (will be constant no matter what tx gas price is provided).\\n    constructor (\\n            uint8 _mockRandomizeLatencyBlocks,\\n            uint256 _mockRandomizeFee\\n        )\\n        WitnetRandomness(WitnetRequestBoard(payable(0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF)))\\n    {\\n        __mockRandomizeLatencyBlocks = _mockRandomizeLatencyBlocks;\\n        __mockRandomizeFee = _mockRandomizeFee;\\n    }\\n\\n    /// Returns mocked amount of wei required to be paid as a fee when requesting new randomization.\\n    function estimateRandomizeFee(uint256)\\n        public view\\n        virtual override\\n        returns (uint256)\\n    {\\n        return __mockRandomizeFee;\\n    }\\n\\n    /// Retrieves data of a randomization request that got successfully posted to the WRB within a given block.\\n    /// @dev Returns zero values if no randomness request was actually posted within a given block.\\n    /// @param _block Block number whose randomness request is being queried for.\\n    /// @return _from Address from which the latest randomness request was posted.\\n    /// @return _id Unique request identifier as provided by the WRB.\\n    /// @return _prevBlock Block number in which a randomness request got posted just before this one. 0 if none.\\n    /// @return _nextBlock Block number in which a randomness request got posted just after this one, 0 if none.\\n    function getRandomizeData(uint256 _block)\\n        external view\\n        virtual override\\n        returns (\\n            address _from,\\n            uint256 _id,\\n            uint256 _prevBlock,\\n            uint256 _nextBlock\\n        )\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        _id = _data.witnetQueryId;\\n        _from = _data.from;\\n        _prevBlock = _data.prevBlock;\\n        _nextBlock = _data.nextBlock;\\n    }\\n\\n    /// Mocks randomness generated upon solving a request that was posted within a given block,\\n    /// if more than `__mockRandomizeLatencyBlocks` have elapsed since rquest, or to the _first_ request \\n    /// posted after that block, otherwise. \\n    /// @dev Please, note that 256 blocks after a `randomize()` request, randomness will be possibly returned \\n    /// @dev as `bytes32(0)` (depending on actual EVM implementation). \\n    /// @dev Fails if:\\n    /// @dev   i.   no `randomize()` was not called in either the given block, or afterwards.\\n    /// @dev   ii.  a request posted in/after given block does exist, but lest than `__mockRandomizeLatencyBlocks` have elapsed.\\n    /// @param _block Block number from which the search will start.\\n    function getRandomnessAfter(uint256 _block)\\n        public view\\n        virtual override\\n        returns (bytes32)\\n    {\\n        if (__randomize_[_block].from == address(0)) {\\n            _block = getRandomnessNextBlock(_block);\\n        }\\n        uint256 _queryId = __randomize_[_block].witnetQueryId;\\n        require(_queryId != 0, \\\"WitnetRandomnessMock: not randomized\\\");\\n        require(block.number >= _block + __mockRandomizeLatencyBlocks, \\\"WitnetRandomnessMock: pending randomize\\\");\\n        return blockhash(_block);\\n    }\\n\\n    /// Mocks `true` only when a randomness request got actually posted within given block,\\n    /// and at least `__mockRandomizeLatencyBlocks` have elapsed since then. \\n    function isRandomized(uint256 _block)\\n        public view\\n        virtual override\\n        returns (bool)\\n    {\\n        RandomizeData storage _data = __randomize_[_block];\\n        return (\\n            _data.witnetQueryId != 0 \\n                && block.number >= _block + __mockRandomizeLatencyBlocks\\n        );\\n    }\\n\\n    /// Mocks request to generate randomness, using underlying EVM as entropy source.\\n    /// Only one randomness request per block will be actually posted. Unused funds shall \\n    /// be transfered back to the tx sender.\\n    /// @dev FOR UNITARY TESTING ONLY. DO NOT USE IN PRODUCTION, AS PROVIDED RANDOMNESS\\n    /// @dev WILL NEITHER BE EVM-AGNOSTIC, NOR SECURE.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function randomize()\\n        external payable\\n        virtual override\\n        returns (uint256 _usedFunds)\\n    {\\n        if (latestRandomizeBlock < block.number) {\\n            _usedFunds = __mockRandomizeFee;\\n            require(\\n                msg.value >= _usedFunds,\\n                \\\"WitnetRandomnessMock: reward too low\\\"\\n            );\\n            // Post the Witnet Randomness request:\\n            uint _queryId = ++ __mockRandomizeLatestId;\\n            RandomizeData storage _data = __randomize_[block.number];\\n            _data.from = msg.sender;\\n            _data.witnetQueryId = _queryId;            \\n            // Update block links:\\n            uint256 _prevBlock = latestRandomizeBlock;\\n            _data.prevBlock = _prevBlock;\\n            __randomize_[_prevBlock].nextBlock = block.number;\\n            latestRandomizeBlock = block.number;\\n            // Throw event:\\n            emit Randomized(\\n                msg.sender,\\n                _prevBlock,\\n                _queryId,\\n                witnetRandomnessRequest.hash()\\n            );\\n        }\\n        // Transfer back unused tx value:\\n        if (_usedFunds < msg.value) {\\n            payable(msg.sender).transfer(msg.value - _usedFunds);\\n        }\\n    }\\n\\n    /// Mocks by ignoring any fee increase on a pending-to-be-solved randomness request.\\n    /// @dev The whole `msg.value` shall be transferred back to the tx sender.\\n    /// @return _usedFunds Amount of funds actually used from those provided by the tx sender.\\n    function upgradeRandomizeFee(uint256)\\n        public payable\\n        virtual override\\n        returns (uint256)\\n    {\\n        if (msg.value > 0) {\\n            payable(msg.sender).transfer(msg.value);\\n        }\\n        return 0;\\n    }\\n}\\n\",\"keccak256\":\"0xb53b027c34190887c264cec104300e4325640abbedbc022bdda7482afe0e2895\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Clonable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\n\\nabstract contract Clonable is Initializable {\\n    /// Immutable contract address that actually attends all calls to this contract.\\n    /// @dev Differs from `address(this)` when reached within a DELEGATECALL.\\n    address immutable public self = address(this);\\n\\n    event Cloned(address indexed by, Clonable indexed self, Clonable indexed clone);\\n\\n    /// Tells whether this contract is a clone of another (i.e. `self()`)\\n    function cloned()\\n        public view\\n        returns (bool)\\n    {\\n        return (\\n            address(this) != self\\n        );\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function clone()\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            // begin minimal proxy construction bytecode:\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE new instance:\\n            _instance := create(0, ptr, 0x37)\\n        }        \\n        require(address(_instance) != address(0), \\\"Clonable: CREATE failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple times will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function cloneDeterministic(bytes32 _salt)\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE2 new instance:\\n            _instance := create2(0, ptr, 0x37, _salt)\\n        }\\n        require(address(_instance) != address(0), \\\"Clonable: CREATE2 failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n}\\n\",\"keccak256\":\"0xbb8cfcfc7f44e289bd3dff357e1bb3da5809b2a39b58b7805aa3bfc1ec47ff2d\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Context.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity ^0.8.0;\\n\\n/// @dev Provides information about the current execution context, including the\\n/// sender of the transaction and its data. While these are generally available\\n/// via msg.sender and msg.data, they should not be accessed in such a direct\\n/// manner, since when dealing with meta-transactions the account sending and\\n/// paying for execution may not be the actual sender (as far as an application\\n/// is concerned).\\nabstract contract Context {\\n    function _msgSender() internal view virtual returns (address) {\\n        return msg.sender;\\n    }\\n\\n    function _msgData() internal view virtual returns (bytes calldata) {\\n        return msg.data;\\n    }\\n\\n    function _msgValue() internal view virtual returns (uint256) {\\n        return msg.value;\\n    }\\n}\\n\",\"keccak256\":\"0x1a17c0fd9fcd98aa49c5c428a415634b9db839e560f20da81f7c223a18ad12fc\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Ownable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n// OpenZeppelin Contracts v4.3.2 (access/Ownable.sol)\\n\\npragma solidity ^0.8.0;\\n\\nimport \\\"./Context.sol\\\";\\n\\n/// @dev Contract module which provides a basic access control mechanism, where\\n/// there is an account (an owner) that can be granted exclusive access to\\n/// specific functions.\\n///\\n/// By default, the owner account will be the one that deploys the contract. This\\n/// can later be changed with {transferOwnership}.\\n///\\n/// This module is used through inheritance. It will make available the modifier\\n/// `onlyOwner`, which can be applied to your functions to restrict their use to\\n/// the owner.\\n\\nabstract contract Ownable is Context {\\n    address private _owner;\\n\\n    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\\n\\n    /// @dev Initializes the contract setting the deployer as the initial owner.\\n    constructor() {\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    /// @dev Returns the address of the current owner.\\n    function owner() public view virtual returns (address) {\\n        return _owner;\\n    }\\n\\n    /// @dev Throws if called by any account other than the owner.\\n    modifier onlyOwner() {\\n        require(owner() == _msgSender(), \\\"Ownable: caller is not the owner\\\");\\n        _;\\n    }\\n\\n    /// @dev Leaves the contract without owner. It will not be possible to call\\n    /// `onlyOwner` functions anymore. Can only be called by the current owner.\\n    /// NOTE: Renouncing ownership will leave the contract without an owner,\\n    /// thereby removing any functionality that is only available to the owner.\\n    function renounceOwnership() public virtual onlyOwner {\\n        _transferOwnership(address(0));\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Can only be called by the current owner.\\n    function transferOwnership(address newOwner) public virtual onlyOwner {\\n        require(newOwner != address(0), \\\"Ownable: new owner is the zero address\\\");\\n        _transferOwnership(newOwner);\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Internal function without access restriction.\\n    function _transferOwnership(address newOwner) internal virtual {\\n        address oldOwner = _owner;\\n        _owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n}\",\"keccak256\":\"0xb8ce9f1e03440d40dbb9898c5ec2cfad520ccd3a5c76176058c44f5033c656a2\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\nimport \\\"../patterns/Clonable.sol\\\";\\nimport \\\"../patterns/Ownable.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\n\\nabstract contract WitnetRequestMalleableBase\\n    is\\n        IWitnetRequest,\\n        Clonable,\\n        Ownable,\\n        Proxiable\\n{   \\n    using Witnet for *;\\n\\n    event WitnessingParamsChanged(\\n        address indexed by,\\n        uint8 numWitnesses,\\n        uint8 minWitnessingConsensus,\\n        uint64 witnssingCollateral,\\n        uint64 witnessingReward,\\n        uint64 witnessingUnitaryFee\\n    );\\n\\n    struct WitnetRequestMalleableBaseContext {\\n        /// Contract owner address.\\n        address owner;\\n        /// Immutable bytecode template.\\n        bytes template;\\n        /// Current request bytecode.\\n        bytes bytecode;\\n        /// Current request hash.\\n        bytes32 hash;\\n        /// Current request witnessing params.\\n        WitnetRequestWitnessingParams params;\\n    }\\n\\n    struct WitnetRequestWitnessingParams {\\n        /// Number of witnesses required to be involved for solving this Witnet Data Request.\\n        uint8 numWitnesses;\\n\\n        /// Threshold percentage for aborting resolution of a request if the witnessing nodes did not arrive to a broad consensus.\\n        uint8 minWitnessingConsensus;\\n\\n        /// Amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n        uint64 witnessingCollateral;\\n\\n        /// Amount of nanowits that every request-solving witness will be rewarded with.\\n        uint64 witnessingReward;\\n\\n        /// Amount of nanowits that will be earned by Witnet miners for each each valid commit/reveal transaction they include in a block.\\n        uint64 witnessingUnitaryFee;\\n    }\\n\\n    /// Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\\n    function bytecode() external view override returns (bytes memory) {\\n        return _request().bytecode;\\n    }\\n\\n    /// Returns SHA256 hash of current Witnet Data Request bytecode.\\n    function hash() external view override returns (bytes32) {\\n        return _request().hash;\\n    }\\n\\n    /// Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n    function setWitnessingCollateral(uint64 _witnessingCollateral)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingCollateral = _witnessingCollateral;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Specifies how much you want to pay for rewarding each of the Witnet nodes.\\n    /// @param _witnessingReward Amount of nanowits that every request-solving witness will be rewarded with.\\n    /// @param _witnessingUnitaryFee Amount of nanowits that will be earned by Witnet miners for each each valid \\n    /// commit/reveal transaction they include in a block.\\n    function setWitnessingFees(uint64 _witnessingReward, uint64 _witnessingUnitaryFee)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingReward = _witnessingReward;\\n        _params.witnessingUnitaryFee = _witnessingUnitaryFee;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Sets how many Witnet nodes will be \\\"hired\\\" for resolving the request.\\n    /// @param _numWitnesses Number of witnesses required to be involved for solving this Witnet Data Request.\\n    /// @param _minWitnessingConsensus Threshold percentage for aborting resolution of a request if the witnessing \\n    /// nodes did not arrive to a broad consensus.\\n    function setWitnessingQuorum(uint8 _numWitnesses, uint8 _minWitnessingConsensus)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = _numWitnesses;\\n        _params.minWitnessingConsensus = _minWitnessingConsensus;\\n        _malleateBytecode(\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol\\n    /// level, including no witnessing parameters at all.\\n    function template()\\n        external view\\n        returns (bytes memory)\\n    {\\n        return _request().template;\\n    }\\n\\n    /// Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\\n    function totalWitnessingCollateral()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * _params.witnessingCollateral;\\n    }\\n\\n    /// Returns total amount of nanowits that will have to be paid in total for this request to be solved.\\n    function totalWitnessingFee()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * (2 * _params.witnessingUnitaryFee + _params.witnessingReward);\\n    }\\n\\n    /// Returns witnessing parameters of current Witnet Data Request.\\n    function witnessingParams()\\n        external view\\n        returns (WitnetRequestWitnessingParams memory)\\n    {\\n        return _request().params;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    function clone()\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.clone();\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    function cloneDeterministic(bytes32 _salt)\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.cloneDeterministic(_salt);\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\\n\\n    /// @dev Initializes contract's storage context.\\n    function initialize(bytes memory _template)\\n        public\\n        virtual override\\n    {\\n        require(_request().template.length == 0, \\\"WitnetRequestMalleableBase: already initialized\\\");\\n        _initialize(_template);\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Ownable' overriden functions ------------------------------------------------------------------------------\\n\\n    /// Returns the address of the current owner.\\n    function owner()\\n        public view\\n        virtual override\\n        returns (address)\\n    {\\n        return _request().owner;\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    function _transferOwnership(address newOwner)\\n        internal\\n        virtual override\\n    {\\n        address oldOwner = _request().owner;\\n        _request().owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Proxiable 'overriden functions ----------------------------------------------------------------------------\\n\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID()\\n        external pure\\n        virtual override\\n        returns (bytes32)\\n    {\\n        return (\\n            /* keccak256(\\\"io.witnet.requests.malleable\\\") */\\n            0x851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c2\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------    \\n\\n    /// @dev Initializes witnessing params and template bytecode.\\n    function _initialize(bytes memory _template)\\n        internal\\n    {\\n        assert(_template.length > 0);\\n        _request().template = _template;\\n\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = 2;\\n        _params.minWitnessingConsensus = 51;\\n        _params.witnessingCollateral = 10 ** 9;      // 1 WIT\\n        _params.witnessingReward = 5 * 10 ** 5;      // 0.5 milliWITs\\n        _params.witnessingUnitaryFee = 25 * 10 ** 4; // 0.25 milliWITs\\n        \\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Serializes new `bytecode` by combining immutable template with given parameters.\\n    function _malleateBytecode(\\n            uint8 _numWitnesses,\\n            uint8 _minWitnessingConsensus,\\n            uint64 _witnessingCollateral,\\n            uint64 _witnessingReward,\\n            uint64 _witnessingUnitaryFee\\n        )\\n        internal\\n        virtual\\n    {\\n        require(\\n            _witnessingReward > 0,\\n            \\\"WitnetRequestMalleableBase: no reward\\\"\\n        );\\n        require(\\n            _numWitnesses >= 1 && _numWitnesses <= 127,\\n            \\\"WitnetRequestMalleableBase: number of witnesses out of range\\\"\\n        );\\n        require(\\n            _minWitnessingConsensus >= 51 && _minWitnessingConsensus <= 99,\\n            \\\"WitnetRequestMalleableBase: witnessing consensus out of range\\\"\\n        );\\n        require(\\n            _witnessingCollateral >= 10 ** 9,\\n            \\\"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\\\"\\n        );\\n\\n        _request().bytecode = abi.encodePacked(\\n            _request().template,\\n            _uint64varint(bytes1(0x10), _witnessingReward),\\n            _uint8varint(bytes1(0x18), _numWitnesses),\\n            _uint64varint(0x20, _witnessingUnitaryFee),\\n            _uint8varint(0x28, _minWitnessingConsensus),\\n            _uint64varint(0x30, _witnessingCollateral)\\n        );\\n        _request().hash = _request().bytecode.hash();\\n        emit WitnessingParamsChanged(\\n            msg.sender,\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Returns pointer to storage slot where State struct is located.\\n    function _request()\\n        internal pure\\n        virtual\\n        returns (WitnetRequestMalleableBaseContext storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot :=\\n                /* keccak256(\\\"io.witnet.requests.malleable.context\\\") */\\n                0x375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7\\n        }\\n    }\\n\\n    /// @dev Encode uint64 into tagged varint.\\n    /// @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint64varint(bytes1 t, uint64 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        // Count the number of groups of 7 bits\\n        // We need this pre-processing step since Solidity doesn't allow dynamic memory resizing\\n        uint64 tmp = n;\\n        uint64 numBytes = 2;\\n        while (tmp > 0x7F) {\\n            tmp = tmp >> 7;\\n            numBytes += 1;\\n        }\\n        bytes memory buf = new bytes(numBytes);\\n        tmp = n;\\n        buf[0] = t;\\n        for (uint64 i = 1; i < numBytes; i++) {\\n            // Set the first bit in the byte for each group of 7 bits\\n            buf[i] = bytes1(0x80 | uint8(tmp & 0x7F));\\n            tmp = tmp >> 7;\\n        }\\n        // Unset the first bit of the last byte\\n        buf[numBytes - 1] &= 0x7F;\\n        return buf;\\n    }\\n\\n    /// @dev Encode uint8 into tagged varint.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint8varint(bytes1 t, uint8 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        return _uint64varint(t, uint64(n));\\n    }\\n}\\n\",\"keccak256\":\"0x53d0d402776e310c678643ed6b07d4f73511de9d1fa73732abf4251d69755b22\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetRequestMalleableBase.sol\\\";\\n\\ncontract WitnetRequestRandomness is WitnetRequestMalleableBase {\\n    bytes internal constant _WITNET_RANDOMNESS_BYTECODE_TEMPLATE = hex\\\"0a0f120508021a01801a0210022202100b\\\";\\n\\n    constructor() {\\n        initialize(bytes(\\\"\\\"));\\n    }\\n\\n    function initialize(bytes memory)\\n        public\\n        virtual override\\n    {\\n        super.initialize(_WITNET_RANDOMNESS_BYTECODE_TEMPLATE);\\n    }\\n}\\n\",\"keccak256\":\"0xc3b4a7d0dc396fb83b71beeae2a6d7de86b300919f894fcae73b7680829d716f\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":497,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"witnetRandomnessRequest","offset":0,"slot":"0","type":"t_contract(WitnetRequestRandomness)9072"},{"astId":500,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"latestRandomizeBlock","offset":0,"slot":"1","type":"t_uint256"},{"astId":505,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"__randomize_","offset":0,"slot":"2","type":"t_mapping(t_uint256,t_struct(RandomizeData)514_storage)"},{"astId":7537,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"__mockRandomizeLatencyBlocks","offset":0,"slot":"3","type":"t_uint8"},{"astId":7539,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"__mockRandomizeFee","offset":0,"slot":"4","type":"t_uint256"},{"astId":7541,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"__mockRandomizeLatestId","offset":0,"slot":"5","type":"t_uint256"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_contract(WitnetRequestRandomness)9072":{"encoding":"inplace","label":"contract WitnetRequestRandomness","numberOfBytes":"20"},"t_mapping(t_uint256,t_struct(RandomizeData)514_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct WitnetRandomness.RandomizeData)","numberOfBytes":"32","value":"t_struct(RandomizeData)514_storage"},"t_struct(RandomizeData)514_storage":{"encoding":"inplace","label":"struct WitnetRandomness.RandomizeData","members":[{"astId":507,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"from","offset":0,"slot":"0","type":"t_address"},{"astId":509,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"prevBlock","offset":0,"slot":"1","type":"t_uint256"},{"astId":511,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"nextBlock","offset":0,"slot":"2","type":"t_uint256"},{"astId":513,"contract":"witnet-solidity-bridge/contracts/mocks/WitnetRandomnessMock.sol:WitnetRandomnessMock","label":"witnetQueryId","offset":0,"slot":"3","type":"t_uint256"}],"numberOfBytes":"128"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"userdoc":{"events":{"Randomized(address,uint256,uint256,bytes32)":{"notice":"Thrown every time a new WitnetRandomnessRequest gets succesfully posted to the WitnetRequestBoard."}},"kind":"user","methods":{"clone()":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage."},"cloneDeterministic(bytes32)":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage."},"cloned()":{"notice":"Tells whether this contract is a clone of another (i.e. `self()`)"},"constructor":{"notice":"Constructor: new WitnetRandomnessMock contract"},"estimateRandomizeFee(uint256)":{"notice":"Returns mocked amount of wei required to be paid as a fee when requesting new randomization."},"getRandomizeData(uint256)":{"notice":"Retrieves data of a randomization request that got successfully posted to the WRB within a given block."},"getRandomnessAfter(uint256)":{"notice":"Mocks randomness generated upon solving a request that was posted within a given block, if more than `__mockRandomizeLatencyBlocks` have elapsed since rquest, or to the _first_ request  posted after that block, otherwise. "},"getRandomnessNextBlock(uint256)":{"notice":"Tells what is the number of the next block in which a randomization request was posted after the given one. "},"getRandomnessPrevBlock(uint256)":{"notice":"Gets previous block in which a randomness request was posted before the given one."},"isRandomized(uint256)":{"notice":"Mocks `true` only when a randomness request got actually posted within given block, and at least `__mockRandomizeLatencyBlocks` have elapsed since then. "},"latestRandomizeBlock()":{"notice":"Returns latest block in which a randomness request got sucessfully posted to the WRB."},"random(uint32,uint256,bytes32)":{"notice":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the given `_seed` as a source of entropy."},"random(uint32,uint256,uint256)":{"notice":"Generates a pseudo-random number uniformly distributed within the range [0 .. _range), by using  the given `_nonce` value and the randomness returned by `getRandomnessAfter(_block)`. "},"randomize()":{"notice":"Mocks request to generate randomness, using underlying EVM as entropy source. Only one randomness request per block will be actually posted. Unused funds shall  be transfered back to the tx sender."},"self()":{"notice":"Immutable contract address that actually attends all calls to this contract."},"upgradeRandomizeFee(uint256)":{"notice":"Mocks by ignoring any fee increase on a pending-to-be-solved randomness request."}},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Clonable.sol":{"Clonable":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"self","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"clone","type":"address"}],"name":"Cloned","type":"event"},{"inputs":[],"name":"clone","outputs":[{"internalType":"contract Clonable","name":"_instance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_salt","type":"bytes32"}],"name":"cloneDeterministic","outputs":[{"internalType":"contract Clonable","name":"_instance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cloned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"self","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{"clone()":{"details":"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`.See https://eips.ethereum.org/EIPS/eip-1167.See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/."},"cloneDeterministic(bytes32)":{"details":"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple times will revert, sinceno contract can be deployed more than once at the same address.See https://eips.ethereum.org/EIPS/eip-1167.See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/."},"initialize(bytes)":{"details":"Initialize contract's storage context."}},"stateVariables":{"self":{"details":"Differs from `address(this)` when reached within a DELEGATECALL."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"clone()":"09ed4607","cloneDeterministic(bytes32)":"daaa360c","cloned()":"a04daef0","initialize(bytes)":"439fab91","self()":"7104ddb2"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"self\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"clone\",\"type\":\"address\"}],\"name\":\"Cloned\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"clone\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_instance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_salt\",\"type\":\"bytes32\"}],\"name\":\"cloneDeterministic\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_instance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"self\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clone()\":{\"details\":\"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`.See https://eips.ethereum.org/EIPS/eip-1167.See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\"},\"cloneDeterministic(bytes32)\":{\"details\":\"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple times will revert, sinceno contract can be deployed more than once at the same address.See https://eips.ethereum.org/EIPS/eip-1167.See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\"},\"initialize(bytes)\":{\"details\":\"Initialize contract's storage context.\"}},\"stateVariables\":{\"self\":{\"details\":\"Differs from `address(this)` when reached within a DELEGATECALL.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"clone()\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage.\"},\"cloneDeterministic(bytes32)\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage.\"},\"cloned()\":{\"notice\":\"Tells whether this contract is a clone of another (i.e. `self()`)\"},\"self()\":{\"notice\":\"Immutable contract address that actually attends all calls to this contract.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Clonable.sol\":\"Clonable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Clonable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\n\\nabstract contract Clonable is Initializable {\\n    /// Immutable contract address that actually attends all calls to this contract.\\n    /// @dev Differs from `address(this)` when reached within a DELEGATECALL.\\n    address immutable public self = address(this);\\n\\n    event Cloned(address indexed by, Clonable indexed self, Clonable indexed clone);\\n\\n    /// Tells whether this contract is a clone of another (i.e. `self()`)\\n    function cloned()\\n        public view\\n        returns (bool)\\n    {\\n        return (\\n            address(this) != self\\n        );\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function clone()\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            // begin minimal proxy construction bytecode:\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE new instance:\\n            _instance := create(0, ptr, 0x37)\\n        }        \\n        require(address(_instance) != address(0), \\\"Clonable: CREATE failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple times will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function cloneDeterministic(bytes32 _salt)\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE2 new instance:\\n            _instance := create2(0, ptr, 0x37, _salt)\\n        }\\n        require(address(_instance) != address(0), \\\"Clonable: CREATE2 failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n}\\n\",\"keccak256\":\"0xbb8cfcfc7f44e289bd3dff357e1bb3da5809b2a39b58b7805aa3bfc1ec47ff2d\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{"clone()":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage."},"cloneDeterministic(bytes32)":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage."},"cloned()":{"notice":"Tells whether this contract is a clone of another (i.e. `self()`)"},"self()":{"notice":"Immutable contract address that actually attends all calls to this contract."}},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Context.sol":{"Context":{"abi":[],"devdoc":{"details":"Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned).","kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Provides information about the current execution context, including the sender of the transaction and its data. While these are generally available via msg.sender and msg.data, they should not be accessed in such a direct manner, since when dealing with meta-transactions the account sending and paying for execution may not be the actual sender (as far as an application is concerned).\",\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Context.sol\":\"Context\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Context.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity ^0.8.0;\\n\\n/// @dev Provides information about the current execution context, including the\\n/// sender of the transaction and its data. While these are generally available\\n/// via msg.sender and msg.data, they should not be accessed in such a direct\\n/// manner, since when dealing with meta-transactions the account sending and\\n/// paying for execution may not be the actual sender (as far as an application\\n/// is concerned).\\nabstract contract Context {\\n    function _msgSender() internal view virtual returns (address) {\\n        return msg.sender;\\n    }\\n\\n    function _msgData() internal view virtual returns (bytes calldata) {\\n        return msg.data;\\n    }\\n\\n    function _msgValue() internal view virtual returns (uint256) {\\n        return msg.value;\\n    }\\n}\\n\",\"keccak256\":\"0x1a17c0fd9fcd98aa49c5c428a415634b9db839e560f20da81f7c223a18ad12fc\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Destructible.sol":{"Destructible":{"abi":[{"inputs":[],"name":"destruct","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"kind":"dev","methods":{"destruct()":{"details":"Self-destruct the whole contract."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"destruct()":"2b68b9c6"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"destruct\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"destruct()\":{\"details\":\"Self-destruct the whole contract.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Destructible.sol\":\"Destructible\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Destructible.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Destructible {\\n    /// @dev Self-destruct the whole contract.\\n    function destruct() external;\\n}\\n\",\"keccak256\":\"0x58c9296ad2920fd26779933226ac807a70d6d70963965b781780e53f69625c87\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Initializable.sol":{"Initializable":{"abi":[{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"kind":"dev","methods":{"initialize(bytes)":{"details":"Initialize contract's storage context."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"initialize(bytes)":"439fab91"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"initialize(bytes)\":{\"details\":\"Initialize contract's storage context.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":\"Initializable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Ownable.sol":{"Ownable":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"details":"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. By default, the owner account will be the one that deploys the contract. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.","kind":"dev","methods":{"constructor":{"details":"Initializes the contract setting the deployer as the initial owner."},"owner()":{"details":"Returns the address of the current owner."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner."},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"owner()":"8da5cb5b","renounceOwnership()":"715018a6","transferOwnership(address)":"f2fde38b"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Contract module which provides a basic access control mechanism, where there is an account (an owner) that can be granted exclusive access to specific functions. By default, the owner account will be the one that deploys the contract. This can later be changed with {transferOwnership}. This module is used through inheritance. It will make available the modifier `onlyOwner`, which can be applied to your functions to restrict their use to the owner.\",\"kind\":\"dev\",\"methods\":{\"constructor\":{\"details\":\"Initializes the contract setting the deployer as the initial owner.\"},\"owner()\":{\"details\":\"Returns the address of the current owner.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Ownable.sol\":\"Ownable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Context.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity ^0.8.0;\\n\\n/// @dev Provides information about the current execution context, including the\\n/// sender of the transaction and its data. While these are generally available\\n/// via msg.sender and msg.data, they should not be accessed in such a direct\\n/// manner, since when dealing with meta-transactions the account sending and\\n/// paying for execution may not be the actual sender (as far as an application\\n/// is concerned).\\nabstract contract Context {\\n    function _msgSender() internal view virtual returns (address) {\\n        return msg.sender;\\n    }\\n\\n    function _msgData() internal view virtual returns (bytes calldata) {\\n        return msg.data;\\n    }\\n\\n    function _msgValue() internal view virtual returns (uint256) {\\n        return msg.value;\\n    }\\n}\\n\",\"keccak256\":\"0x1a17c0fd9fcd98aa49c5c428a415634b9db839e560f20da81f7c223a18ad12fc\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Ownable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n// OpenZeppelin Contracts v4.3.2 (access/Ownable.sol)\\n\\npragma solidity ^0.8.0;\\n\\nimport \\\"./Context.sol\\\";\\n\\n/// @dev Contract module which provides a basic access control mechanism, where\\n/// there is an account (an owner) that can be granted exclusive access to\\n/// specific functions.\\n///\\n/// By default, the owner account will be the one that deploys the contract. This\\n/// can later be changed with {transferOwnership}.\\n///\\n/// This module is used through inheritance. It will make available the modifier\\n/// `onlyOwner`, which can be applied to your functions to restrict their use to\\n/// the owner.\\n\\nabstract contract Ownable is Context {\\n    address private _owner;\\n\\n    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\\n\\n    /// @dev Initializes the contract setting the deployer as the initial owner.\\n    constructor() {\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    /// @dev Returns the address of the current owner.\\n    function owner() public view virtual returns (address) {\\n        return _owner;\\n    }\\n\\n    /// @dev Throws if called by any account other than the owner.\\n    modifier onlyOwner() {\\n        require(owner() == _msgSender(), \\\"Ownable: caller is not the owner\\\");\\n        _;\\n    }\\n\\n    /// @dev Leaves the contract without owner. It will not be possible to call\\n    /// `onlyOwner` functions anymore. Can only be called by the current owner.\\n    /// NOTE: Renouncing ownership will leave the contract without an owner,\\n    /// thereby removing any functionality that is only available to the owner.\\n    function renounceOwnership() public virtual onlyOwner {\\n        _transferOwnership(address(0));\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Can only be called by the current owner.\\n    function transferOwnership(address newOwner) public virtual onlyOwner {\\n        require(newOwner != address(0), \\\"Ownable: new owner is the zero address\\\");\\n        _transferOwnership(newOwner);\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Internal function without access restriction.\\n    function _transferOwnership(address newOwner) internal virtual {\\n        address oldOwner = _owner;\\n        _owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n}\",\"keccak256\":\"0xb8ce9f1e03440d40dbb9898c5ec2cfad520ccd3a5c76176058c44f5033c656a2\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8003,"contract":"witnet-solidity-bridge/contracts/patterns/Ownable.sol:Ownable","label":"_owner","offset":0,"slot":"0","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"}}},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Payable.sol":{"Payable":{"abi":[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Received","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"currency","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"currency()":"e5a6b10f"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Received\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"currency\",\"outputs\":[{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Payable.sol\":\"Payable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IERC20.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/**\\n * @dev Interface of the ERC20 standard as defined in the EIP.\\n */\\ninterface IERC20 {\\n    /// Returns the amount of tokens in existence.\\n    function totalSupply() external view returns (uint256);\\n\\n    /// Returns the amount of tokens owned by `_account`.\\n    function balanceOf(address _account) external view returns (uint256);\\n\\n    /// Moves `_amount` tokens from the caller's account to `_recipient`.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event.\\n    function transfer(address _recipient, uint256 _amount) external returns (bool);\\n\\n    /// Returns the remaining number of tokens that `_spender` will be\\n    /// allowed to spend on behalf of `_owner` through {transferFrom}. This is\\n    /// zero by default.\\n    /// This value changes when {approve} or {transferFrom} are called.\\n    function allowance(address _owner, address _spender) external view returns (uint256);\\n\\n    /// Sets `_amount` as the allowance of `_spender` over the caller's tokens.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// \\n    /// IMPORTANT: Beware that changing an allowance with this method brings the risk\\n    /// that someone may use both the old and the new allowance by unfortunate\\n    /// transaction ordering. One possible solution to mitigate this race\\n    /// condition is to first reduce the spender's allowance to 0 and set the\\n    /// desired value afterwards:\\n    /// https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\\n    ///\\n    /// Emits an {Approval} event.     \\n    function approve(address _spender, uint256 _amount) external returns (bool);\\n\\n    /// Moves `amount` tokens from `_sender` to `_recipient` using the\\n    /// allowance mechanism. `amount` is then deducted from the caller's\\n    /// allowance.\\n    /// Returns a boolean value indicating whether the operation succeeded.\\n    /// Emits a {Transfer} event. \\n    function transferFrom(\\n        address _sender,\\n        address _recipient,\\n        uint256 _amount\\n    ) external returns (bool);\\n\\n    /// Emitted when `value` tokens are moved from one account (`from`) to\\n    /// another (`to`).\\n    /// Note that `:value` may be zero.\\n    event Transfer(address indexed from, address indexed to, uint256 value);\\n\\n    /// Emitted when the allowance of a `spender` for an `owner` is set by\\n    /// a call to {approve}. `value` is the new allowance.\\n    event Approval(address indexed owner, address indexed spender, uint256 value);\\n}\\n\",\"keccak256\":\"0xd6b25613fab1f6172ca58e377371a0b708f1af8982961364fecf9da196213f48\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Payable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"../interfaces/IERC20.sol\\\";\\n\\nabstract contract Payable {\\n    IERC20 public immutable currency;\\n\\n    event Received(address from, uint256 amount);\\n    event Transfer(address to, uint256 amount);\\n\\n    constructor(address _currency) {\\n        currency = IERC20(_currency);\\n    }\\n\\n    /// Gets current transaction price.\\n    function _getGasPrice() internal view virtual returns (uint256);\\n\\n    /// Gets current payment value.\\n    function _getMsgValue() internal view virtual returns (uint256);\\n\\n    /// Perform safe transfer or whatever token is used for paying rewards.\\n    function _safeTransferTo(address payable, uint256) internal virtual;\\n}\\n\",\"keccak256\":\"0xc7f50e489030643b7f061512ad0d8430abc87351941a77589f6b06376c5831b9\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Proxiable.sol":{"Proxiable":{"abi":[{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"}],"devdoc":{"kind":"dev","methods":{"proxiableUUID()":{"details":"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"proxiableUUID()":"52d1902d"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"proxiableUUID()\":{\"details\":\"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":\"Proxiable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/patterns/Upgradable.sol":{"Upgradable":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"baseAddr","type":"address"},{"indexed":true,"internalType":"bytes32","name":"baseCodehash","type":"bytes32"},{"indexed":false,"internalType":"bytes32","name":"versionTag","type":"bytes32"}],"name":"Upgraded","type":"event"},{"inputs":[],"name":"base","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"codehash","outputs":[{"internalType":"bytes32","name":"_codehash","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isUpgradable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"isUpgradableFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"version","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"}],"devdoc":{"events":{"Upgraded(address,address,bytes32,bytes32)":{"params":{"baseAddr":"The address of the new implementation contract.","baseCodehash":"The EVM-codehash of the new implementation contract.","from":"The address who ordered the upgrading. Namely, the WRB operator in \"trustable\" implementations.","versionTag":"Ascii-encoded version literal with which the implementation deployer decided to tag it."}}},"kind":"dev","methods":{"base()":{"details":"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern."},"codehash()":{"details":"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.","returns":{"_codehash":"This contracts immutable codehash."}},"initialize(bytes)":{"details":"Initialize contract's storage context."},"isUpgradable()":{"details":"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling."},"isUpgradableFrom(address)":{"details":"Tells whether provided address could eventually upgrade the contract."},"proxiableUUID()":{"details":"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822."},"version()":{"details":"Retrieves human-redable named version of current implementation."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"base()":"5001f3b5","codehash()":"a9e954b9","initialize(bytes)":"439fab91","isUpgradable()":"5479d940","isUpgradableFrom(address)":"6b58960a","proxiableUUID()":"52d1902d","version()":"54fd4d50"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"baseAddr\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"baseCodehash\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32\",\"name\":\"versionTag\",\"type\":\"bytes32\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"base\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"codehash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"_codehash\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isUpgradable\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"}],\"name\":\"isUpgradableFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"version\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"Upgraded(address,address,bytes32,bytes32)\":{\"params\":{\"baseAddr\":\"The address of the new implementation contract.\",\"baseCodehash\":\"The EVM-codehash of the new implementation contract.\",\"from\":\"The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\",\"versionTag\":\"Ascii-encoded version literal with which the implementation deployer decided to tag it.\"}}},\"kind\":\"dev\",\"methods\":{\"base()\":{\"details\":\"Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\"},\"codehash()\":{\"details\":\"Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\",\"returns\":{\"_codehash\":\"This contracts immutable codehash.\"}},\"initialize(bytes)\":{\"details\":\"Initialize contract's storage context.\"},\"isUpgradable()\":{\"details\":\"Determines whether current instance allows being upgraded.Returned value should be invariant from whoever is calling.\"},\"isUpgradableFrom(address)\":{\"details\":\"Tells whether provided address could eventually upgrade the contract.\"},\"proxiableUUID()\":{\"details\":\"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822.\"},\"version()\":{\"details\":\"Retrieves human-redable named version of current implementation.\"}},\"version\":1},\"userdoc\":{\"events\":{\"Upgraded(address,address,bytes32,bytes32)\":{\"notice\":\"Emitted every time the contract gets upgraded.\"}},\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":\"Upgradable\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Upgradable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\n/* solhint-disable var-name-mixedcase */\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\nimport \\\"./Proxiable.sol\\\";\\n\\nabstract contract Upgradable is Initializable, Proxiable {\\n\\n    address internal immutable _BASE;\\n    bytes32 internal immutable _CODEHASH;\\n    bool internal immutable _UPGRADABLE;\\n\\n    /// Emitted every time the contract gets upgraded.\\n    /// @param from The address who ordered the upgrading. Namely, the WRB operator in \\\"trustable\\\" implementations.\\n    /// @param baseAddr The address of the new implementation contract.\\n    /// @param baseCodehash The EVM-codehash of the new implementation contract.\\n    /// @param versionTag Ascii-encoded version literal with which the implementation deployer decided to tag it.\\n    event Upgraded(\\n        address indexed from,\\n        address indexed baseAddr,\\n        bytes32 indexed baseCodehash,\\n        bytes32 versionTag\\n    );\\n\\n    constructor (bool _isUpgradable) {\\n        address _base = address(this);\\n        bytes32 _codehash;        \\n        assembly {\\n            _codehash := extcodehash(_base)\\n        }\\n        _BASE = _base;\\n        _CODEHASH = _codehash;        \\n        _UPGRADABLE = _isUpgradable;\\n    }\\n\\n    /// @dev Tells whether provided address could eventually upgrade the contract.\\n    function isUpgradableFrom(address from) virtual external view returns (bool);\\n\\n\\n    /// TODO: the following methods should be all declared as pure \\n    ///       whenever this Solidity's PR gets merged and released: \\n    ///       https://github.com/ethereum/solidity/pull/10240\\n\\n    /// @dev Retrieves base contract. Differs from address(this) when via delegate-proxy pattern.\\n    function base() public view returns (address) {\\n        return _BASE;\\n    }\\n\\n    /// @dev Retrieves the immutable codehash of this contract, even if invoked as delegatecall.\\n    /// @return _codehash This contracts immutable codehash.\\n    function codehash() public view returns (bytes32 _codehash) {\\n        return _CODEHASH;\\n    }\\n    \\n    /// @dev Determines whether current instance allows being upgraded.\\n    /// @dev Returned value should be invariant from whoever is calling.\\n    function isUpgradable() public view returns (bool) {        \\n        return _UPGRADABLE;\\n    }\\n\\n    /// @dev Retrieves human-redable named version of current implementation.\\n    function version() virtual public view returns (bytes32); \\n}\",\"keccak256\":\"0x91a8c88f85a691bafab375a8a38361f1dae551530755989636531468870ead98\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[],"types":null},"userdoc":{"events":{"Upgraded(address,address,bytes32,bytes32)":{"notice":"Emitted every time the contract gets upgraded."}},"kind":"user","methods":{},"version":1}}},"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol":{"WitnetRequestBase":{"abi":[{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"bytecode()":"f0940002","hash()":"09bd5a60"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol\":\"WitnetRequestBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\nabstract contract WitnetRequestBase\\n    is\\n        IWitnetRequest\\n{\\n    /// Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\\n    bytes public override bytecode;\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    bytes32 public override hash;\\n}\\n\",\"keccak256\":\"0x1a3220346005ca91601a89896523f67bdd0fd3dc79b6e684d3e5dbf20f11c5ab\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8265,"contract":"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol:WitnetRequestBase","label":"bytecode","offset":0,"slot":"0","type":"t_bytes_storage"},{"astId":8269,"contract":"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol:WitnetRequestBase","label":"hash","offset":0,"slot":"1","type":"t_bytes32"}],"types":{"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"}}},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers."},"hash()":{"notice":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."}},"version":1}}},"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol":{"WitnetRequestInitializableBase":{"abi":[{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_bytecode","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"}],"devdoc":{"kind":"dev","methods":{},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"bytecode()":"f0940002","hash()":"09bd5a60","initialize(bytes)":"439fab91"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_bytecode\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\":\"WitnetRequestInitializableBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\n\\nabstract contract WitnetRequestBase\\n    is\\n        IWitnetRequest\\n{\\n    /// Contains a well-formed Witnet Data Request, encoded using Protocol Buffers.\\n    bytes public override bytecode;\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    bytes32 public override hash;\\n}\\n\",\"keccak256\":\"0x1a3220346005ca91601a89896523f67bdd0fd3dc79b6e684d3e5dbf20f11c5ab\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetRequestBase.sol\\\";\\nimport \\\"../patterns/Initializable.sol\\\";\\n\\nabstract contract WitnetRequestInitializableBase\\n    is\\n        Initializable,\\n        WitnetRequestBase\\n{\\n    using Witnet for bytes;\\n    function initialize(bytes memory _bytecode)\\n        public\\n        virtual override\\n    {\\n        require(\\n            bytecode.length == 0,\\n            \\\"WitnetRequestInitializableBase: cannot change bytecode\\\"\\n        );\\n        bytecode = _bytecode;\\n        hash = _bytecode.hash();\\n    }\\n}\\n\",\"keccak256\":\"0x9d2956ca1e83989996c70e5419130dc95168cf6cfeee39f4896b13d0505f78b0\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8265,"contract":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol:WitnetRequestInitializableBase","label":"bytecode","offset":0,"slot":"0","type":"t_bytes_storage"},{"astId":8269,"contract":"witnet-solidity-bridge/contracts/requests/WitnetRequestInitializableBase.sol:WitnetRequestInitializableBase","label":"hash","offset":0,"slot":"1","type":"t_bytes32"}],"types":{"t_bytes32":{"encoding":"inplace","label":"bytes32","numberOfBytes":"32"},"t_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"}}},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"Contains a well-formed Witnet Data Request, encoded using Protocol Buffers."},"hash()":{"notice":"Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes."}},"version":1}}},"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol":{"WitnetRequestMalleableBase":{"abi":[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"self","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"clone","type":"address"}],"name":"Cloned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":false,"internalType":"uint8","name":"numWitnesses","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"minWitnessingConsensus","type":"uint8"},{"indexed":false,"internalType":"uint64","name":"witnssingCollateral","type":"uint64"},{"indexed":false,"internalType":"uint64","name":"witnessingReward","type":"uint64"},{"indexed":false,"internalType":"uint64","name":"witnessingUnitaryFee","type":"uint64"}],"name":"WitnessingParamsChanged","type":"event"},{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clone","outputs":[{"internalType":"contract Clonable","name":"_instance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_salt","type":"bytes32"}],"name":"cloneDeterministic","outputs":[{"internalType":"contract Clonable","name":"_instance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cloned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"_template","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"self","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint64","name":"_witnessingCollateral","type":"uint64"}],"name":"setWitnessingCollateral","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint64","name":"_witnessingReward","type":"uint64"},{"internalType":"uint64","name":"_witnessingUnitaryFee","type":"uint64"}],"name":"setWitnessingFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"_numWitnesses","type":"uint8"},{"internalType":"uint8","name":"_minWitnessingConsensus","type":"uint8"}],"name":"setWitnessingQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"template","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWitnessingCollateral","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWitnessingFee","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"witnessingParams","outputs":[{"components":[{"internalType":"uint8","name":"numWitnesses","type":"uint8"},{"internalType":"uint8","name":"minWitnessingConsensus","type":"uint8"},{"internalType":"uint64","name":"witnessingCollateral","type":"uint64"},{"internalType":"uint64","name":"witnessingReward","type":"uint64"},{"internalType":"uint64","name":"witnessingUnitaryFee","type":"uint64"}],"internalType":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams","name":"","type":"tuple"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{"clone()":{"details":"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`."},"cloneDeterministic(bytes32)":{"details":"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address."},"initialize(bytes)":{"details":"Initializes contract's storage context."},"proxiableUUID()":{"details":"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner."},"setWitnessingFees(uint64,uint64)":{"params":{"_witnessingReward":"Amount of nanowits that every request-solving witness will be rewarded with.","_witnessingUnitaryFee":"Amount of nanowits that will be earned by Witnet miners for each each valid  commit/reveal transaction they include in a block."}},"setWitnessingQuorum(uint8,uint8)":{"params":{"_minWitnessingConsensus":"Threshold percentage for aborting resolution of a request if the witnessing  nodes did not arrive to a broad consensus.","_numWitnesses":"Number of witnesses required to be involved for solving this Witnet Data Request."}},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"evm":{"bytecode":{"functionDebugData":{},"generatedSources":[],"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"deployedBytecode":{"functionDebugData":{},"generatedSources":[],"immutableReferences":{},"linkReferences":{},"object":"","opcodes":"","sourceMap":""},"gasEstimates":null,"methodIdentifiers":{"bytecode()":"f0940002","clone()":"09ed4607","cloneDeterministic(bytes32)":"daaa360c","cloned()":"a04daef0","hash()":"09bd5a60","initialize(bytes)":"439fab91","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","renounceOwnership()":"715018a6","self()":"7104ddb2","setWitnessingCollateral(uint64)":"d9b9a961","setWitnessingFees(uint64,uint64)":"ff21c3ba","setWitnessingQuorum(uint8,uint8)":"d196c2e3","template()":"6f2ddd93","totalWitnessingCollateral()":"ef53d97a","totalWitnessingFee()":"8a481dad","transferOwnership(address)":"f2fde38b","witnessingParams()":"48f9b831"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"self\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"clone\",\"type\":\"address\"}],\"name\":\"Cloned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"numWitnesses\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"minWitnessingConsensus\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"witnssingCollateral\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"witnessingReward\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"witnessingUnitaryFee\",\"type\":\"uint64\"}],\"name\":\"WitnessingParamsChanged\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clone\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_instance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_salt\",\"type\":\"bytes32\"}],\"name\":\"cloneDeterministic\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_instance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_template\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"self\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_witnessingCollateral\",\"type\":\"uint64\"}],\"name\":\"setWitnessingCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_witnessingReward\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"_witnessingUnitaryFee\",\"type\":\"uint64\"}],\"name\":\"setWitnessingFees\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_numWitnesses\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"_minWitnessingConsensus\",\"type\":\"uint8\"}],\"name\":\"setWitnessingQuorum\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"template\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalWitnessingCollateral\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalWitnessingFee\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnessingParams\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"numWitnesses\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"minWitnessingConsensus\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessingCollateral\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"witnessingReward\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"witnessingUnitaryFee\",\"type\":\"uint64\"}],\"internalType\":\"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clone()\":{\"details\":\"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`.\"},\"cloneDeterministic(bytes32)\":{\"details\":\"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address.\"},\"initialize(bytes)\":{\"details\":\"Initializes contract's storage context.\"},\"proxiableUUID()\":{\"details\":\"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"setWitnessingFees(uint64,uint64)\":{\"params\":{\"_witnessingReward\":\"Amount of nanowits that every request-solving witness will be rewarded with.\",\"_witnessingUnitaryFee\":\"Amount of nanowits that will be earned by Witnet miners for each each valid  commit/reveal transaction they include in a block.\"}},\"setWitnessingQuorum(uint8,uint8)\":{\"params\":{\"_minWitnessingConsensus\":\"Threshold percentage for aborting resolution of a request if the witnessing  nodes did not arrive to a broad consensus.\",\"_numWitnesses\":\"Number of witnesses required to be involved for solving this Witnet Data Request.\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\"},\"clone()\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage.\"},\"cloneDeterministic(bytes32)\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage.\"},\"cloned()\":{\"notice\":\"Tells whether this contract is a clone of another (i.e. `self()`)\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of current Witnet Data Request bytecode.\"},\"owner()\":{\"notice\":\"Returns the address of the current owner.\"},\"self()\":{\"notice\":\"Immutable contract address that actually attends all calls to this contract.\"},\"setWitnessingCollateral(uint64)\":{\"notice\":\"Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\"},\"setWitnessingFees(uint64,uint64)\":{\"notice\":\"Specifies how much you want to pay for rewarding each of the Witnet nodes.\"},\"setWitnessingQuorum(uint8,uint8)\":{\"notice\":\"Sets how many Witnet nodes will be \\\"hired\\\" for resolving the request.\"},\"template()\":{\"notice\":\"Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol level, including no witnessing parameters at all.\"},\"totalWitnessingCollateral()\":{\"notice\":\"Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\"},\"totalWitnessingFee()\":{\"notice\":\"Returns total amount of nanowits that will have to be paid in total for this request to be solved.\"},\"witnessingParams()\":{\"notice\":\"Returns witnessing parameters of current Witnet Data Request.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol\":\"WitnetRequestMalleableBase\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Clonable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\n\\nabstract contract Clonable is Initializable {\\n    /// Immutable contract address that actually attends all calls to this contract.\\n    /// @dev Differs from `address(this)` when reached within a DELEGATECALL.\\n    address immutable public self = address(this);\\n\\n    event Cloned(address indexed by, Clonable indexed self, Clonable indexed clone);\\n\\n    /// Tells whether this contract is a clone of another (i.e. `self()`)\\n    function cloned()\\n        public view\\n        returns (bool)\\n    {\\n        return (\\n            address(this) != self\\n        );\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function clone()\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            // begin minimal proxy construction bytecode:\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE new instance:\\n            _instance := create(0, ptr, 0x37)\\n        }        \\n        require(address(_instance) != address(0), \\\"Clonable: CREATE failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple times will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function cloneDeterministic(bytes32 _salt)\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE2 new instance:\\n            _instance := create2(0, ptr, 0x37, _salt)\\n        }\\n        require(address(_instance) != address(0), \\\"Clonable: CREATE2 failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n}\\n\",\"keccak256\":\"0xbb8cfcfc7f44e289bd3dff357e1bb3da5809b2a39b58b7805aa3bfc1ec47ff2d\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Context.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity ^0.8.0;\\n\\n/// @dev Provides information about the current execution context, including the\\n/// sender of the transaction and its data. While these are generally available\\n/// via msg.sender and msg.data, they should not be accessed in such a direct\\n/// manner, since when dealing with meta-transactions the account sending and\\n/// paying for execution may not be the actual sender (as far as an application\\n/// is concerned).\\nabstract contract Context {\\n    function _msgSender() internal view virtual returns (address) {\\n        return msg.sender;\\n    }\\n\\n    function _msgData() internal view virtual returns (bytes calldata) {\\n        return msg.data;\\n    }\\n\\n    function _msgValue() internal view virtual returns (uint256) {\\n        return msg.value;\\n    }\\n}\\n\",\"keccak256\":\"0x1a17c0fd9fcd98aa49c5c428a415634b9db839e560f20da81f7c223a18ad12fc\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Ownable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n// OpenZeppelin Contracts v4.3.2 (access/Ownable.sol)\\n\\npragma solidity ^0.8.0;\\n\\nimport \\\"./Context.sol\\\";\\n\\n/// @dev Contract module which provides a basic access control mechanism, where\\n/// there is an account (an owner) that can be granted exclusive access to\\n/// specific functions.\\n///\\n/// By default, the owner account will be the one that deploys the contract. This\\n/// can later be changed with {transferOwnership}.\\n///\\n/// This module is used through inheritance. It will make available the modifier\\n/// `onlyOwner`, which can be applied to your functions to restrict their use to\\n/// the owner.\\n\\nabstract contract Ownable is Context {\\n    address private _owner;\\n\\n    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\\n\\n    /// @dev Initializes the contract setting the deployer as the initial owner.\\n    constructor() {\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    /// @dev Returns the address of the current owner.\\n    function owner() public view virtual returns (address) {\\n        return _owner;\\n    }\\n\\n    /// @dev Throws if called by any account other than the owner.\\n    modifier onlyOwner() {\\n        require(owner() == _msgSender(), \\\"Ownable: caller is not the owner\\\");\\n        _;\\n    }\\n\\n    /// @dev Leaves the contract without owner. It will not be possible to call\\n    /// `onlyOwner` functions anymore. Can only be called by the current owner.\\n    /// NOTE: Renouncing ownership will leave the contract without an owner,\\n    /// thereby removing any functionality that is only available to the owner.\\n    function renounceOwnership() public virtual onlyOwner {\\n        _transferOwnership(address(0));\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Can only be called by the current owner.\\n    function transferOwnership(address newOwner) public virtual onlyOwner {\\n        require(newOwner != address(0), \\\"Ownable: new owner is the zero address\\\");\\n        _transferOwnership(newOwner);\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Internal function without access restriction.\\n    function _transferOwnership(address newOwner) internal virtual {\\n        address oldOwner = _owner;\\n        _owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n}\",\"keccak256\":\"0xb8ce9f1e03440d40dbb9898c5ec2cfad520ccd3a5c76176058c44f5033c656a2\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\nimport \\\"../patterns/Clonable.sol\\\";\\nimport \\\"../patterns/Ownable.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\n\\nabstract contract WitnetRequestMalleableBase\\n    is\\n        IWitnetRequest,\\n        Clonable,\\n        Ownable,\\n        Proxiable\\n{   \\n    using Witnet for *;\\n\\n    event WitnessingParamsChanged(\\n        address indexed by,\\n        uint8 numWitnesses,\\n        uint8 minWitnessingConsensus,\\n        uint64 witnssingCollateral,\\n        uint64 witnessingReward,\\n        uint64 witnessingUnitaryFee\\n    );\\n\\n    struct WitnetRequestMalleableBaseContext {\\n        /// Contract owner address.\\n        address owner;\\n        /// Immutable bytecode template.\\n        bytes template;\\n        /// Current request bytecode.\\n        bytes bytecode;\\n        /// Current request hash.\\n        bytes32 hash;\\n        /// Current request witnessing params.\\n        WitnetRequestWitnessingParams params;\\n    }\\n\\n    struct WitnetRequestWitnessingParams {\\n        /// Number of witnesses required to be involved for solving this Witnet Data Request.\\n        uint8 numWitnesses;\\n\\n        /// Threshold percentage for aborting resolution of a request if the witnessing nodes did not arrive to a broad consensus.\\n        uint8 minWitnessingConsensus;\\n\\n        /// Amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n        uint64 witnessingCollateral;\\n\\n        /// Amount of nanowits that every request-solving witness will be rewarded with.\\n        uint64 witnessingReward;\\n\\n        /// Amount of nanowits that will be earned by Witnet miners for each each valid commit/reveal transaction they include in a block.\\n        uint64 witnessingUnitaryFee;\\n    }\\n\\n    /// Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\\n    function bytecode() external view override returns (bytes memory) {\\n        return _request().bytecode;\\n    }\\n\\n    /// Returns SHA256 hash of current Witnet Data Request bytecode.\\n    function hash() external view override returns (bytes32) {\\n        return _request().hash;\\n    }\\n\\n    /// Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n    function setWitnessingCollateral(uint64 _witnessingCollateral)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingCollateral = _witnessingCollateral;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Specifies how much you want to pay for rewarding each of the Witnet nodes.\\n    /// @param _witnessingReward Amount of nanowits that every request-solving witness will be rewarded with.\\n    /// @param _witnessingUnitaryFee Amount of nanowits that will be earned by Witnet miners for each each valid \\n    /// commit/reveal transaction they include in a block.\\n    function setWitnessingFees(uint64 _witnessingReward, uint64 _witnessingUnitaryFee)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingReward = _witnessingReward;\\n        _params.witnessingUnitaryFee = _witnessingUnitaryFee;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Sets how many Witnet nodes will be \\\"hired\\\" for resolving the request.\\n    /// @param _numWitnesses Number of witnesses required to be involved for solving this Witnet Data Request.\\n    /// @param _minWitnessingConsensus Threshold percentage for aborting resolution of a request if the witnessing \\n    /// nodes did not arrive to a broad consensus.\\n    function setWitnessingQuorum(uint8 _numWitnesses, uint8 _minWitnessingConsensus)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = _numWitnesses;\\n        _params.minWitnessingConsensus = _minWitnessingConsensus;\\n        _malleateBytecode(\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol\\n    /// level, including no witnessing parameters at all.\\n    function template()\\n        external view\\n        returns (bytes memory)\\n    {\\n        return _request().template;\\n    }\\n\\n    /// Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\\n    function totalWitnessingCollateral()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * _params.witnessingCollateral;\\n    }\\n\\n    /// Returns total amount of nanowits that will have to be paid in total for this request to be solved.\\n    function totalWitnessingFee()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * (2 * _params.witnessingUnitaryFee + _params.witnessingReward);\\n    }\\n\\n    /// Returns witnessing parameters of current Witnet Data Request.\\n    function witnessingParams()\\n        external view\\n        returns (WitnetRequestWitnessingParams memory)\\n    {\\n        return _request().params;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    function clone()\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.clone();\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    function cloneDeterministic(bytes32 _salt)\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.cloneDeterministic(_salt);\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\\n\\n    /// @dev Initializes contract's storage context.\\n    function initialize(bytes memory _template)\\n        public\\n        virtual override\\n    {\\n        require(_request().template.length == 0, \\\"WitnetRequestMalleableBase: already initialized\\\");\\n        _initialize(_template);\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Ownable' overriden functions ------------------------------------------------------------------------------\\n\\n    /// Returns the address of the current owner.\\n    function owner()\\n        public view\\n        virtual override\\n        returns (address)\\n    {\\n        return _request().owner;\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    function _transferOwnership(address newOwner)\\n        internal\\n        virtual override\\n    {\\n        address oldOwner = _request().owner;\\n        _request().owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Proxiable 'overriden functions ----------------------------------------------------------------------------\\n\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID()\\n        external pure\\n        virtual override\\n        returns (bytes32)\\n    {\\n        return (\\n            /* keccak256(\\\"io.witnet.requests.malleable\\\") */\\n            0x851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c2\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------    \\n\\n    /// @dev Initializes witnessing params and template bytecode.\\n    function _initialize(bytes memory _template)\\n        internal\\n    {\\n        assert(_template.length > 0);\\n        _request().template = _template;\\n\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = 2;\\n        _params.minWitnessingConsensus = 51;\\n        _params.witnessingCollateral = 10 ** 9;      // 1 WIT\\n        _params.witnessingReward = 5 * 10 ** 5;      // 0.5 milliWITs\\n        _params.witnessingUnitaryFee = 25 * 10 ** 4; // 0.25 milliWITs\\n        \\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Serializes new `bytecode` by combining immutable template with given parameters.\\n    function _malleateBytecode(\\n            uint8 _numWitnesses,\\n            uint8 _minWitnessingConsensus,\\n            uint64 _witnessingCollateral,\\n            uint64 _witnessingReward,\\n            uint64 _witnessingUnitaryFee\\n        )\\n        internal\\n        virtual\\n    {\\n        require(\\n            _witnessingReward > 0,\\n            \\\"WitnetRequestMalleableBase: no reward\\\"\\n        );\\n        require(\\n            _numWitnesses >= 1 && _numWitnesses <= 127,\\n            \\\"WitnetRequestMalleableBase: number of witnesses out of range\\\"\\n        );\\n        require(\\n            _minWitnessingConsensus >= 51 && _minWitnessingConsensus <= 99,\\n            \\\"WitnetRequestMalleableBase: witnessing consensus out of range\\\"\\n        );\\n        require(\\n            _witnessingCollateral >= 10 ** 9,\\n            \\\"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\\\"\\n        );\\n\\n        _request().bytecode = abi.encodePacked(\\n            _request().template,\\n            _uint64varint(bytes1(0x10), _witnessingReward),\\n            _uint8varint(bytes1(0x18), _numWitnesses),\\n            _uint64varint(0x20, _witnessingUnitaryFee),\\n            _uint8varint(0x28, _minWitnessingConsensus),\\n            _uint64varint(0x30, _witnessingCollateral)\\n        );\\n        _request().hash = _request().bytecode.hash();\\n        emit WitnessingParamsChanged(\\n            msg.sender,\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Returns pointer to storage slot where State struct is located.\\n    function _request()\\n        internal pure\\n        virtual\\n        returns (WitnetRequestMalleableBaseContext storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot :=\\n                /* keccak256(\\\"io.witnet.requests.malleable.context\\\") */\\n                0x375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7\\n        }\\n    }\\n\\n    /// @dev Encode uint64 into tagged varint.\\n    /// @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint64varint(bytes1 t, uint64 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        // Count the number of groups of 7 bits\\n        // We need this pre-processing step since Solidity doesn't allow dynamic memory resizing\\n        uint64 tmp = n;\\n        uint64 numBytes = 2;\\n        while (tmp > 0x7F) {\\n            tmp = tmp >> 7;\\n            numBytes += 1;\\n        }\\n        bytes memory buf = new bytes(numBytes);\\n        tmp = n;\\n        buf[0] = t;\\n        for (uint64 i = 1; i < numBytes; i++) {\\n            // Set the first bit in the byte for each group of 7 bits\\n            buf[i] = bytes1(0x80 | uint8(tmp & 0x7F));\\n            tmp = tmp >> 7;\\n        }\\n        // Unset the first bit of the last byte\\n        buf[numBytes - 1] &= 0x7F;\\n        return buf;\\n    }\\n\\n    /// @dev Encode uint8 into tagged varint.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint8varint(bytes1 t, uint8 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        return _uint64varint(t, uint64(n));\\n    }\\n}\\n\",\"keccak256\":\"0x53d0d402776e310c678643ed6b07d4f73511de9d1fa73732abf4251d69755b22\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8003,"contract":"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol:WitnetRequestMalleableBase","label":"_owner","offset":0,"slot":"0","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"}}},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"Returns current Witnet Data Request bytecode, encoded using Protocol Buffers."},"clone()":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage."},"cloneDeterministic(bytes32)":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage."},"cloned()":{"notice":"Tells whether this contract is a clone of another (i.e. `self()`)"},"hash()":{"notice":"Returns SHA256 hash of current Witnet Data Request bytecode."},"owner()":{"notice":"Returns the address of the current owner."},"self()":{"notice":"Immutable contract address that actually attends all calls to this contract."},"setWitnessingCollateral(uint64)":{"notice":"Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction."},"setWitnessingFees(uint64,uint64)":{"notice":"Specifies how much you want to pay for rewarding each of the Witnet nodes."},"setWitnessingQuorum(uint8,uint8)":{"notice":"Sets how many Witnet nodes will be \"hired\" for resolving the request."},"template()":{"notice":"Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol level, including no witnessing parameters at all."},"totalWitnessingCollateral()":{"notice":"Returns total amount of nanowits that witnessing nodes will need to collateralize all together."},"totalWitnessingFee()":{"notice":"Returns total amount of nanowits that will have to be paid in total for this request to be solved."},"witnessingParams()":{"notice":"Returns witnessing parameters of current Witnet Data Request."}},"version":1}}},"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol":{"WitnetRequestRandomness":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"self","type":"address"},{"indexed":true,"internalType":"contract Clonable","name":"clone","type":"address"}],"name":"Cloned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"by","type":"address"},{"indexed":false,"internalType":"uint8","name":"numWitnesses","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"minWitnessingConsensus","type":"uint8"},{"indexed":false,"internalType":"uint64","name":"witnssingCollateral","type":"uint64"},{"indexed":false,"internalType":"uint64","name":"witnessingReward","type":"uint64"},{"indexed":false,"internalType":"uint64","name":"witnessingUnitaryFee","type":"uint64"}],"name":"WitnessingParamsChanged","type":"event"},{"inputs":[],"name":"bytecode","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clone","outputs":[{"internalType":"contract Clonable","name":"_instance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_salt","type":"bytes32"}],"name":"cloneDeterministic","outputs":[{"internalType":"contract Clonable","name":"_instance","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cloned","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"hash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"self","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint64","name":"_witnessingCollateral","type":"uint64"}],"name":"setWitnessingCollateral","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint64","name":"_witnessingReward","type":"uint64"},{"internalType":"uint64","name":"_witnessingUnitaryFee","type":"uint64"}],"name":"setWitnessingFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"_numWitnesses","type":"uint8"},{"internalType":"uint8","name":"_minWitnessingConsensus","type":"uint8"}],"name":"setWitnessingQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"template","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWitnessingCollateral","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWitnessingFee","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"witnessingParams","outputs":[{"components":[{"internalType":"uint8","name":"numWitnesses","type":"uint8"},{"internalType":"uint8","name":"minWitnessingConsensus","type":"uint8"},{"internalType":"uint64","name":"witnessingCollateral","type":"uint64"},{"internalType":"uint64","name":"witnessingReward","type":"uint64"},{"internalType":"uint64","name":"witnessingUnitaryFee","type":"uint64"}],"internalType":"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams","name":"","type":"tuple"}],"stateMutability":"view","type":"function"}],"devdoc":{"kind":"dev","methods":{"clone()":{"details":"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`."},"cloneDeterministic(bytes32)":{"details":"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address."},"proxiableUUID()":{"details":"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822."},"renounceOwnership()":{"details":"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner."},"setWitnessingFees(uint64,uint64)":{"params":{"_witnessingReward":"Amount of nanowits that every request-solving witness will be rewarded with.","_witnessingUnitaryFee":"Amount of nanowits that will be earned by Witnet miners for each each valid  commit/reveal transaction they include in a block."}},"setWitnessingQuorum(uint8,uint8)":{"params":{"_minWitnessingConsensus":"Threshold percentage for aborting resolution of a request if the witnessing  nodes did not arrive to a broad consensus.","_numWitnesses":"Number of witnesses required to be involved for solving this Witnet Data Request."}},"transferOwnership(address)":{"details":"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner."}},"version":1},"evm":{"bytecode":{"functionDebugData":{"@_8019":{"entryPoint":null,"id":8019,"parameterSlots":0,"returnSlots":0},"@_9058":{"entryPoint":null,"id":9058,"parameterSlots":0,"returnSlots":0},"@_initialize_8805":{"entryPoint":655,"id":8805,"parameterSlots":1,"returnSlots":0},"@_malleateBytecode_8915":{"entryPoint":1071,"id":8915,"parameterSlots":5,"returnSlots":0},"@_msgSender_7960":{"entryPoint":142,"id":7960,"parameterSlots":0,"returnSlots":1},"@_request_8924":{"entryPoint":460,"id":8924,"parameterSlots":0,"returnSlots":1},"@_transferOwnership_8714":{"entryPoint":150,"id":8714,"parameterSlots":1,"returnSlots":0},"@_uint64varint_9019":{"entryPoint":1928,"id":9019,"parameterSlots":2,"returnSlots":1},"@_uint8varint_9038":{"entryPoint":2458,"id":9038,"parameterSlots":2,"returnSlots":1},"@hash_4301":{"entryPoint":2489,"id":4301,"parameterSlots":1,"returnSlots":1},"@initialize_8677":{"entryPoint":500,"id":8677,"parameterSlots":1,"returnSlots":0},"@initialize_9071":{"entryPoint":382,"id":9071,"parameterSlots":1,"returnSlots":0},"abi_decode_t_bytes32_fromMemory":{"entryPoint":2759,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":2782,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":2832,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":2887,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack":{"entryPoint":3026,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack":{"entryPoint":3065,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack":{"entryPoint":3104,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack":{"entryPoint":3143,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack":{"entryPoint":3182,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_uint64_to_t_uint64_fromStack":{"entryPoint":3221,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8_fromStack":{"entryPoint":3238,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":3255,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_bytes_storage_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":3280,"id":null,"parameterSlots":7,"returnSlots":1},"abi_encode_tuple_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3380,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3414,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3448,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3482,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":3516,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__to_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__fromStack_reversed":{"entryPoint":3550,"id":null,"parameterSlots":6,"returnSlots":1},"allocate_unbounded":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":1},"array_dataslot_t_bytes_storage":{"entryPoint":3643,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":3664,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":3675,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":3686,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint64":{"entryPoint":3703,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint64":{"entryPoint":3772,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":3831,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint64":{"entryPoint":3841,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":3861,"id":null,"parameterSlots":1,"returnSlots":1},"copy_memory_to_memory":{"entryPoint":3874,"id":null,"parameterSlots":3,"returnSlots":0},"extract_byte_array_length":{"entryPoint":3928,"id":null,"parameterSlots":1,"returnSlots":1},"increment_t_uint64":{"entryPoint":3982,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x01":{"entryPoint":4036,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x11":{"entryPoint":4083,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x22":{"entryPoint":4130,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":4177,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":4224,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":null,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":4271,"id":null,"parameterSlots":0,"returnSlots":0},"store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18":{"entryPoint":4276,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf":{"entryPoint":4355,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff":{"entryPoint":4434,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae":{"entryPoint":4513,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e":{"entryPoint":4592,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":4671,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:12710:46","statements":[{"body":{"nodeType":"YulBlock","src":"70:80:46","statements":[{"nodeType":"YulAssignment","src":"80:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"95:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"89:5:46"},"nodeType":"YulFunctionCall","src":"89:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"80:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"138:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"111:26:46"},"nodeType":"YulFunctionCall","src":"111:33:46"},"nodeType":"YulExpressionStatement","src":"111:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"48:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"56:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"64:5:46","type":""}],"src":"7:143:46"},{"body":{"nodeType":"YulBlock","src":"233:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"279:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"281:77:46"},"nodeType":"YulFunctionCall","src":"281:79:46"},"nodeType":"YulExpressionStatement","src":"281:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"254:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"263:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"250:3:46"},"nodeType":"YulFunctionCall","src":"250:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"275:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"246:3:46"},"nodeType":"YulFunctionCall","src":"246:32:46"},"nodeType":"YulIf","src":"243:119:46"},{"nodeType":"YulBlock","src":"372:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"387:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"401:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"391:6:46","type":""}]},{"nodeType":"YulAssignment","src":"416:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"462:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"473:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"458:3:46"},"nodeType":"YulFunctionCall","src":"458:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"482:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"426:31:46"},"nodeType":"YulFunctionCall","src":"426:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"416:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"203:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"214:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"226:6:46","type":""}],"src":"156:351:46"},{"body":{"nodeType":"YulBlock","src":"621:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"631:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"677:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"645:31:46"},"nodeType":"YulFunctionCall","src":"645:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"635:6:46","type":""}]},{"nodeType":"YulAssignment","src":"692:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"775:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"780:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"699:75:46"},"nodeType":"YulFunctionCall","src":"699:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"692:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"822:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"829:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"818:3:46"},"nodeType":"YulFunctionCall","src":"818:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"836:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"841:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"796:21:46"},"nodeType":"YulFunctionCall","src":"796:52:46"},"nodeType":"YulExpressionStatement","src":"796:52:46"},{"nodeType":"YulAssignment","src":"857:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"868:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"873:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"864:3:46"},"nodeType":"YulFunctionCall","src":"864:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"857:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"602:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"609:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"617:3:46","type":""}],"src":"513:373:46"},{"body":{"nodeType":"YulBlock","src":"1019:736:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1029:29:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1052:5:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"1046:5:46"},"nodeType":"YulFunctionCall","src":"1046:12:46"},"variables":[{"name":"slotValue","nodeType":"YulTypedName","src":"1033:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"1067:50:46","value":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"1107:9:46"}],"functionName":{"name":"extract_byte_array_length","nodeType":"YulIdentifier","src":"1081:25:46"},"nodeType":"YulFunctionCall","src":"1081:36:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"1071:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1126:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1209:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"1214:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"1133:75:46"},"nodeType":"YulFunctionCall","src":"1133:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"1126:3:46"}]},{"cases":[{"body":{"nodeType":"YulBlock","src":"1270:130:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1323:3:46"},{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"1332:9:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"1347:4:46","type":"","value":"0xff"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"1343:3:46"},"nodeType":"YulFunctionCall","src":"1343:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"1328:3:46"},"nodeType":"YulFunctionCall","src":"1328:25:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1316:6:46"},"nodeType":"YulFunctionCall","src":"1316:38:46"},"nodeType":"YulExpressionStatement","src":"1316:38:46"},{"nodeType":"YulAssignment","src":"1367:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1378:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"1383:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1374:3:46"},"nodeType":"YulFunctionCall","src":"1374:16:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"1367:3:46"}]}]},"nodeType":"YulCase","src":"1263:137:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1268:1:46","type":"","value":"0"}},{"body":{"nodeType":"YulBlock","src":"1416:333:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1461:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1507:5:46"}],"functionName":{"name":"array_dataslot_t_bytes_storage","nodeType":"YulIdentifier","src":"1476:30:46"},"nodeType":"YulFunctionCall","src":"1476:37:46"},"variables":[{"name":"dataPos","nodeType":"YulTypedName","src":"1465:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"1526:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1535:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"1530:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"1593:110:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1622:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"1627:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1618:3:46"},"nodeType":"YulFunctionCall","src":"1618:11:46"},{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"1637:7:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"1631:5:46"},"nodeType":"YulFunctionCall","src":"1631:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"1611:6:46"},"nodeType":"YulFunctionCall","src":"1611:35:46"},"nodeType":"YulExpressionStatement","src":"1611:35:46"},{"nodeType":"YulAssignment","src":"1663:26:46","value":{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"1678:7:46"},{"kind":"number","nodeType":"YulLiteral","src":"1687:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1674:3:46"},"nodeType":"YulFunctionCall","src":"1674:15:46"},"variableNames":[{"name":"dataPos","nodeType":"YulIdentifier","src":"1663:7:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"1560:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"1563:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"1557:2:46"},"nodeType":"YulFunctionCall","src":"1557:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"1571:21:46","statements":[{"nodeType":"YulAssignment","src":"1573:17:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"1582:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"1585:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1578:3:46"},"nodeType":"YulFunctionCall","src":"1578:12:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"1573:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"1553:3:46","statements":[]},"src":"1549:154:46"},{"nodeType":"YulAssignment","src":"1716:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1727:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"1732:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1723:3:46"},"nodeType":"YulFunctionCall","src":"1723:16:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"1716:3:46"}]}]},"nodeType":"YulCase","src":"1409:340:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1414:1:46","type":"","value":"1"}}],"expression":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"1241:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"1252:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"1237:3:46"},"nodeType":"YulFunctionCall","src":"1237:17:46"},"nodeType":"YulSwitch","src":"1230:519:46"}]},"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"1000:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"1007:3:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"1015:3:46","type":""}],"src":"914:841:46"},{"body":{"nodeType":"YulBlock","src":"1907:220:46","statements":[{"nodeType":"YulAssignment","src":"1917:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"1983:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"1988:2:46","type":"","value":"61"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"1924:58:46"},"nodeType":"YulFunctionCall","src":"1924:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"1917:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2089:3:46"}],"functionName":{"name":"store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18","nodeType":"YulIdentifier","src":"2000:88:46"},"nodeType":"YulFunctionCall","src":"2000:93:46"},"nodeType":"YulExpressionStatement","src":"2000:93:46"},{"nodeType":"YulAssignment","src":"2102:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2113:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2118:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2109:3:46"},"nodeType":"YulFunctionCall","src":"2109:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2102:3:46"}]}]},"name":"abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"1895:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"1903:3:46","type":""}],"src":"1761:366:46"},{"body":{"nodeType":"YulBlock","src":"2279:220:46","statements":[{"nodeType":"YulAssignment","src":"2289:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2355:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2360:2:46","type":"","value":"37"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2296:58:46"},"nodeType":"YulFunctionCall","src":"2296:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2289:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2461:3:46"}],"functionName":{"name":"store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf","nodeType":"YulIdentifier","src":"2372:88:46"},"nodeType":"YulFunctionCall","src":"2372:93:46"},"nodeType":"YulExpressionStatement","src":"2372:93:46"},{"nodeType":"YulAssignment","src":"2474:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2485:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2490:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2481:3:46"},"nodeType":"YulFunctionCall","src":"2481:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2474:3:46"}]}]},"name":"abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"2267:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2275:3:46","type":""}],"src":"2133:366:46"},{"body":{"nodeType":"YulBlock","src":"2651:220:46","statements":[{"nodeType":"YulAssignment","src":"2661:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2727:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2732:2:46","type":"","value":"47"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"2668:58:46"},"nodeType":"YulFunctionCall","src":"2668:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"2661:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2833:3:46"}],"functionName":{"name":"store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff","nodeType":"YulIdentifier","src":"2744:88:46"},"nodeType":"YulFunctionCall","src":"2744:93:46"},"nodeType":"YulExpressionStatement","src":"2744:93:46"},{"nodeType":"YulAssignment","src":"2846:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"2857:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"2862:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2853:3:46"},"nodeType":"YulFunctionCall","src":"2853:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"2846:3:46"}]}]},"name":"abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"2639:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"2647:3:46","type":""}],"src":"2505:366:46"},{"body":{"nodeType":"YulBlock","src":"3023:220:46","statements":[{"nodeType":"YulAssignment","src":"3033:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3099:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3104:2:46","type":"","value":"60"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"3040:58:46"},"nodeType":"YulFunctionCall","src":"3040:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"3033:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3205:3:46"}],"functionName":{"name":"store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae","nodeType":"YulIdentifier","src":"3116:88:46"},"nodeType":"YulFunctionCall","src":"3116:93:46"},"nodeType":"YulExpressionStatement","src":"3116:93:46"},{"nodeType":"YulAssignment","src":"3218:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3229:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3234:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3225:3:46"},"nodeType":"YulFunctionCall","src":"3225:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3218:3:46"}]}]},"name":"abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3011:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3019:3:46","type":""}],"src":"2877:366:46"},{"body":{"nodeType":"YulBlock","src":"3395:220:46","statements":[{"nodeType":"YulAssignment","src":"3405:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3471:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3476:2:46","type":"","value":"61"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"3412:58:46"},"nodeType":"YulFunctionCall","src":"3412:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"3405:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3577:3:46"}],"functionName":{"name":"store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e","nodeType":"YulIdentifier","src":"3488:88:46"},"nodeType":"YulFunctionCall","src":"3488:93:46"},"nodeType":"YulExpressionStatement","src":"3488:93:46"},{"nodeType":"YulAssignment","src":"3590:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3601:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"3606:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3597:3:46"},"nodeType":"YulFunctionCall","src":"3597:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"3590:3:46"}]}]},"name":"abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3383:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3391:3:46","type":""}],"src":"3249:366:46"},{"body":{"nodeType":"YulBlock","src":"3684:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3701:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3723:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"3706:16:46"},"nodeType":"YulFunctionCall","src":"3706:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3694:6:46"},"nodeType":"YulFunctionCall","src":"3694:36:46"},"nodeType":"YulExpressionStatement","src":"3694:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3672:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"3679:3:46","type":""}],"src":"3621:115:46"},{"body":{"nodeType":"YulBlock","src":"3803:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"3820:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"3841:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"3825:15:46"},"nodeType":"YulFunctionCall","src":"3825:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"3813:6:46"},"nodeType":"YulFunctionCall","src":"3813:35:46"},"nodeType":"YulExpressionStatement","src":"3813:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"3791:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"3798:3:46","type":""}],"src":"3742:112:46"},{"body":{"nodeType":"YulBlock","src":"3994:137:46","statements":[{"nodeType":"YulAssignment","src":"4005:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"4092:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"4101:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"4012:79:46"},"nodeType":"YulFunctionCall","src":"4012:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4005:3:46"}]},{"nodeType":"YulAssignment","src":"4115:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"4122:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"4115:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"3973:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"3979:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"3990:3:46","type":""}],"src":"3860:271:46"},{"body":{"nodeType":"YulBlock","src":"4498:684:46","statements":[{"nodeType":"YulAssignment","src":"4509:97:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"4593:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"4602:3:46"}],"functionName":{"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"4516:76:46"},"nodeType":"YulFunctionCall","src":"4516:90:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4509:3:46"}]},{"nodeType":"YulAssignment","src":"4616:100:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"4703:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"4712:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"4623:79:46"},"nodeType":"YulFunctionCall","src":"4623:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4616:3:46"}]},{"nodeType":"YulAssignment","src":"4726:100:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"4813:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"4822:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"4733:79:46"},"nodeType":"YulFunctionCall","src":"4733:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4726:3:46"}]},{"nodeType":"YulAssignment","src":"4836:100:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"4923:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"4932:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"4843:79:46"},"nodeType":"YulFunctionCall","src":"4843:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4836:3:46"}]},{"nodeType":"YulAssignment","src":"4946:100:46","value":{"arguments":[{"name":"value4","nodeType":"YulIdentifier","src":"5033:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5042:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"4953:79:46"},"nodeType":"YulFunctionCall","src":"4953:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4946:3:46"}]},{"nodeType":"YulAssignment","src":"5056:100:46","value":{"arguments":[{"name":"value5","nodeType":"YulIdentifier","src":"5143:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5152:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"5063:79:46"},"nodeType":"YulFunctionCall","src":"5063:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5056:3:46"}]},{"nodeType":"YulAssignment","src":"5166:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"5173:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"5166:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_storage_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"4437:3:46","type":""},{"name":"value5","nodeType":"YulTypedName","src":"4443:6:46","type":""},{"name":"value4","nodeType":"YulTypedName","src":"4451:6:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"4459:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"4467:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"4475:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"4483:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"4494:3:46","type":""}],"src":"4137:1045:46"},{"body":{"nodeType":"YulBlock","src":"5359:248:46","statements":[{"nodeType":"YulAssignment","src":"5369:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5381:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"5392:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5377:3:46"},"nodeType":"YulFunctionCall","src":"5377:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"5369:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5416:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"5427:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5412:3:46"},"nodeType":"YulFunctionCall","src":"5412:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"5435:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"5441:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"5431:3:46"},"nodeType":"YulFunctionCall","src":"5431:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5405:6:46"},"nodeType":"YulFunctionCall","src":"5405:47:46"},"nodeType":"YulExpressionStatement","src":"5405:47:46"},{"nodeType":"YulAssignment","src":"5461:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"5595:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5469:124:46"},"nodeType":"YulFunctionCall","src":"5469:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"5461:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"5339:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"5354:4:46","type":""}],"src":"5188:419:46"},{"body":{"nodeType":"YulBlock","src":"5784:248:46","statements":[{"nodeType":"YulAssignment","src":"5794:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5806:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"5817:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5802:3:46"},"nodeType":"YulFunctionCall","src":"5802:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"5794:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"5841:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"5852:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5837:3:46"},"nodeType":"YulFunctionCall","src":"5837:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"5860:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"5866:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"5856:3:46"},"nodeType":"YulFunctionCall","src":"5856:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5830:6:46"},"nodeType":"YulFunctionCall","src":"5830:47:46"},"nodeType":"YulExpressionStatement","src":"5830:47:46"},{"nodeType":"YulAssignment","src":"5886:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"6020:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5894:124:46"},"nodeType":"YulFunctionCall","src":"5894:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"5886:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"5764:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"5779:4:46","type":""}],"src":"5613:419:46"},{"body":{"nodeType":"YulBlock","src":"6209:248:46","statements":[{"nodeType":"YulAssignment","src":"6219:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"6231:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"6242:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6227:3:46"},"nodeType":"YulFunctionCall","src":"6227:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"6219:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"6266:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"6277:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6262:3:46"},"nodeType":"YulFunctionCall","src":"6262:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"6285:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"6291:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"6281:3:46"},"nodeType":"YulFunctionCall","src":"6281:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6255:6:46"},"nodeType":"YulFunctionCall","src":"6255:47:46"},"nodeType":"YulExpressionStatement","src":"6255:47:46"},{"nodeType":"YulAssignment","src":"6311:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"6445:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"6319:124:46"},"nodeType":"YulFunctionCall","src":"6319:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"6311:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"6189:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"6204:4:46","type":""}],"src":"6038:419:46"},{"body":{"nodeType":"YulBlock","src":"6634:248:46","statements":[{"nodeType":"YulAssignment","src":"6644:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"6656:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"6667:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6652:3:46"},"nodeType":"YulFunctionCall","src":"6652:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"6644:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"6691:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"6702:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6687:3:46"},"nodeType":"YulFunctionCall","src":"6687:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"6710:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"6716:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"6706:3:46"},"nodeType":"YulFunctionCall","src":"6706:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6680:6:46"},"nodeType":"YulFunctionCall","src":"6680:47:46"},"nodeType":"YulExpressionStatement","src":"6680:47:46"},{"nodeType":"YulAssignment","src":"6736:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"6870:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"6744:124:46"},"nodeType":"YulFunctionCall","src":"6744:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"6736:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"6614:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"6629:4:46","type":""}],"src":"6463:419:46"},{"body":{"nodeType":"YulBlock","src":"7059:248:46","statements":[{"nodeType":"YulAssignment","src":"7069:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7081:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7092:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7077:3:46"},"nodeType":"YulFunctionCall","src":"7077:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7069:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7116:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7127:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7112:3:46"},"nodeType":"YulFunctionCall","src":"7112:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"7135:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"7141:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"7131:3:46"},"nodeType":"YulFunctionCall","src":"7131:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7105:6:46"},"nodeType":"YulFunctionCall","src":"7105:47:46"},"nodeType":"YulExpressionStatement","src":"7105:47:46"},{"nodeType":"YulAssignment","src":"7161:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"7295:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7169:124:46"},"nodeType":"YulFunctionCall","src":"7169:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7161:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7039:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"7054:4:46","type":""}],"src":"6888:419:46"},{"body":{"nodeType":"YulBlock","src":"7509:440:46","statements":[{"nodeType":"YulAssignment","src":"7519:27:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7531:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7542:3:46","type":"","value":"160"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7527:3:46"},"nodeType":"YulFunctionCall","src":"7527:19:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"7519:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"7596:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7609:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7620:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7605:3:46"},"nodeType":"YulFunctionCall","src":"7605:17:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"7556:39:46"},"nodeType":"YulFunctionCall","src":"7556:67:46"},"nodeType":"YulExpressionStatement","src":"7556:67:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"7673:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7686:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7697:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7682:3:46"},"nodeType":"YulFunctionCall","src":"7682:18:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"7633:39:46"},"nodeType":"YulFunctionCall","src":"7633:68:46"},"nodeType":"YulExpressionStatement","src":"7633:68:46"},{"expression":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"7753:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7766:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7777:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7762:3:46"},"nodeType":"YulFunctionCall","src":"7762:18:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"7711:41:46"},"nodeType":"YulFunctionCall","src":"7711:70:46"},"nodeType":"YulExpressionStatement","src":"7711:70:46"},{"expression":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"7833:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7846:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7857:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7842:3:46"},"nodeType":"YulFunctionCall","src":"7842:18:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"7791:41:46"},"nodeType":"YulFunctionCall","src":"7791:70:46"},"nodeType":"YulExpressionStatement","src":"7791:70:46"},{"expression":{"arguments":[{"name":"value4","nodeType":"YulIdentifier","src":"7913:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"7926:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"7937:3:46","type":"","value":"128"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7922:3:46"},"nodeType":"YulFunctionCall","src":"7922:19:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"7871:41:46"},"nodeType":"YulFunctionCall","src":"7871:71:46"},"nodeType":"YulExpressionStatement","src":"7871:71:46"}]},"name":"abi_encode_tuple_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__to_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"7449:9:46","type":""},{"name":"value4","nodeType":"YulTypedName","src":"7461:6:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"7469:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"7477:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"7485:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"7493:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"7504:4:46","type":""}],"src":"7313:636:46"},{"body":{"nodeType":"YulBlock","src":"7995:35:46","statements":[{"nodeType":"YulAssignment","src":"8005:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"8021:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8015:5:46"},"nodeType":"YulFunctionCall","src":"8015:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"8005:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"7988:6:46","type":""}],"src":"7955:75:46"},{"body":{"nodeType":"YulBlock","src":"8089:87:46","statements":[{"nodeType":"YulAssignment","src":"8099:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"8107:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"8099:4:46"}]},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"8127:1:46","type":"","value":"0"},{"name":"ptr","nodeType":"YulIdentifier","src":"8130:3:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8120:6:46"},"nodeType":"YulFunctionCall","src":"8120:14:46"},"nodeType":"YulExpressionStatement","src":"8120:14:46"},{"nodeType":"YulAssignment","src":"8143:26:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"8161:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"8164:4:46","type":"","value":"0x20"}],"functionName":{"name":"keccak256","nodeType":"YulIdentifier","src":"8151:9:46"},"nodeType":"YulFunctionCall","src":"8151:18:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"8143:4:46"}]}]},"name":"array_dataslot_t_bytes_storage","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"8076:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"8084:4:46","type":""}],"src":"8036:140:46"},{"body":{"nodeType":"YulBlock","src":"8240:40:46","statements":[{"nodeType":"YulAssignment","src":"8251:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"8267:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"8261:5:46"},"nodeType":"YulFunctionCall","src":"8261:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"8251:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"8223:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"8233:6:46","type":""}],"src":"8182:98:46"},{"body":{"nodeType":"YulBlock","src":"8399:34:46","statements":[{"nodeType":"YulAssignment","src":"8409:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"8424:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"8409:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8371:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"8376:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"8387:11:46","type":""}],"src":"8286:147:46"},{"body":{"nodeType":"YulBlock","src":"8535:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8552:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"8557:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"8545:6:46"},"nodeType":"YulFunctionCall","src":"8545:19:46"},"nodeType":"YulExpressionStatement","src":"8545:19:46"},{"nodeType":"YulAssignment","src":"8573:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8592:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8597:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8588:3:46"},"nodeType":"YulFunctionCall","src":"8588:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"8573:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8507:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"8512:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"8523:11:46","type":""}],"src":"8439:169:46"},{"body":{"nodeType":"YulBlock","src":"8657:211:46","statements":[{"nodeType":"YulAssignment","src":"8667:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"8689:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"8672:16:46"},"nodeType":"YulFunctionCall","src":"8672:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"8667:1:46"}]},{"nodeType":"YulAssignment","src":"8700:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"8722:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"8705:16:46"},"nodeType":"YulFunctionCall","src":"8705:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"8700:1:46"}]},{"body":{"nodeType":"YulBlock","src":"8814:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"8816:16:46"},"nodeType":"YulFunctionCall","src":"8816:18:46"},"nodeType":"YulExpressionStatement","src":"8816:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"8783:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"8790:18:46","type":"","value":"0xffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"8810:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"8786:3:46"},"nodeType":"YulFunctionCall","src":"8786:26:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"8780:2:46"},"nodeType":"YulFunctionCall","src":"8780:33:46"},"nodeType":"YulIf","src":"8777:59:46"},{"nodeType":"YulAssignment","src":"8846:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"8857:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"8860:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8853:3:46"},"nodeType":"YulFunctionCall","src":"8853:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"8846:3:46"}]}]},"name":"checked_add_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"8644:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"8647:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"8653:3:46","type":""}],"src":"8614:254:46"},{"body":{"nodeType":"YulBlock","src":"8918:144:46","statements":[{"nodeType":"YulAssignment","src":"8928:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"8950:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"8933:16:46"},"nodeType":"YulFunctionCall","src":"8933:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"8928:1:46"}]},{"nodeType":"YulAssignment","src":"8961:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"8983:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"8966:16:46"},"nodeType":"YulFunctionCall","src":"8966:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"8961:1:46"}]},{"body":{"nodeType":"YulBlock","src":"9007:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"9009:16:46"},"nodeType":"YulFunctionCall","src":"9009:18:46"},"nodeType":"YulExpressionStatement","src":"9009:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"9001:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"9004:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"8998:2:46"},"nodeType":"YulFunctionCall","src":"8998:8:46"},"nodeType":"YulIf","src":"8995:34:46"},{"nodeType":"YulAssignment","src":"9039:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"9051:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"9054:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"9047:3:46"},"nodeType":"YulFunctionCall","src":"9047:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"9039:4:46"}]}]},"name":"checked_sub_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"8904:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"8907:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"8913:4:46","type":""}],"src":"8874:188:46"},{"body":{"nodeType":"YulBlock","src":"9113:32:46","statements":[{"nodeType":"YulAssignment","src":"9123:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"9134:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"9123:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9095:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"9105:7:46","type":""}],"src":"9068:77:46"},{"body":{"nodeType":"YulBlock","src":"9195:57:46","statements":[{"nodeType":"YulAssignment","src":"9205:41:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9220:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"9227:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"9216:3:46"},"nodeType":"YulFunctionCall","src":"9216:30:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"9205:7:46"}]}]},"name":"cleanup_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9177:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"9187:7:46","type":""}],"src":"9151:101:46"},{"body":{"nodeType":"YulBlock","src":"9301:43:46","statements":[{"nodeType":"YulAssignment","src":"9311:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"9326:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"9333:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"9322:3:46"},"nodeType":"YulFunctionCall","src":"9322:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"9311:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"9283:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"9293:7:46","type":""}],"src":"9258:86:46"},{"body":{"nodeType":"YulBlock","src":"9399:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"9409:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"9418:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"9413:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"9478:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"9503:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"9508:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9499:3:46"},"nodeType":"YulFunctionCall","src":"9499:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"9522:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"9527:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9518:3:46"},"nodeType":"YulFunctionCall","src":"9518:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"9512:5:46"},"nodeType":"YulFunctionCall","src":"9512:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9492:6:46"},"nodeType":"YulFunctionCall","src":"9492:39:46"},"nodeType":"YulExpressionStatement","src":"9492:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"9439:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"9442:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"9436:2:46"},"nodeType":"YulFunctionCall","src":"9436:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"9450:19:46","statements":[{"nodeType":"YulAssignment","src":"9452:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"9461:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"9464:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9457:3:46"},"nodeType":"YulFunctionCall","src":"9457:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"9452:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"9432:3:46","statements":[]},"src":"9428:113:46"},{"body":{"nodeType":"YulBlock","src":"9575:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"9625:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"9630:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9621:3:46"},"nodeType":"YulFunctionCall","src":"9621:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"9639:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"9614:6:46"},"nodeType":"YulFunctionCall","src":"9614:27:46"},"nodeType":"YulExpressionStatement","src":"9614:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"9556:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"9559:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"9553:2:46"},"nodeType":"YulFunctionCall","src":"9553:13:46"},"nodeType":"YulIf","src":"9550:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"9381:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"9386:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"9391:6:46","type":""}],"src":"9350:307:46"},{"body":{"nodeType":"YulBlock","src":"9714:269:46","statements":[{"nodeType":"YulAssignment","src":"9724:22:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"9738:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"9744:1:46","type":"","value":"2"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"9734:3:46"},"nodeType":"YulFunctionCall","src":"9734:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"9724:6:46"}]},{"nodeType":"YulVariableDeclaration","src":"9755:38:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"9785:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"9791:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"9781:3:46"},"nodeType":"YulFunctionCall","src":"9781:12:46"},"variables":[{"name":"outOfPlaceEncoding","nodeType":"YulTypedName","src":"9759:18:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"9832:51:46","statements":[{"nodeType":"YulAssignment","src":"9846:27:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"9860:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9868:4:46","type":"","value":"0x7f"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"9856:3:46"},"nodeType":"YulFunctionCall","src":"9856:17:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"9846:6:46"}]}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"9812:18:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"9805:6:46"},"nodeType":"YulFunctionCall","src":"9805:26:46"},"nodeType":"YulIf","src":"9802:81:46"},{"body":{"nodeType":"YulBlock","src":"9935:42:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x22","nodeType":"YulIdentifier","src":"9949:16:46"},"nodeType":"YulFunctionCall","src":"9949:18:46"},"nodeType":"YulExpressionStatement","src":"9949:18:46"}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"9899:18:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"9922:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"9930:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"9919:2:46"},"nodeType":"YulFunctionCall","src":"9919:14:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"9896:2:46"},"nodeType":"YulFunctionCall","src":"9896:38:46"},"nodeType":"YulIf","src":"9893:84:46"}]},"name":"extract_byte_array_length","nodeType":"YulFunctionDefinition","parameters":[{"name":"data","nodeType":"YulTypedName","src":"9698:4:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"9707:6:46","type":""}],"src":"9663:320:46"},{"body":{"nodeType":"YulBlock","src":"10031:141:46","statements":[{"nodeType":"YulAssignment","src":"10041:32:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10067:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"10050:16:46"},"nodeType":"YulFunctionCall","src":"10050:23:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"10041:5:46"}]},{"body":{"nodeType":"YulBlock","src":"10115:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"10117:16:46"},"nodeType":"YulFunctionCall","src":"10117:18:46"},"nodeType":"YulExpressionStatement","src":"10117:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10088:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10095:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"10085:2:46"},"nodeType":"YulFunctionCall","src":"10085:29:46"},"nodeType":"YulIf","src":"10082:55:46"},{"nodeType":"YulAssignment","src":"10146:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"10157:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"10164:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10153:3:46"},"nodeType":"YulFunctionCall","src":"10153:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"10146:3:46"}]}]},"name":"increment_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"10017:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"10027:3:46","type":""}],"src":"9989:183:46"},{"body":{"nodeType":"YulBlock","src":"10206:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10223:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10226:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10216:6:46"},"nodeType":"YulFunctionCall","src":"10216:88:46"},"nodeType":"YulExpressionStatement","src":"10216:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10320:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"10323:4:46","type":"","value":"0x01"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10313:6:46"},"nodeType":"YulFunctionCall","src":"10313:15:46"},"nodeType":"YulExpressionStatement","src":"10313:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10344:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10347:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"10337:6:46"},"nodeType":"YulFunctionCall","src":"10337:15:46"},"nodeType":"YulExpressionStatement","src":"10337:15:46"}]},"name":"panic_error_0x01","nodeType":"YulFunctionDefinition","src":"10178:180:46"},{"body":{"nodeType":"YulBlock","src":"10392:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10409:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10412:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10402:6:46"},"nodeType":"YulFunctionCall","src":"10402:88:46"},"nodeType":"YulExpressionStatement","src":"10402:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10506:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"10509:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10499:6:46"},"nodeType":"YulFunctionCall","src":"10499:15:46"},"nodeType":"YulExpressionStatement","src":"10499:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10530:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10533:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"10523:6:46"},"nodeType":"YulFunctionCall","src":"10523:15:46"},"nodeType":"YulExpressionStatement","src":"10523:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"10364:180:46"},{"body":{"nodeType":"YulBlock","src":"10578:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10595:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10598:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10588:6:46"},"nodeType":"YulFunctionCall","src":"10588:88:46"},"nodeType":"YulExpressionStatement","src":"10588:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10692:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"10695:4:46","type":"","value":"0x22"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10685:6:46"},"nodeType":"YulFunctionCall","src":"10685:15:46"},"nodeType":"YulExpressionStatement","src":"10685:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10716:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10719:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"10709:6:46"},"nodeType":"YulFunctionCall","src":"10709:15:46"},"nodeType":"YulExpressionStatement","src":"10709:15:46"}]},"name":"panic_error_0x22","nodeType":"YulFunctionDefinition","src":"10550:180:46"},{"body":{"nodeType":"YulBlock","src":"10764:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10781:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10784:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10774:6:46"},"nodeType":"YulFunctionCall","src":"10774:88:46"},"nodeType":"YulExpressionStatement","src":"10774:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10878:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"10881:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10871:6:46"},"nodeType":"YulFunctionCall","src":"10871:15:46"},"nodeType":"YulExpressionStatement","src":"10871:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10902:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10905:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"10895:6:46"},"nodeType":"YulFunctionCall","src":"10895:15:46"},"nodeType":"YulExpressionStatement","src":"10895:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"10736:180:46"},{"body":{"nodeType":"YulBlock","src":"10950:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"10967:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"10970:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"10960:6:46"},"nodeType":"YulFunctionCall","src":"10960:88:46"},"nodeType":"YulExpressionStatement","src":"10960:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"11064:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"11067:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11057:6:46"},"nodeType":"YulFunctionCall","src":"11057:15:46"},"nodeType":"YulExpressionStatement","src":"11057:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"11088:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"11091:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"11081:6:46"},"nodeType":"YulFunctionCall","src":"11081:15:46"},"nodeType":"YulExpressionStatement","src":"11081:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"10922:180:46"},{"body":{"nodeType":"YulBlock","src":"11197:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"11214:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"11217:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"11207:6:46"},"nodeType":"YulFunctionCall","src":"11207:12:46"},"nodeType":"YulExpressionStatement","src":"11207:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"11108:117:46"},{"body":{"nodeType":"YulBlock","src":"11320:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"11337:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"11340:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"11330:6:46"},"nodeType":"YulFunctionCall","src":"11330:12:46"},"nodeType":"YulExpressionStatement","src":"11330:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"11231:117:46"},{"body":{"nodeType":"YulBlock","src":"11460:142:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11482:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11490:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11478:3:46"},"nodeType":"YulFunctionCall","src":"11478:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a207769746e","kind":"string","nodeType":"YulLiteral","src":"11494:34:46","type":"","value":"WitnetRequestMalleableBase: witn"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11471:6:46"},"nodeType":"YulFunctionCall","src":"11471:58:46"},"nodeType":"YulExpressionStatement","src":"11471:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11550:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11558:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11546:3:46"},"nodeType":"YulFunctionCall","src":"11546:15:46"},{"hexValue":"657373696e6720636f6e73656e737573206f7574206f662072616e6765","kind":"string","nodeType":"YulLiteral","src":"11563:31:46","type":"","value":"essing consensus out of range"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11539:6:46"},"nodeType":"YulFunctionCall","src":"11539:56:46"},"nodeType":"YulExpressionStatement","src":"11539:56:46"}]},"name":"store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"11452:6:46","type":""}],"src":"11354:248:46"},{"body":{"nodeType":"YulBlock","src":"11714:118:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11736:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11744:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11732:3:46"},"nodeType":"YulFunctionCall","src":"11732:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a206e6f2072","kind":"string","nodeType":"YulLiteral","src":"11748:34:46","type":"","value":"WitnetRequestMalleableBase: no r"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11725:6:46"},"nodeType":"YulFunctionCall","src":"11725:58:46"},"nodeType":"YulExpressionStatement","src":"11725:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11804:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11812:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11800:3:46"},"nodeType":"YulFunctionCall","src":"11800:15:46"},{"hexValue":"6577617264","kind":"string","nodeType":"YulLiteral","src":"11817:7:46","type":"","value":"eward"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11793:6:46"},"nodeType":"YulFunctionCall","src":"11793:32:46"},"nodeType":"YulExpressionStatement","src":"11793:32:46"}]},"name":"store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"11706:6:46","type":""}],"src":"11608:224:46"},{"body":{"nodeType":"YulBlock","src":"11944:128:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"11966:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"11974:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11962:3:46"},"nodeType":"YulFunctionCall","src":"11962:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a20616c7265","kind":"string","nodeType":"YulLiteral","src":"11978:34:46","type":"","value":"WitnetRequestMalleableBase: alre"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11955:6:46"},"nodeType":"YulFunctionCall","src":"11955:58:46"},"nodeType":"YulExpressionStatement","src":"11955:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"12034:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12042:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12030:3:46"},"nodeType":"YulFunctionCall","src":"12030:15:46"},{"hexValue":"61647920696e697469616c697a6564","kind":"string","nodeType":"YulLiteral","src":"12047:17:46","type":"","value":"ady initialized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12023:6:46"},"nodeType":"YulFunctionCall","src":"12023:42:46"},"nodeType":"YulExpressionStatement","src":"12023:42:46"}]},"name":"store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"11936:6:46","type":""}],"src":"11838:234:46"},{"body":{"nodeType":"YulBlock","src":"12184:141:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"12206:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12214:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12202:3:46"},"nodeType":"YulFunctionCall","src":"12202:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a206e756d62","kind":"string","nodeType":"YulLiteral","src":"12218:34:46","type":"","value":"WitnetRequestMalleableBase: numb"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12195:6:46"},"nodeType":"YulFunctionCall","src":"12195:58:46"},"nodeType":"YulExpressionStatement","src":"12195:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"12274:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12282:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12270:3:46"},"nodeType":"YulFunctionCall","src":"12270:15:46"},{"hexValue":"6572206f66207769746e6573736573206f7574206f662072616e6765","kind":"string","nodeType":"YulLiteral","src":"12287:30:46","type":"","value":"er of witnesses out of range"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12263:6:46"},"nodeType":"YulFunctionCall","src":"12263:55:46"},"nodeType":"YulExpressionStatement","src":"12263:55:46"}]},"name":"store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"12176:6:46","type":""}],"src":"12078:247:46"},{"body":{"nodeType":"YulBlock","src":"12437:142:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"12459:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12467:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12455:3:46"},"nodeType":"YulFunctionCall","src":"12455:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a207769746e","kind":"string","nodeType":"YulLiteral","src":"12471:34:46","type":"","value":"WitnetRequestMalleableBase: witn"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12448:6:46"},"nodeType":"YulFunctionCall","src":"12448:58:46"},"nodeType":"YulExpressionStatement","src":"12448:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"12527:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"12535:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"12523:3:46"},"nodeType":"YulFunctionCall","src":"12523:15:46"},{"hexValue":"657373696e6720636f6c6c61746572616c2062656c6f77203120574954","kind":"string","nodeType":"YulLiteral","src":"12540:31:46","type":"","value":"essing collateral below 1 WIT"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12516:6:46"},"nodeType":"YulFunctionCall","src":"12516:56:46"},"nodeType":"YulExpressionStatement","src":"12516:56:46"}]},"name":"store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"12429:6:46","type":""}],"src":"12331:248:46"},{"body":{"nodeType":"YulBlock","src":"12628:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"12685:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"12694:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"12697:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"12687:6:46"},"nodeType":"YulFunctionCall","src":"12687:12:46"},"nodeType":"YulExpressionStatement","src":"12687:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12651:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12676:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"12658:17:46"},"nodeType":"YulFunctionCall","src":"12658:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"12648:2:46"},"nodeType":"YulFunctionCall","src":"12648:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"12641:6:46"},"nodeType":"YulFunctionCall","src":"12641:43:46"},"nodeType":"YulIf","src":"12638:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12621:5:46","type":""}],"src":"12585:122:46"}]},"contents":"{\n\n    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    // bytes -> bytes\n    function abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> ret {\n        let slotValue := sload(value)\n        let length := extract_byte_array_length(slotValue)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        switch and(slotValue, 1)\n        case 0 {\n            // short byte array\n            mstore(pos, and(slotValue, not(0xff)))\n            ret := add(pos, length)\n        }\n        case 1 {\n            // long byte array\n            let dataPos := array_dataslot_t_bytes_storage(value)\n            let i := 0\n            for { } lt(i, length) { i := add(i, 0x20) } {\n                mstore(add(pos, i), sload(dataPos))\n                dataPos := add(dataPos, 1)\n            }\n            ret := add(pos, length)\n        }\n    }\n\n    function abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n        store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n        store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n        store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 60)\n        store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n        store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint64(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_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_bytes_storage_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value5, value4, value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value4,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value5,  pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18__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_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf__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_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff__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_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae__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_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e__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_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__to_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n        tail := add(headStart, 160)\n\n        abi_encode_t_uint8_to_t_uint8_fromStack(value0,  add(headStart, 0))\n\n        abi_encode_t_uint8_to_t_uint8_fromStack(value1,  add(headStart, 32))\n\n        abi_encode_t_uint64_to_t_uint64_fromStack(value2,  add(headStart, 64))\n\n        abi_encode_t_uint64_to_t_uint64_fromStack(value3,  add(headStart, 96))\n\n        abi_encode_t_uint64_to_t_uint64_fromStack(value4,  add(headStart, 128))\n\n    }\n\n    function allocate_unbounded() -> memPtr {\n        memPtr := mload(64)\n    }\n\n    function array_dataslot_t_bytes_storage(ptr) -> data {\n        data := ptr\n\n        mstore(0, ptr)\n        data := keccak256(0, 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_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\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_uint64(x, y) -> sum {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n\n        // overflow, if x > (maxValue - y)\n        if gt(x, sub(0xffffffffffffffff, y)) { panic_error_0x11() }\n\n        sum := add(x, y)\n    }\n\n    function checked_sub_t_uint64(x, y) -> diff {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n\n        if lt(x, y) { panic_error_0x11() }\n\n        diff := sub(x, y)\n    }\n\n    function cleanup_t_bytes32(value) -> cleaned {\n        cleaned := value\n    }\n\n    function cleanup_t_uint64(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffff)\n    }\n\n    function cleanup_t_uint8(value) -> cleaned {\n        cleaned := and(value, 0xff)\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 increment_t_uint64(value) -> ret {\n        value := cleanup_t_uint64(value)\n        if eq(value, 0xffffffffffffffff) { panic_error_0x11() }\n        ret := add(value, 1)\n    }\n\n    function panic_error_0x01() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x01)\n        revert(0, 0x24)\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_0x22() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x22)\n        revert(0, 0x24)\n    }\n\n    function panic_error_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: witn\")\n\n        mstore(add(memPtr, 32), \"essing consensus out of range\")\n\n    }\n\n    function store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: no r\")\n\n        mstore(add(memPtr, 32), \"eward\")\n\n    }\n\n    function store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: alre\")\n\n        mstore(add(memPtr, 32), \"ady initialized\")\n\n    }\n\n    function store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: numb\")\n\n        mstore(add(memPtr, 32), \"er of witnesses out of range\")\n\n    }\n\n    function store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: witn\")\n\n        mstore(add(memPtr, 32), \"essing collateral below 1 WIT\")\n\n    }\n\n    function validator_revert_t_bytes32(value) {\n        if iszero(eq(value, cleanup_t_bytes32(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"linkReferences":{},"object":"60a06040523073ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b8152503480156200004757600080fd5b50620000686200005c6200008e60201b60201c565b6200009660201b60201c565b62000088604051806020016040528060008152506200017e60201b60201c565b62001259565b600033905090565b6000620000a8620001cc60201b60201c565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081620000df620001cc60201b60201c565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620001c96040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250620001f460201b62000e261760201c565b50565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b600062000206620001cc60201b60201c565b6001018054620002169062000f58565b9050146200025b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002529062000d78565b60405180910390fd5b6200026c816200028f60201b60201c565b6200028c620002806200008e60201b60201c565b6200009660201b60201c565b50565b6000815111620002a457620002a362000fc4565b5b80620002b5620001cc60201b60201c565b6001019080519060200190620002cd92919062000a17565b506000620002e0620001cc60201b60201c565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506200042b8160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff166200042f60201b60201c565b5050565b60008267ffffffffffffffff16116200047f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004769062000d56565b60405180910390fd5b60018560ff1610158015620004985750607f8560ff1611155b620004da576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004d19062000d9a565b60405180910390fd5b60338460ff1610158015620004f3575060638460ff1611155b62000535576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200052c9062000d34565b60405180910390fd5b633b9aca008367ffffffffffffffff16101562000589576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005809062000dbc565b60405180910390fd5b62000599620001cc60201b60201c565b600101620005b2601060f81b846200078860201b60201c565b620005c8601860f81b886200099a60201b60201c565b620005de602060f81b856200078860201b60201c565b620005f4602860f81b896200099a60201b60201c565b6200060a603060f81b896200078860201b60201c565b604051602001620006219695949392919062000cd0565b60405160208183030381529060405262000640620001cc60201b60201c565b60020190805190602001906200065892919062000a17565b50620007126200066d620001cc60201b60201c565b60020180546200067d9062000f58565b80601f0160208091040260200160405190810160405280929190818152602001828054620006ab9062000f58565b8015620006fc5780601f10620006d057610100808354040283529160200191620006fc565b820191906000526020600020905b815481529060010190602001808311620006de57829003601f168201915b5050505050620009b960201b62000e9c1760201c565b62000722620001cc60201b60201c565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b086868686866040516200077995949392919062000dde565b60405180910390a25050505050565b606060008290506000600290505b607f8267ffffffffffffffff161115620007d25760078267ffffffffffffffff16901c9150600181620007ca919062000e77565b905062000796565b60008167ffffffffffffffff1667ffffffffffffffff811115620007fb57620007fa62001080565b5b6040519080825280601f01601f1916602001820160405280156200082e5781602001600182028036833780820191505090505b50905084925085816000815181106200084c576200084b62001051565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff1610156200091f57607f841660801760f81b828267ffffffffffffffff1681518110620008c957620008c862001051565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c93508080620009169062000f8e565b91505062000882565b50607f60f81b8160018462000935919062000ebc565b67ffffffffffffffff168151811062000953576200095262001051565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060620009b1838360ff166200078860201b60201c565b905092915050565b6000600282604051620009cd919062000cb7565b602060405180830381855afa158015620009eb573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019062000a10919062000ade565b9050919050565b82805462000a259062000f58565b90600052602060002090601f01602090048101928262000a49576000855562000a95565b82601f1062000a6457805160ff191683800117855562000a95565b8280016001018555821562000a95579182015b8281111562000a9457825182559160200191906001019062000a77565b5b50905062000aa4919062000aa8565b5090565b5b8082111562000ac357600081600090555060010162000aa9565b5090565b60008151905062000ad8816200123f565b92915050565b60006020828403121562000af75762000af6620010af565b5b600062000b078482850162000ac7565b91505092915050565b600062000b1d8262000e50565b62000b29818562000e5b565b935062000b3b81856020860162000f22565b80840191505092915050565b6000815462000b568162000f58565b62000b62818662000e5b565b9450600182166000811462000b80576001811462000b925762000bc9565b60ff1983168652818601935062000bc9565b62000b9d8562000e3b565b60005b8381101562000bc15781548189015260018201915060208101905062000ba0565b838801955050505b50505092915050565b600062000be1603d8362000e66565b915062000bee82620010b4565b604082019050919050565b600062000c0860258362000e66565b915062000c158262001103565b604082019050919050565b600062000c2f602f8362000e66565b915062000c3c8262001152565b604082019050919050565b600062000c56603c8362000e66565b915062000c6382620011a1565b604082019050919050565b600062000c7d603d8362000e66565b915062000c8a82620011f0565b604082019050919050565b62000ca08162000f01565b82525050565b62000cb18162000f15565b82525050565b600062000cc5828462000b10565b915081905092915050565b600062000cde828962000b47565b915062000cec828862000b10565b915062000cfa828762000b10565b915062000d08828662000b10565b915062000d16828562000b10565b915062000d24828462000b10565b9150819050979650505050505050565b6000602082019050818103600083015262000d4f8162000bd2565b9050919050565b6000602082019050818103600083015262000d718162000bf9565b9050919050565b6000602082019050818103600083015262000d938162000c20565b9050919050565b6000602082019050818103600083015262000db58162000c47565b9050919050565b6000602082019050818103600083015262000dd78162000c6e565b9050919050565b600060a08201905062000df5600083018862000ca6565b62000e04602083018762000ca6565b62000e13604083018662000c95565b62000e22606083018562000c95565b62000e31608083018462000c95565b9695505050505050565b60008190508160005260206000209050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600062000e848262000f01565b915062000e918362000f01565b92508267ffffffffffffffff0382111562000eb15762000eb062000ff3565b5b828201905092915050565b600062000ec98262000f01565b915062000ed68362000f01565b92508282101562000eec5762000eeb62000ff3565b5b828203905092915050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b60005b8381101562000f4257808201518184015260208101905062000f25565b8381111562000f52576000848401525b50505050565b6000600282049050600182168062000f7157607f821691505b6020821081141562000f885762000f8762001022565b5b50919050565b600062000f9b8262000f01565b915067ffffffffffffffff82141562000fb95762000fb862000ff3565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b6200124a8162000ef7565b81146200125657600080fd5b50565b60805160601c612a156200129b600039600081816106290152818161079101528181610f220152818161102a01528181611473015261157c0152612a156000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063daaa360c11610071578063daaa360c14610287578063ef53d97a146102b7578063f0940002146102d5578063f2fde38b146102f3578063ff21c3ba1461030f57610116565b80638da5cb5b14610213578063a04daef014610231578063d196c2e31461024f578063d9b9a9611461026b57610116565b806352d1902d116100e957806352d1902d146101915780636f2ddd93146101af5780637104ddb2146101cd578063715018a6146101eb5780638a481dad146101f557610116565b806309bd5a601461011b57806309ed460714610139578063439fab911461015757806348f9b83114610173575b600080fd5b61012361032b565b6040516101309190612113565b60405180910390f35b61014161033e565b60405161014e9190612172565b60405180910390f35b610171600480360381019061016c9190611be5565b61042d565b005b61017b61046e565b60405161018891906122ad565b60405180910390f35b610199610561565b6040516101a69190612113565b60405180910390f35b6101b761058c565b6040516101c4919061212e565b60405180910390f35b6101d5610627565b6040516101e291906120dd565b60405180910390f35b6101f361064b565b005b6101fd6106d3565b60405161020a91906122c8565b60405180910390f35b61021b61075a565b60405161022891906120dd565b60405180910390f35b61023961078d565b60405161024691906120f8565b60405180910390f35b61026960048036038101906102649190611c9b565b6107e4565b005b61028560048036038101906102809190611c2e565b610903565b005b6102a1600480360381019061029c9190611b8b565b610a1c565b6040516102ae9190612172565b60405180910390f35b6102bf610b0e565b6040516102cc91906122c8565b60405180910390f35b6102dd610b66565b6040516102ea919061212e565b60405180910390f35b61030d60048036038101906103089190611b5e565b610c01565b005b61032960048036038101906103249190611c5b565b610cf9565b005b6000610335610ef5565b60030154905090565b6000610348610f1d565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab9161036e610ef5565b6001016040518263ffffffff1660e01b815260040161038d9190612150565b600060405180830381600087803b1580156103a757600080fd5b505af11580156103bb573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b81526004016103f891906120dd565b600060405180830381600087803b15801561041257600080fd5b505af1158015610426573d6000803e3d6000fd5b5050505090565b61046b6040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250610e26565b50565b61047661198f565b61047e610ef5565b6004016040518060a00160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016000820160019054906101000a900460ff1660ff1660ff1681526020016000820160029054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201600a9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016000820160129054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681525050905090565b60007f851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c260001b905090565b6060610596610ef5565b60010180546105a49061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546105d09061258a565b801561061d5780601f106105f25761010080835404028352916020019161061d565b820191906000526020600020905b81548152906001019060200180831161060057829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6106536110a6565b73ffffffffffffffffffffffffffffffffffffffff1661067161075a565b73ffffffffffffffffffffffffffffffffffffffff16146106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be9061224d565b60405180910390fd5b6106d160006110ae565b565b6000806106de610ef5565b600401905080600001600a9054906101000a900467ffffffffffffffff168160000160129054906101000a900467ffffffffffffffff1660026107219190612417565b61072b91906123d9565b8160000160009054906101000a900460ff1660ff1661074a9190612417565b67ffffffffffffffff1691505090565b6000610764610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6107ec6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661080a61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610860576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108579061224d565b60405180910390fd5b600061086a610ef5565b6004019050828160000160006101000a81548160ff021916908360ff160217905550818160000160016101000a81548160ff021916908360ff1602179055506108fe83838360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b505050565b61090b6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661092961075a565b73ffffffffffffffffffffffffffffffffffffffff161461097f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109769061224d565b60405180910390fd5b6000610989610ef5565b6004019050818160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610a188160000160009054906101000a900460ff168260000160019054906101000a900460ff168484600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b6000610a278261146e565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab91610a4d610ef5565b6001016040518263ffffffff1660e01b8152600401610a6c9190612150565b600060405180830381600087803b158015610a8657600080fd5b505af1158015610a9a573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401610ad791906120dd565b600060405180830381600087803b158015610af157600080fd5b505af1158015610b05573d6000803e3d6000fd5b50505050919050565b600080610b19610ef5565b60040190508060000160029054906101000a900467ffffffffffffffff168160000160009054906101000a900460ff1660ff16610b569190612417565b67ffffffffffffffff1691505090565b6060610b70610ef5565b6002018054610b7e9061258a565b80601f0160208091040260200160405190810160405280929190818152602001828054610baa9061258a565b8015610bf75780601f10610bcc57610100808354040283529160200191610bf7565b820191906000526020600020905b815481529060010190602001808311610bda57829003601f168201915b5050505050905090565b610c096110a6565b73ffffffffffffffffffffffffffffffffffffffff16610c2761075a565b73ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c749061224d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce49061218d565b60405180910390fd5b610cf6816110ae565b50565b610d016110a6565b73ffffffffffffffffffffffffffffffffffffffff16610d1f61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610d75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6c9061224d565b60405180910390fd5b6000610d7f610ef5565b60040190508281600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550818160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610e218160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff168686611186565b505050565b6000610e30610ef5565b6001018054610e3e9061258a565b905014610e80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e779061220d565b60405180910390fd5b610e89816115fa565b610e99610e946110a6565b6110ae565b50565b6000600282604051610eae919061206e565b602060405180830381855afa158015610ecb573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610eee9190611bb8565b9050919050565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611011576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110089061228d565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b600033905090565b60006110b8610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816110e7610ef5565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008267ffffffffffffffff16116111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca906121cd565b60405180910390fd5b60018560ff16101580156111eb5750607f8560ff1611155b61122a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112219061222d565b60405180910390fd5b60338460ff1610158015611242575060638460ff1611155b611281576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611278906121ad565b60405180910390fd5b633b9aca008367ffffffffffffffff1610156112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c99061226d565b60405180910390fd5b6112da610ef5565b6001016112eb601060f81b8461177d565b6112f9601860f81b88611978565b611307602060f81b8561177d565b611315602860f81b89611978565b611323603060f81b8961177d565b60405160200161133896959493929190612085565b60405160208183030381529060405261134f610ef5565b60020190805190602001906113659291906119e2565b50611402611371610ef5565b600201805461137f9061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546113ab9061258a565b80156113f85780601f106113cd576101008083540402835291602001916113f8565b820191906000526020600020905b8154815290600101906020018083116113db57829003601f168201915b5050505050610e9c565b61140a610ef5565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b0868686868660405161145f9594939291906122e3565b60405180910390a25050505050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a906121ed565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b600081511161160c5761160b61261e565b5b80611615610ef5565b600101908051906020019061162b9291906119e2565b506000611636610ef5565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506117798160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b606060008290506000600290505b607f8267ffffffffffffffff1611156117c35760078267ffffffffffffffff16901c91506001816117bc91906123d9565b905061178b565b60008167ffffffffffffffff1667ffffffffffffffff8111156117e9576117e86126da565b5b6040519080825280601f01601f19166020018201604052801561181b5781602001600182028036833780820191505090505b5090508492508581600081518110611836576118356126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff16101561190257607f841660801760f81b828267ffffffffffffffff16815181106118af576118ae6126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c935080806118fa906125ed565b91505061186c565b50607f60f81b816001846119169190612459565b67ffffffffffffffff1681518110611931576119306126ab565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060611987838360ff1661177d565b905092915050565b6040518060a00160405280600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b8280546119ee9061258a565b90600052602060002090601f016020900481019282611a105760008555611a57565b82601f10611a2957805160ff1916838001178555611a57565b82800160010185558215611a57579182015b82811115611a56578251825591602001919060010190611a3b565b5b509050611a649190611a68565b5090565b5b80821115611a81576000816000905550600101611a69565b5090565b6000611a98611a938461235b565b612336565b905082815260208101848484011115611ab457611ab361270e565b5b611abf848285612548565b509392505050565b600081359050611ad681612983565b92915050565b600081359050611aeb8161299a565b92915050565b600081519050611b008161299a565b92915050565b600082601f830112611b1b57611b1a612709565b5b8135611b2b848260208601611a85565b91505092915050565b600081359050611b43816129b1565b92915050565b600081359050611b58816129c8565b92915050565b600060208284031215611b7457611b73612718565b5b6000611b8284828501611ac7565b91505092915050565b600060208284031215611ba157611ba0612718565b5b6000611baf84828501611adc565b91505092915050565b600060208284031215611bce57611bcd612718565b5b6000611bdc84828501611af1565b91505092915050565b600060208284031215611bfb57611bfa612718565b5b600082013567ffffffffffffffff811115611c1957611c18612713565b5b611c2584828501611b06565b91505092915050565b600060208284031215611c4457611c43612718565b5b6000611c5284828501611b34565b91505092915050565b60008060408385031215611c7257611c71612718565b5b6000611c8085828601611b34565b9250506020611c9185828601611b34565b9150509250929050565b60008060408385031215611cb257611cb1612718565b5b6000611cc085828601611b49565b9250506020611cd185828601611b49565b9150509250929050565b611ce48161248d565b82525050565b611cf38161249f565b82525050565b611d02816124ab565b82525050565b6000611d13826123a1565b611d1d81856123ac565b9350611d2d818560208601612557565b611d368161271d565b840191505092915050565b6000611d4c826123a1565b611d5681856123bd565b9350611d66818560208601612557565b80840191505092915050565b60008154611d7f8161258a565b611d8981866123ac565b94506001821660008114611da45760018114611db657611de9565b60ff1983168652602086019350611de9565b611dbf8561238c565b60005b83811015611de157815481890152600182019150602081019050611dc2565b808801955050505b50505092915050565b60008154611dff8161258a565b611e0981866123bd565b94506001821660008114611e245760018114611e3557611e68565b60ff19831686528186019350611e68565b611e3e8561238c565b60005b83811015611e6057815481890152600182019150602081019050611e41565b838801955050505b50505092915050565b611e7a81612512565b82525050565b6000611e8d6026836123c8565b9150611e988261272e565b604082019050919050565b6000611eb0603d836123c8565b9150611ebb8261277d565b604082019050919050565b6000611ed36025836123c8565b9150611ede826127cc565b604082019050919050565b6000611ef66018836123c8565b9150611f018261281b565b602082019050919050565b6000611f19602f836123c8565b9150611f2482612844565b604082019050919050565b6000611f3c603c836123c8565b9150611f4782612893565b604082019050919050565b6000611f5f6020836123c8565b9150611f6a826128e2565b602082019050919050565b6000611f82603d836123c8565b9150611f8d8261290b565b604082019050919050565b6000611fa56017836123c8565b9150611fb08261295a565b602082019050919050565b60a082016000820151611fd16000850182612050565b506020820151611fe46020850182612050565b506040820151611ff76040850182612032565b50606082015161200a6060850182612032565b50608082015161201d6080850182612032565b50505050565b61202c816124b5565b82525050565b61203b816124f1565b82525050565b61204a816124f1565b82525050565b61205981612505565b82525050565b61206881612505565b82525050565b600061207a8284611d41565b915081905092915050565b60006120918289611df2565b915061209d8288611d41565b91506120a98287611d41565b91506120b58286611d41565b91506120c18285611d41565b91506120cd8284611d41565b9150819050979650505050505050565b60006020820190506120f26000830184611cdb565b92915050565b600060208201905061210d6000830184611cea565b92915050565b60006020820190506121286000830184611cf9565b92915050565b600060208201905081810360008301526121488184611d08565b905092915050565b6000602082019050818103600083015261216a8184611d72565b905092915050565b60006020820190506121876000830184611e71565b92915050565b600060208201905081810360008301526121a681611e80565b9050919050565b600060208201905081810360008301526121c681611ea3565b9050919050565b600060208201905081810360008301526121e681611ec6565b9050919050565b6000602082019050818103600083015261220681611ee9565b9050919050565b6000602082019050818103600083015261222681611f0c565b9050919050565b6000602082019050818103600083015261224681611f2f565b9050919050565b6000602082019050818103600083015261226681611f52565b9050919050565b6000602082019050818103600083015261228681611f75565b9050919050565b600060208201905081810360008301526122a681611f98565b9050919050565b600060a0820190506122c26000830184611fbb565b92915050565b60006020820190506122dd6000830184612023565b92915050565b600060a0820190506122f8600083018861205f565b612305602083018761205f565b6123126040830186612041565b61231f6060830185612041565b61232c6080830184612041565b9695505050505050565b6000612340612351565b905061234c82826125bc565b919050565b6000604051905090565b600067ffffffffffffffff821115612376576123756126da565b5b61237f8261271d565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006123e4826124f1565b91506123ef836124f1565b92508267ffffffffffffffff0382111561240c5761240b61264d565b5b828201905092915050565b6000612422826124f1565b915061242d836124f1565b92508167ffffffffffffffff048311821515161561244e5761244d61264d565b5b828202905092915050565b6000612464826124f1565b915061246f836124f1565b9250828210156124825761248161264d565b5b828203905092915050565b6000612498826124d1565b9050919050565b60008115159050919050565b6000819050919050565b60006fffffffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b600061251d82612524565b9050919050565b600061252f82612536565b9050919050565b6000612541826124d1565b9050919050565b82818337600083830152505050565b60005b8381101561257557808201518184015260208101905061255a565b83811115612584576000848401525b50505050565b600060028204905060018216806125a257607f821691505b602082108114156125b6576125b561267c565b5b50919050565b6125c58261271d565b810181811067ffffffffffffffff821117156125e4576125e36126da565b5b80604052505050565b60006125f8826124f1565b915067ffffffffffffffff8214156126135761261261264d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b61298c8161248d565b811461299757600080fd5b50565b6129a3816124ab565b81146129ae57600080fd5b50565b6129ba816124f1565b81146129c557600080fd5b50565b6129d181612505565b81146129dc57600080fd5b5056fea264697066735822122018d3be95fdcbd8bc6f0654dc2eb3dcdc04b923b60a7642bd2f454937f279d0f064736f6c63430008070033","opcodes":"PUSH1 0xA0 PUSH1 0x40 MSTORE ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x80 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0x60 SHL DUP2 MSTORE POP CALLVALUE DUP1 ISZERO PUSH3 0x47 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH3 0x68 PUSH3 0x5C PUSH3 0x8E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x96 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x88 PUSH1 0x40 MLOAD DUP1 PUSH1 0x20 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE POP PUSH3 0x17E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x1259 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0xA8 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH3 0xDF PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH3 0x1C9 PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH3 0x1F4 PUSH1 0x20 SHL PUSH3 0xE26 OR PUSH1 0x20 SHR JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH3 0x206 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH3 0x216 SWAP1 PUSH3 0xF58 JUMP JUMPDEST SWAP1 POP EQ PUSH3 0x25B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x252 SWAP1 PUSH3 0xD78 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x26C DUP2 PUSH3 0x28F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x28C PUSH3 0x280 PUSH3 0x8E PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x96 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH3 0x2A4 JUMPI PUSH3 0x2A3 PUSH3 0xFC4 JUMP JUMPDEST JUMPDEST DUP1 PUSH3 0x2B5 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x2CD SWAP3 SWAP2 SWAP1 PUSH3 0xA17 JUMP JUMPDEST POP PUSH1 0x0 PUSH3 0x2E0 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x42B DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH3 0x42F PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH3 0x47F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x476 SWAP1 PUSH3 0xD56 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH3 0x498 JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH3 0x4DA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x4D1 SWAP1 PUSH3 0xD9A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH3 0x4F3 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH3 0x535 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x52C SWAP1 PUSH3 0xD34 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH3 0x589 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x580 SWAP1 PUSH3 0xDBC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH3 0x599 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 ADD PUSH3 0x5B2 PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5C8 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH3 0x99A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5DE PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x5F4 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH3 0x99A PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x60A PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH3 0x621 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xCD0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH3 0x640 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x658 SWAP3 SWAP2 SWAP1 PUSH3 0xA17 JUMP JUMPDEST POP PUSH3 0x712 PUSH3 0x66D PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH3 0x67D SWAP1 PUSH3 0xF58 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 PUSH3 0x6AB SWAP1 PUSH3 0xF58 JUMP JUMPDEST DUP1 ISZERO PUSH3 0x6FC JUMPI DUP1 PUSH1 0x1F LT PUSH3 0x6D0 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH3 0x6FC 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 PUSH3 0x6DE JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH3 0x9B9 PUSH1 0x20 SHL PUSH3 0xE9C OR PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x722 PUSH3 0x1CC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH3 0x779 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH3 0xDDE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH3 0x7D2 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH3 0x7CA SWAP2 SWAP1 PUSH3 0xE77 JUMP JUMPDEST SWAP1 POP PUSH3 0x796 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH3 0x7FB JUMPI PUSH3 0x7FA PUSH3 0x1080 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH3 0x82E JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH3 0x84C JUMPI PUSH3 0x84B PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH3 0x91F JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH3 0x8C9 JUMPI PUSH3 0x8C8 PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH3 0x916 SWAP1 PUSH3 0xF8E JUMP JUMPDEST SWAP2 POP POP PUSH3 0x882 JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH3 0x935 SWAP2 SWAP1 PUSH3 0xEBC JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH3 0x953 JUMPI PUSH3 0x952 PUSH3 0x1051 JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH3 0x9B1 DUP4 DUP4 PUSH1 0xFF AND PUSH3 0x788 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH3 0x9CD SWAP2 SWAP1 PUSH3 0xCB7 JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH3 0x9EB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 PUSH3 0xA10 SWAP2 SWAP1 PUSH3 0xADE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0xA25 SWAP1 PUSH3 0xF58 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0xA49 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0xA95 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0xA64 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0xA95 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0xA95 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0xA94 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0xA77 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0xAA4 SWAP2 SWAP1 PUSH3 0xAA8 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0xAC3 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0xAA9 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH3 0xAD8 DUP2 PUSH3 0x123F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH3 0xAF7 JUMPI PUSH3 0xAF6 PUSH3 0x10AF JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH3 0xB07 DUP5 DUP3 DUP6 ADD PUSH3 0xAC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xB1D DUP3 PUSH3 0xE50 JUMP JUMPDEST PUSH3 0xB29 DUP2 DUP6 PUSH3 0xE5B JUMP JUMPDEST SWAP4 POP PUSH3 0xB3B DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH3 0xF22 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH3 0xB56 DUP2 PUSH3 0xF58 JUMP JUMPDEST PUSH3 0xB62 DUP2 DUP7 PUSH3 0xE5B JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH3 0xB80 JUMPI PUSH1 0x1 DUP2 EQ PUSH3 0xB92 JUMPI PUSH3 0xBC9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH3 0xBC9 JUMP JUMPDEST PUSH3 0xB9D DUP6 PUSH3 0xE3B JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xBC1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0xBA0 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xBE1 PUSH1 0x3D DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xBEE DUP3 PUSH3 0x10B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC08 PUSH1 0x25 DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC15 DUP3 PUSH3 0x1103 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC2F PUSH1 0x2F DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC3C DUP3 PUSH3 0x1152 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC56 PUSH1 0x3C DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC63 DUP3 PUSH3 0x11A1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xC7D PUSH1 0x3D DUP4 PUSH3 0xE66 JUMP JUMPDEST SWAP2 POP PUSH3 0xC8A DUP3 PUSH3 0x11F0 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH3 0xCA0 DUP2 PUSH3 0xF01 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH3 0xCB1 DUP2 PUSH3 0xF15 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCC5 DUP3 DUP5 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xCDE DUP3 DUP10 PUSH3 0xB47 JUMP JUMPDEST SWAP2 POP PUSH3 0xCEC DUP3 DUP9 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xCFA DUP3 DUP8 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD08 DUP3 DUP7 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD16 DUP3 DUP6 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP PUSH3 0xD24 DUP3 DUP5 PUSH3 0xB10 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 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 PUSH3 0xD4F DUP2 PUSH3 0xBD2 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 PUSH3 0xD71 DUP2 PUSH3 0xBF9 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 PUSH3 0xD93 DUP2 PUSH3 0xC20 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 PUSH3 0xDB5 DUP2 PUSH3 0xC47 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 PUSH3 0xDD7 DUP2 PUSH3 0xC6E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH3 0xDF5 PUSH1 0x0 DUP4 ADD DUP9 PUSH3 0xCA6 JUMP JUMPDEST PUSH3 0xE04 PUSH1 0x20 DUP4 ADD DUP8 PUSH3 0xCA6 JUMP JUMPDEST PUSH3 0xE13 PUSH1 0x40 DUP4 ADD DUP7 PUSH3 0xC95 JUMP JUMPDEST PUSH3 0xE22 PUSH1 0x60 DUP4 ADD DUP6 PUSH3 0xC95 JUMP JUMPDEST PUSH3 0xE31 PUSH1 0x80 DUP4 ADD DUP5 PUSH3 0xC95 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 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 PUSH3 0xE84 DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH3 0xE91 DUP4 PUSH3 0xF01 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH3 0xEB1 JUMPI PUSH3 0xEB0 PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xEC9 DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH3 0xED6 DUP4 PUSH3 0xF01 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH3 0xEEC JUMPI PUSH3 0xEEB PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH3 0xF42 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH3 0xF25 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH3 0xF52 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 PUSH3 0xF71 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0xF88 JUMPI PUSH3 0xF87 PUSH3 0x1022 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0xF9B DUP3 PUSH3 0xF01 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH3 0xFB9 JUMPI PUSH3 0xFB8 PUSH3 0xFF3 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH3 0x124A DUP2 PUSH3 0xEF7 JUMP JUMPDEST DUP2 EQ PUSH3 0x1256 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH2 0x2A15 PUSH3 0x129B PUSH1 0x0 CODECOPY PUSH1 0x0 DUP2 DUP2 PUSH2 0x629 ADD MSTORE DUP2 DUP2 PUSH2 0x791 ADD MSTORE DUP2 DUP2 PUSH2 0xF22 ADD MSTORE DUP2 DUP2 PUSH2 0x102A ADD MSTORE DUP2 DUP2 PUSH2 0x1473 ADD MSTORE PUSH2 0x157C ADD MSTORE PUSH2 0x2A15 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 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xDAAA360C GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x287 JUMPI DUP1 PUSH4 0xEF53D97A EQ PUSH2 0x2B7 JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x2D5 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0xFF21C3BA EQ PUSH2 0x30F JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x213 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x231 JUMPI DUP1 PUSH4 0xD196C2E3 EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xD9B9A961 EQ PUSH2 0x26B JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x52D1902D GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x52D1902D EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x6F2DDD93 EQ PUSH2 0x1AF JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x1CD JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x1EB JUMPI DUP1 PUSH4 0x8A481DAD EQ PUSH2 0x1F5 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x157 JUMPI DUP1 PUSH4 0x48F9B831 EQ PUSH2 0x173 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x32B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x141 PUSH2 0x33E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x14E SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x171 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x16C SWAP2 SWAP1 PUSH2 0x1BE5 JUMP JUMPDEST PUSH2 0x42D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17B PUSH2 0x46E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x188 SWAP2 SWAP1 PUSH2 0x22AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x199 PUSH2 0x561 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1A6 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1B7 PUSH2 0x58C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C4 SWAP2 SWAP1 PUSH2 0x212E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1D5 PUSH2 0x627 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E2 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F3 PUSH2 0x64B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1FD PUSH2 0x6D3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x20A SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x21B PUSH2 0x75A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x228 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x239 PUSH2 0x78D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x246 SWAP2 SWAP1 PUSH2 0x20F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x269 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x264 SWAP2 SWAP1 PUSH2 0x1C9B JUMP JUMPDEST PUSH2 0x7E4 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x285 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x1C2E JUMP JUMPDEST PUSH2 0x903 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x29C SWAP2 SWAP1 PUSH2 0x1B8B JUMP JUMPDEST PUSH2 0xA1C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AE SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2BF PUSH2 0xB0E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2CC SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2DD PUSH2 0xB66 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x212E 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 0x1B5E JUMP JUMPDEST PUSH2 0xC01 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x329 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x324 SWAP2 SWAP1 PUSH2 0x1C5B JUMP JUMPDEST PUSH2 0xCF9 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0x335 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x348 PUSH2 0xF1D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0x36E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38D SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3BB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F8 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x412 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x426 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP1 JUMP JUMPDEST PUSH2 0x46B PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH2 0xE26 JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x476 PUSH2 0x198F JUMP JUMPDEST PUSH2 0x47E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x851D0A92A3AD30295BEF33AFC69D6874779826B7789386B336E22621365ED2C2 PUSH1 0x0 SHL SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x596 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x5A4 SWAP1 PUSH2 0x258A 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 0x5D0 SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x61D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5F2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x61D 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 0x600 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x653 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x671 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6BE SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x6D1 PUSH1 0x0 PUSH2 0x10AE JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x6DE PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH2 0x721 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH2 0x72B SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0x74A SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x764 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x7EC PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x80A PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x860 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x857 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x86A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x8FE DUP4 DUP4 DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x90B PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x929 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x97F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x976 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x989 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xA18 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP5 DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA27 DUP3 PUSH2 0x146E JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0xA4D PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA6C SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xA86 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xA9A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xAF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xB05 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB19 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0xB56 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0xB70 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0xB7E SWAP1 PUSH2 0x258A 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 0xBAA SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0xBF7 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xBCC JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xBF7 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 0xBDA JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0xC09 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC27 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xC7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC74 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xCED JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE4 SWAP1 PUSH2 0x218D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCF6 DUP2 PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0xD01 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD1F PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD6C SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xD7F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xE21 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP7 DUP7 PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE30 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0xE3E SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 POP EQ PUSH2 0xE80 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE77 SWAP1 PUSH2 0x220D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xE89 DUP2 PUSH2 0x15FA JUMP JUMPDEST PUSH2 0xE99 PUSH2 0xE94 PUSH2 0x10A6 JUMP JUMPDEST PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0xEAE SWAP2 SWAP1 PUSH2 0x206E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xECB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0xEEE SWAP2 SWAP1 PUSH2 0x1BB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1011 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1008 SWAP1 PUSH2 0x228D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x10B8 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH2 0x10E7 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH2 0x11D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11CA SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x11EB JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x122A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1221 SWAP1 PUSH2 0x222D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x1242 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x1281 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1278 SWAP1 PUSH2 0x21AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x12D2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12C9 SWAP1 PUSH2 0x226D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x12DA PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x12EB PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x12F9 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1307 PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x1315 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1323 PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH2 0x177D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1338 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2085 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x134F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x1365 SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH2 0x1402 PUSH2 0x1371 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x137F SWAP1 PUSH2 0x258A 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 0x13AB SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x13F8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13CD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x13F8 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 0x13DB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0xE9C JUMP JUMPDEST PUSH2 0x140A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x145F SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x22E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1563 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x155A SWAP1 PUSH2 0x21ED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x160C JUMPI PUSH2 0x160B PUSH2 0x261E JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x1615 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x162B SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x1636 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1779 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x17C3 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH2 0x17BC SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST SWAP1 POP PUSH2 0x178B JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x17E9 JUMPI PUSH2 0x17E8 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x181B JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1836 JUMPI PUSH2 0x1835 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1902 JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x18AF JUMPI PUSH2 0x18AE PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH2 0x18FA SWAP1 PUSH2 0x25ED JUMP JUMPDEST SWAP2 POP POP PUSH2 0x186C JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH2 0x1916 SWAP2 SWAP1 PUSH2 0x2459 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1931 JUMPI PUSH2 0x1930 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1987 DUP4 DUP4 PUSH1 0xFF AND PUSH2 0x177D JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x19EE SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1A10 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1A29 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1A57 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1A56 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1A3B JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1A64 SWAP2 SWAP1 PUSH2 0x1A68 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1A81 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1A69 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A98 PUSH2 0x1A93 DUP5 PUSH2 0x235B JUMP JUMPDEST PUSH2 0x2336 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1AB4 JUMPI PUSH2 0x1AB3 PUSH2 0x270E JUMP JUMPDEST JUMPDEST PUSH2 0x1ABF DUP5 DUP3 DUP6 PUSH2 0x2548 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AD6 DUP2 PUSH2 0x2983 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AEB DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1B00 DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B1B JUMPI PUSH2 0x1B1A PUSH2 0x2709 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B2B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1A85 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B43 DUP2 PUSH2 0x29B1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B58 DUP2 PUSH2 0x29C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B74 JUMPI PUSH2 0x1B73 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B82 DUP5 DUP3 DUP6 ADD PUSH2 0x1AC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BA1 JUMPI PUSH2 0x1BA0 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BAF DUP5 DUP3 DUP6 ADD PUSH2 0x1ADC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BCE JUMPI PUSH2 0x1BCD PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BDC DUP5 DUP3 DUP6 ADD PUSH2 0x1AF1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BFB JUMPI PUSH2 0x1BFA PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C19 JUMPI PUSH2 0x1C18 PUSH2 0x2713 JUMP JUMPDEST JUMPDEST PUSH2 0x1C25 DUP5 DUP3 DUP6 ADD PUSH2 0x1B06 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1C44 JUMPI PUSH2 0x1C43 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C52 DUP5 DUP3 DUP6 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C72 JUMPI PUSH2 0x1C71 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C80 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1C91 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1CB2 JUMPI PUSH2 0x1CB1 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CC0 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1CD1 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1CE4 DUP2 PUSH2 0x248D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1CF3 DUP2 PUSH2 0x249F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1D02 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D13 DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D1D DUP2 DUP6 PUSH2 0x23AC JUMP JUMPDEST SWAP4 POP PUSH2 0x1D2D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST PUSH2 0x1D36 DUP2 PUSH2 0x271D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D4C DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D56 DUP2 DUP6 PUSH2 0x23BD JUMP JUMPDEST SWAP4 POP PUSH2 0x1D66 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1D7F DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1D89 DUP2 DUP7 PUSH2 0x23AC JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1DA4 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1DB6 JUMPI PUSH2 0x1DE9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE PUSH1 0x20 DUP7 ADD SWAP4 POP PUSH2 0x1DE9 JUMP JUMPDEST PUSH2 0x1DBF DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1DE1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1DC2 JUMP JUMPDEST DUP1 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1DFF DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1E09 DUP2 DUP7 PUSH2 0x23BD JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1E24 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1E35 JUMPI PUSH2 0x1E68 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH2 0x1E68 JUMP JUMPDEST PUSH2 0x1E3E DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E60 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1E41 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1E7A DUP2 PUSH2 0x2512 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E8D PUSH1 0x26 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E98 DUP3 PUSH2 0x272E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EB0 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EBB DUP3 PUSH2 0x277D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ED3 PUSH1 0x25 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EDE DUP3 PUSH2 0x27CC JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF6 PUSH1 0x18 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F01 DUP3 PUSH2 0x281B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F19 PUSH1 0x2F DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F24 DUP3 PUSH2 0x2844 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F3C PUSH1 0x3C DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F47 DUP3 PUSH2 0x2893 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F5F PUSH1 0x20 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F6A DUP3 PUSH2 0x28E2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F82 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F8D DUP3 PUSH2 0x290B JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA5 PUSH1 0x17 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FB0 DUP3 PUSH2 0x295A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x1FD1 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x1FE4 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x1FF7 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x200A PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x201D PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x202C DUP2 PUSH2 0x24B5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x203B DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x204A DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2059 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2068 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x207A DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2091 DUP3 DUP10 PUSH2 0x1DF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x209D DUP3 DUP9 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20A9 DUP3 DUP8 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20B5 DUP3 DUP7 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20C1 DUP3 DUP6 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20CD DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20F2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CDB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x210D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CEA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2128 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CF9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2148 DUP2 DUP5 PUSH2 0x1D08 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 0x216A DUP2 DUP5 PUSH2 0x1D72 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2187 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1E71 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21A6 DUP2 PUSH2 0x1E80 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 0x21C6 DUP2 PUSH2 0x1EA3 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 0x21E6 DUP2 PUSH2 0x1EC6 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 0x2206 DUP2 PUSH2 0x1EE9 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 0x2226 DUP2 PUSH2 0x1F0C 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 0x2246 DUP2 PUSH2 0x1F2F 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 0x2266 DUP2 PUSH2 0x1F52 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 0x2286 DUP2 PUSH2 0x1F75 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 0x22A6 DUP2 PUSH2 0x1F98 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22C2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FBB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x22DD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2023 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22F8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2305 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2312 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x231F PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x232C PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2041 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2340 PUSH2 0x2351 JUMP JUMPDEST SWAP1 POP PUSH2 0x234C DUP3 DUP3 PUSH2 0x25BC 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 0x2376 JUMPI PUSH2 0x2375 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH2 0x237F DUP3 PUSH2 0x271D JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 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 DUP2 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 0x23E4 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x23EF DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x240C JUMPI PUSH2 0x240B PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2422 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x242D DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x244E JUMPI PUSH2 0x244D PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2464 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x246F DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2482 JUMPI PUSH2 0x2481 PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2498 DUP3 PUSH2 0x24D1 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 PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x251D DUP3 PUSH2 0x2524 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x252F DUP3 PUSH2 0x2536 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2541 DUP3 PUSH2 0x24D1 JUMP JUMPDEST 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 0x2575 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x255A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2584 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 0x25A2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x25B6 JUMPI PUSH2 0x25B5 PUSH2 0x267C JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25C5 DUP3 PUSH2 0x271D JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x25E4 JUMPI PUSH2 0x25E3 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F8 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2613 JUMPI PUSH2 0x2612 PUSH2 0x264D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x298C DUP2 PUSH2 0x248D JUMP JUMPDEST DUP2 EQ PUSH2 0x2997 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29A3 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP2 EQ PUSH2 0x29AE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29BA DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP2 EQ PUSH2 0x29C5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29D1 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP2 EQ PUSH2 0x29DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 XOR 0xD3 0xBE SWAP6 REVERT 0xCB 0xD8 0xBC PUSH16 0x654DC2EB3DCDC04B923B60A7642BD2F GASLIMIT 0x49 CALLDATACOPY CALLCODE PUSH26 0xD0F064736F6C6343000807003300000000000000000000000000 ","sourceMap":"110:387:45:-:0;;;350:4:34;310:45;;;;;;;;;;;288:52:45;;;;;;;;;;902:32:38;921:12;:10;;;:12;;:::i;:::-;902:18;;;:32;;:::i;:::-;312:21:45;323:9;;;;;;;;;;;;312:10;;;:21;;:::i;:::-;110:387;;506:96:35;559:7;585:10;578:17;;506:96;:::o;8463:236:44:-;8565:16;8584:10;:8;;;:10;;:::i;:::-;:16;;;;;;;;;;;;8565:35;;8629:8;8610:10;:8;;;:10;;:::i;:::-;:16;;;:27;;;;;;;;;;;;;;;;;;8683:8;8652:40;;8673:8;8652:40;;;;;;;;;;;;8555:144;8463:236;:::o;346:149:45:-;434:54;451:36;;;;;;;;;;;;;;;;;434:16;;;;;:54;;:::i;:::-;346:149;:::o;12167:343:44:-;12242:46;12428:66;12327:167;;12167:343;:::o;7678:270::-;7814:1;7784:10;:8;;;:10;;:::i;:::-;:19;;:26;;;;;:::i;:::-;;;:31;7776:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;7877:22;7889:9;7877:11;;;:22;;:::i;:::-;7909:32;7928:12;:10;;;:12;;:::i;:::-;7909:18;;;:32;;:::i;:::-;7678:270;:::o;9679:756::-;9781:1;9762:9;:16;:20;9755:28;;;;:::i;:::-;;9815:9;9793:10;:8;;;:10;;:::i;:::-;:19;;:31;;;;;;;;;;;;:::i;:::-;;9835:45;9883:10;:8;;;:10;;:::i;:::-;:17;;9835:65;;9933:1;9910:7;:20;;;:24;;;;;;;;;;;;;;;;;;9977:2;9944:7;:30;;;:35;;;;;;;;;;;;;;;;;;10020:7;9989;:28;;;:38;;;;;;;;;;;;;;;;;;10078:11;10051:7;:24;;;:38;;;;;;;;;;;;;;;;;;10152:12;10121:7;:28;;;:43;;;;;;;;;;;;;;;;;;10201:227;10232:7;:20;;;;;;;;;;;;10266:7;:30;;;;;;;;;;;;10310:7;:28;;;;;;;;;;;;10352:7;:24;;;;;;;;;;;;10390:7;:28;;;;;;;;;;;;10201:17;;;:227;;:::i;:::-;9745:690;9679:756;:::o;10535:1550::-;10858:1;10838:17;:21;;;10817:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;10970:1;10953:13;:18;;;;:42;;;;;10992:3;10975:13;:20;;;;10953:42;10932:149;;;;;;;;;;;;:::i;:::-;;;;;;;;;11139:2;11112:23;:29;;;;:62;;;;;11172:2;11145:23;:29;;;;11112:62;11091:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;11317:7;11292:21;:32;;;;11271:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;11474:10;:8;;;:10;;:::i;:::-;:19;;11507:46;11528:4;11521:12;;11535:17;11507:13;;;:46;;:::i;:::-;11567:41;11587:4;11580:12;;11594:13;11567:12;;;:41;;:::i;:::-;11622:42;11636:4;11622:42;;11642:21;11622:13;;;:42;;:::i;:::-;11678:43;11691:4;11678:43;;11697:23;11678:12;;;:43;;:::i;:::-;11735:42;11749:4;11735:42;;11755:21;11735:13;;;:42;;:::i;:::-;11444:343;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;11422:10;:8;;;:10;;:::i;:::-;:19;;:365;;;;;;;;;;;;:::i;:::-;;11815:26;:10;:8;;;:10;;:::i;:::-;:19;;:24;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:26;;:::i;:::-;11797:10;:8;;;:10;;:::i;:::-;:15;;:44;;;;11893:10;11856:222;;;11917:13;11944:23;11981:21;12016:17;12047:21;11856:222;;;;;;;;;;:::i;:::-;;;;;;;;10535:1550;;;;;:::o;12727:798::-;12809:12;12982:10;12995:1;12982:14;;13006:15;13024:1;13006:19;;13035:85;13048:4;13042:3;:10;;;13035:85;;;13081:1;13074:3;:8;;;;13068:14;;13108:1;13096:13;;;;;:::i;:::-;;;13035:85;;;13129:16;13158:8;13148:19;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13129:38;;13183:1;13177:7;;13203:1;13194:3;13198:1;13194:6;;;;;;;;:::i;:::-;;;;;:10;;;;;;;;;;;13219:8;13230:1;13219:12;;13214:202;13237:8;13233:12;;:1;:12;;;13214:202;;;13371:4;13365:3;:10;13352:4;:24;13345:32;;13336:3;13340:1;13336:6;;;;;;;;;;:::i;:::-;;;;;:41;;;;;;;;;;;13404:1;13397:3;:8;;;;13391:14;;13247:3;;;;;:::i;:::-;;;;13214:202;;;;13494:4;13473:25;;:3;13488:1;13477:8;:12;;;;:::i;:::-;13473:17;;;;;;;;;;:::i;:::-;;;;;:25;;;;;;;;;;;;;;;;;;;;;13515:3;13508:10;;;;;12727:798;;;;:::o;13654:149::-;13734:12;13769:27;13783:1;13793;13786:9;;13769:13;;;:27;;:::i;:::-;13762:34;;13654:149;;;;:::o;298:111:29:-;359:7;385:17;392:9;385:17;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;378:24;;298:111;;;:::o;110:387:45:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:143:46:-;64:5;95:6;89:13;80:22;;111:33;138:5;111:33;:::i;:::-;7:143;;;;:::o;156:351::-;226:6;275:2;263:9;254:7;250:23;246:32;243:119;;;281:79;;:::i;:::-;243:119;401:1;426:64;482:7;473:6;462:9;458:22;426:64;:::i;:::-;416:74;;372:128;156:351;;;;:::o;513:373::-;617:3;645:38;677:5;645:38;:::i;:::-;699:88;780:6;775:3;699:88;:::i;:::-;692:95;;796:52;841:6;836:3;829:4;822:5;818:16;796:52;:::i;:::-;873:6;868:3;864:16;857:23;;621:265;513:373;;;;:::o;914:841::-;1015:3;1052:5;1046:12;1081:36;1107:9;1081:36;:::i;:::-;1133:88;1214:6;1209:3;1133:88;:::i;:::-;1126:95;;1252:1;1241:9;1237:17;1268:1;1263:137;;;;1414:1;1409:340;;;;1230:519;;1263:137;1347:4;1343:9;1332;1328:25;1323:3;1316:38;1383:6;1378:3;1374:16;1367:23;;1263:137;;1409:340;1476:37;1507:5;1476:37;:::i;:::-;1535:1;1549:154;1563:6;1560:1;1557:13;1549:154;;;1637:7;1631:14;1627:1;1622:3;1618:11;1611:35;1687:1;1678:7;1674:15;1663:26;;1585:4;1582:1;1578:12;1573:17;;1549:154;;;1732:6;1727:3;1723:16;1716:23;;1416:333;;1230:519;;1019:736;;914:841;;;;:::o;1761:366::-;1903:3;1924:67;1988:2;1983:3;1924:67;:::i;:::-;1917:74;;2000:93;2089:3;2000:93;:::i;:::-;2118:2;2113:3;2109:12;2102:19;;1761:366;;;:::o;2133:::-;2275:3;2296:67;2360:2;2355:3;2296:67;:::i;:::-;2289:74;;2372:93;2461:3;2372:93;:::i;:::-;2490:2;2485:3;2481:12;2474:19;;2133:366;;;:::o;2505:::-;2647:3;2668:67;2732:2;2727:3;2668:67;:::i;:::-;2661:74;;2744:93;2833:3;2744:93;:::i;:::-;2862:2;2857:3;2853:12;2846:19;;2505:366;;;:::o;2877:::-;3019:3;3040:67;3104:2;3099:3;3040:67;:::i;:::-;3033:74;;3116:93;3205:3;3116:93;:::i;:::-;3234:2;3229:3;3225:12;3218:19;;2877:366;;;:::o;3249:::-;3391:3;3412:67;3476:2;3471:3;3412:67;:::i;:::-;3405:74;;3488:93;3577:3;3488:93;:::i;:::-;3606:2;3601:3;3597:12;3590:19;;3249:366;;;:::o;3621:115::-;3706:23;3723:5;3706:23;:::i;:::-;3701:3;3694:36;3621:115;;:::o;3742:112::-;3825:22;3841:5;3825:22;:::i;:::-;3820:3;3813:35;3742:112;;:::o;3860:271::-;3990:3;4012:93;4101:3;4092:6;4012:93;:::i;:::-;4005:100;;4122:3;4115:10;;3860:271;;;;:::o;4137:1045::-;4494:3;4516:90;4602:3;4593:6;4516:90;:::i;:::-;4509:97;;4623:93;4712:3;4703:6;4623:93;:::i;:::-;4616:100;;4733:93;4822:3;4813:6;4733:93;:::i;:::-;4726:100;;4843:93;4932:3;4923:6;4843:93;:::i;:::-;4836:100;;4953:93;5042:3;5033:6;4953:93;:::i;:::-;4946:100;;5063:93;5152:3;5143:6;5063:93;:::i;:::-;5056:100;;5173:3;5166:10;;4137:1045;;;;;;;;;:::o;5188:419::-;5354:4;5392:2;5381:9;5377:18;5369:26;;5441:9;5435:4;5431:20;5427:1;5416:9;5412:17;5405:47;5469:131;5595:4;5469:131;:::i;:::-;5461:139;;5188:419;;;:::o;5613:::-;5779:4;5817:2;5806:9;5802:18;5794:26;;5866:9;5860:4;5856:20;5852:1;5841:9;5837:17;5830:47;5894:131;6020:4;5894:131;:::i;:::-;5886:139;;5613:419;;;:::o;6038:::-;6204:4;6242:2;6231:9;6227:18;6219:26;;6291:9;6285:4;6281:20;6277:1;6266:9;6262:17;6255:47;6319:131;6445:4;6319:131;:::i;:::-;6311:139;;6038:419;;;:::o;6463:::-;6629:4;6667:2;6656:9;6652:18;6644:26;;6716:9;6710:4;6706:20;6702:1;6691:9;6687:17;6680:47;6744:131;6870:4;6744:131;:::i;:::-;6736:139;;6463:419;;;:::o;6888:::-;7054:4;7092:2;7081:9;7077:18;7069:26;;7141:9;7135:4;7131:20;7127:1;7116:9;7112:17;7105:47;7169:131;7295:4;7169:131;:::i;:::-;7161:139;;6888:419;;;:::o;7313:636::-;7504:4;7542:3;7531:9;7527:19;7519:27;;7556:67;7620:1;7609:9;7605:17;7596:6;7556:67;:::i;:::-;7633:68;7697:2;7686:9;7682:18;7673:6;7633:68;:::i;:::-;7711:70;7777:2;7766:9;7762:18;7753:6;7711:70;:::i;:::-;7791;7857:2;7846:9;7842:18;7833:6;7791:70;:::i;:::-;7871:71;7937:3;7926:9;7922:19;7913:6;7871:71;:::i;:::-;7313:636;;;;;;;;:::o;8036:140::-;8084:4;8107:3;8099:11;;8130:3;8127:1;8120:14;8164:4;8161:1;8151:18;8143:26;;8036:140;;;:::o;8182:98::-;8233:6;8267:5;8261:12;8251:22;;8182:98;;;:::o;8286:147::-;8387:11;8424:3;8409:18;;8286:147;;;;:::o;8439:169::-;8523:11;8557:6;8552:3;8545:19;8597:4;8592:3;8588:14;8573:29;;8439:169;;;;:::o;8614:254::-;8653:3;8672:19;8689:1;8672:19;:::i;:::-;8667:24;;8705:19;8722:1;8705:19;:::i;:::-;8700:24;;8810:1;8790:18;8786:26;8783:1;8780:33;8777:59;;;8816:18;;:::i;:::-;8777:59;8860:1;8857;8853:9;8846:16;;8614:254;;;;:::o;8874:188::-;8913:4;8933:19;8950:1;8933:19;:::i;:::-;8928:24;;8966:19;8983:1;8966:19;:::i;:::-;8961:24;;9004:1;9001;8998:8;8995:34;;;9009:18;;:::i;:::-;8995:34;9054:1;9051;9047:9;9039:17;;8874:188;;;;:::o;9068:77::-;9105:7;9134:5;9123:16;;9068:77;;;:::o;9151:101::-;9187:7;9227:18;9220:5;9216:30;9205:41;;9151:101;;;:::o;9258:86::-;9293:7;9333:4;9326:5;9322:16;9311:27;;9258:86;;;:::o;9350:307::-;9418:1;9428:113;9442:6;9439:1;9436:13;9428:113;;;9527:1;9522:3;9518:11;9512:18;9508:1;9503:3;9499:11;9492:39;9464:2;9461:1;9457:10;9452:15;;9428:113;;;9559:6;9556:1;9553:13;9550:101;;;9639:1;9630:6;9625:3;9621:16;9614:27;9550:101;9399:258;9350:307;;;:::o;9663:320::-;9707:6;9744:1;9738:4;9734:12;9724:22;;9791:1;9785:4;9781:12;9812:18;9802:81;;9868:4;9860:6;9856:17;9846:27;;9802:81;9930:2;9922:6;9919:14;9899:18;9896:38;9893:84;;;9949:18;;:::i;:::-;9893:84;9714:269;9663:320;;;:::o;9989:183::-;10027:3;10050:23;10067:5;10050:23;:::i;:::-;10041:32;;10095:18;10088:5;10085:29;10082:55;;;10117:18;;:::i;:::-;10082:55;10164:1;10157:5;10153:13;10146:20;;9989:183;;;:::o;10178:180::-;10226:77;10223:1;10216:88;10323:4;10320:1;10313:15;10347:4;10344:1;10337:15;10364:180;10412:77;10409:1;10402:88;10509:4;10506:1;10499:15;10533:4;10530:1;10523:15;10550:180;10598:77;10595:1;10588:88;10695:4;10692:1;10685:15;10719:4;10716:1;10709:15;10736:180;10784:77;10781:1;10774:88;10881:4;10878:1;10871:15;10905:4;10902:1;10895:15;10922:180;10970:77;10967:1;10960:88;11067:4;11064:1;11057:15;11091:4;11088:1;11081:15;11231:117;11340:1;11337;11330:12;11354:248;11494:34;11490:1;11482:6;11478:14;11471:58;11563:31;11558:2;11550:6;11546:15;11539:56;11354:248;:::o;11608:224::-;11748:34;11744:1;11736:6;11732:14;11725:58;11817:7;11812:2;11804:6;11800:15;11793:32;11608:224;:::o;11838:234::-;11978:34;11974:1;11966:6;11962:14;11955:58;12047:17;12042:2;12034:6;12030:15;12023:42;11838:234;:::o;12078:247::-;12218:34;12214:1;12206:6;12202:14;12195:58;12287:30;12282:2;12274:6;12270:15;12263:55;12078:247;:::o;12331:248::-;12471:34;12467:1;12459:6;12455:14;12448:58;12540:31;12535:2;12527:6;12523:15;12516:56;12331:248;:::o;12585:122::-;12658:24;12676:5;12658:24;:::i;:::-;12651:5;12648:35;12638:63;;12697:1;12694;12687:12;12638:63;12585:122;:::o;110:387:45:-;;;;;;;;;;;;;"},"deployedBytecode":{"functionDebugData":{"@_initialize_8805":{"entryPoint":5626,"id":8805,"parameterSlots":1,"returnSlots":0},"@_malleateBytecode_8915":{"entryPoint":4486,"id":8915,"parameterSlots":5,"returnSlots":0},"@_msgSender_7960":{"entryPoint":4262,"id":7960,"parameterSlots":0,"returnSlots":1},"@_request_8924":{"entryPoint":3829,"id":8924,"parameterSlots":0,"returnSlots":1},"@_transferOwnership_8714":{"entryPoint":4270,"id":8714,"parameterSlots":1,"returnSlots":0},"@_uint64varint_9019":{"entryPoint":6013,"id":9019,"parameterSlots":2,"returnSlots":1},"@_uint8varint_9038":{"entryPoint":6520,"id":9038,"parameterSlots":2,"returnSlots":1},"@bytecode_8382":{"entryPoint":2918,"id":8382,"parameterSlots":0,"returnSlots":1},"@cloneDeterministic_7947":{"entryPoint":5230,"id":7947,"parameterSlots":1,"returnSlots":1},"@cloneDeterministic_8650":{"entryPoint":2588,"id":8650,"parameterSlots":1,"returnSlots":1},"@clone_7910":{"entryPoint":3869,"id":7910,"parameterSlots":0,"returnSlots":1},"@clone_8613":{"entryPoint":830,"id":8613,"parameterSlots":0,"returnSlots":1},"@cloned_7875":{"entryPoint":1933,"id":7875,"parameterSlots":0,"returnSlots":1},"@hash_4301":{"entryPoint":3740,"id":4301,"parameterSlots":1,"returnSlots":1},"@hash_8394":{"entryPoint":811,"id":8394,"parameterSlots":0,"returnSlots":1},"@initialize_8677":{"entryPoint":3622,"id":8677,"parameterSlots":1,"returnSlots":0},"@initialize_9071":{"entryPoint":1069,"id":9071,"parameterSlots":1,"returnSlots":0},"@owner_8689":{"entryPoint":1882,"id":8689,"parameterSlots":0,"returnSlots":1},"@proxiableUUID_8725":{"entryPoint":1377,"id":8725,"parameterSlots":0,"returnSlots":1},"@renounceOwnership_8056":{"entryPoint":1611,"id":8056,"parameterSlots":0,"returnSlots":0},"@self_7850":{"entryPoint":1575,"id":7850,"parameterSlots":0,"returnSlots":0},"@setWitnessingCollateral_8428":{"entryPoint":2307,"id":8428,"parameterSlots":1,"returnSlots":0},"@setWitnessingFees_8469":{"entryPoint":3321,"id":8469,"parameterSlots":2,"returnSlots":0},"@setWitnessingQuorum_8510":{"entryPoint":2020,"id":8510,"parameterSlots":2,"returnSlots":0},"@template_8521":{"entryPoint":1420,"id":8521,"parameterSlots":0,"returnSlots":1},"@totalWitnessingCollateral_8541":{"entryPoint":2830,"id":8541,"parameterSlots":0,"returnSlots":1},"@totalWitnessingFee_8567":{"entryPoint":1747,"id":8567,"parameterSlots":0,"returnSlots":1},"@transferOwnership_8079":{"entryPoint":3073,"id":8079,"parameterSlots":1,"returnSlots":0},"@witnessingParams_8579":{"entryPoint":1134,"id":8579,"parameterSlots":0,"returnSlots":1},"abi_decode_available_length_t_bytes_memory_ptr":{"entryPoint":6789,"id":null,"parameterSlots":3,"returnSlots":1},"abi_decode_t_address":{"entryPoint":6855,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32":{"entryPoint":6876,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes32_fromMemory":{"entryPoint":6897,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_bytes_memory_ptr":{"entryPoint":6918,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint64":{"entryPoint":6964,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_t_uint8":{"entryPoint":6985,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_address":{"entryPoint":7006,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32":{"entryPoint":7051,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes32_fromMemory":{"entryPoint":7096,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_bytes_memory_ptr":{"entryPoint":7141,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint64":{"entryPoint":7214,"id":null,"parameterSlots":2,"returnSlots":1},"abi_decode_tuple_t_uint64t_uint64":{"entryPoint":7259,"id":null,"parameterSlots":2,"returnSlots":2},"abi_decode_tuple_t_uint8t_uint8":{"entryPoint":7323,"id":null,"parameterSlots":2,"returnSlots":2},"abi_encode_t_address_to_t_address_fromStack":{"entryPoint":7387,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bool_to_t_bool_fromStack":{"entryPoint":7402,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes32_to_t_bytes32_fromStack":{"entryPoint":7417,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack":{"entryPoint":7432,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":7489,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack":{"entryPoint":7538,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":7666,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack":{"entryPoint":7793,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack":{"entryPoint":7808,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack":{"entryPoint":7843,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack":{"entryPoint":7878,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack":{"entryPoint":7913,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack":{"entryPoint":7948,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack":{"entryPoint":7983,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack":{"entryPoint":8018,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack":{"entryPoint":8053,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack":{"entryPoint":8088,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_fromStack":{"entryPoint":8123,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint128_to_t_uint128_fromStack":{"entryPoint":8227,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64":{"entryPoint":8242,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint64_to_t_uint64_fromStack":{"entryPoint":8257,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8":{"entryPoint":8272,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_t_uint8_to_t_uint8_fromStack":{"entryPoint":8287,"id":null,"parameterSlots":2,"returnSlots":0},"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":8302,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_packed_t_bytes_storage_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed":{"entryPoint":8325,"id":null,"parameterSlots":7,"returnSlots":1},"abi_encode_tuple_t_address__to_t_address__fromStack_reversed":{"entryPoint":8413,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed":{"entryPoint":8440,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed":{"entryPoint":8467,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":8494,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_bytes_storage__to_t_bytes_memory_ptr__fromStack_reversed":{"entryPoint":8528,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed":{"entryPoint":8562,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8589,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8621,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8653,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8685,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8717,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8749,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8781,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8813,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__to_t_string_memory_ptr__fromStack_reversed":{"entryPoint":8845,"id":null,"parameterSlots":1,"returnSlots":1},"abi_encode_tuple_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr__to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr__fromStack_reversed":{"entryPoint":8877,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint128__to_t_uint128__fromStack_reversed":{"entryPoint":8904,"id":null,"parameterSlots":2,"returnSlots":1},"abi_encode_tuple_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__to_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__fromStack_reversed":{"entryPoint":8931,"id":null,"parameterSlots":6,"returnSlots":1},"allocate_memory":{"entryPoint":9014,"id":null,"parameterSlots":1,"returnSlots":1},"allocate_unbounded":{"entryPoint":9041,"id":null,"parameterSlots":0,"returnSlots":1},"array_allocation_size_t_bytes_memory_ptr":{"entryPoint":9051,"id":null,"parameterSlots":1,"returnSlots":1},"array_dataslot_t_bytes_storage":{"entryPoint":9100,"id":null,"parameterSlots":1,"returnSlots":1},"array_length_t_bytes_memory_ptr":{"entryPoint":9121,"id":null,"parameterSlots":1,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack":{"entryPoint":9132,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack":{"entryPoint":9149,"id":null,"parameterSlots":2,"returnSlots":1},"array_storeLengthForEncoding_t_string_memory_ptr_fromStack":{"entryPoint":9160,"id":null,"parameterSlots":2,"returnSlots":1},"checked_add_t_uint64":{"entryPoint":9177,"id":null,"parameterSlots":2,"returnSlots":1},"checked_mul_t_uint64":{"entryPoint":9239,"id":null,"parameterSlots":2,"returnSlots":1},"checked_sub_t_uint64":{"entryPoint":9305,"id":null,"parameterSlots":2,"returnSlots":1},"cleanup_t_address":{"entryPoint":9357,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bool":{"entryPoint":9375,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_bytes32":{"entryPoint":9387,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint128":{"entryPoint":9397,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint160":{"entryPoint":9425,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint64":{"entryPoint":9457,"id":null,"parameterSlots":1,"returnSlots":1},"cleanup_t_uint8":{"entryPoint":9477,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_contract$_Clonable_$7948_to_t_address":{"entryPoint":9490,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_address":{"entryPoint":9508,"id":null,"parameterSlots":1,"returnSlots":1},"convert_t_uint160_to_t_uint160":{"entryPoint":9526,"id":null,"parameterSlots":1,"returnSlots":1},"copy_calldata_to_memory":{"entryPoint":9544,"id":null,"parameterSlots":3,"returnSlots":0},"copy_memory_to_memory":{"entryPoint":9559,"id":null,"parameterSlots":3,"returnSlots":0},"extract_byte_array_length":{"entryPoint":9610,"id":null,"parameterSlots":1,"returnSlots":1},"finalize_allocation":{"entryPoint":9660,"id":null,"parameterSlots":2,"returnSlots":0},"increment_t_uint64":{"entryPoint":9709,"id":null,"parameterSlots":1,"returnSlots":1},"panic_error_0x01":{"entryPoint":9758,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x11":{"entryPoint":9805,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x22":{"entryPoint":9852,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x32":{"entryPoint":9899,"id":null,"parameterSlots":0,"returnSlots":0},"panic_error_0x41":{"entryPoint":9946,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d":{"entryPoint":9993,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae":{"entryPoint":9998,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db":{"entryPoint":10003,"id":null,"parameterSlots":0,"returnSlots":0},"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b":{"entryPoint":10008,"id":null,"parameterSlots":0,"returnSlots":0},"round_up_to_mul_of_32":{"entryPoint":10013,"id":null,"parameterSlots":1,"returnSlots":1},"store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe":{"entryPoint":10030,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18":{"entryPoint":10109,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf":{"entryPoint":10188,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf":{"entryPoint":10267,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff":{"entryPoint":10308,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae":{"entryPoint":10387,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe":{"entryPoint":10466,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e":{"entryPoint":10507,"id":null,"parameterSlots":1,"returnSlots":0},"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e":{"entryPoint":10586,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_address":{"entryPoint":10627,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_bytes32":{"entryPoint":10650,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint64":{"entryPoint":10673,"id":null,"parameterSlots":1,"returnSlots":0},"validator_revert_t_uint8":{"entryPoint":10696,"id":null,"parameterSlots":1,"returnSlots":0}},"generatedSources":[{"ast":{"nodeType":"YulBlock","src":"0:28990:46","statements":[{"body":{"nodeType":"YulBlock","src":"90:327:46","statements":[{"nodeType":"YulAssignment","src":"100:74:46","value":{"arguments":[{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"166:6:46"}],"functionName":{"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"125:40:46"},"nodeType":"YulFunctionCall","src":"125:48:46"}],"functionName":{"name":"allocate_memory","nodeType":"YulIdentifier","src":"109:15:46"},"nodeType":"YulFunctionCall","src":"109:65:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"100:5:46"}]},{"expression":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"190:5:46"},{"name":"length","nodeType":"YulIdentifier","src":"197:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"183:6:46"},"nodeType":"YulFunctionCall","src":"183:21:46"},"nodeType":"YulExpressionStatement","src":"183:21:46"},{"nodeType":"YulVariableDeclaration","src":"213:27:46","value":{"arguments":[{"name":"array","nodeType":"YulIdentifier","src":"228:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"235:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"224:3:46"},"nodeType":"YulFunctionCall","src":"224:16:46"},"variables":[{"name":"dst","nodeType":"YulTypedName","src":"217:3:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"278:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulIdentifier","src":"280:77:46"},"nodeType":"YulFunctionCall","src":"280:79:46"},"nodeType":"YulExpressionStatement","src":"280:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"259:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"264:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"255:3:46"},"nodeType":"YulFunctionCall","src":"255:16:46"},{"name":"end","nodeType":"YulIdentifier","src":"273:3:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"252:2:46"},"nodeType":"YulFunctionCall","src":"252:25:46"},"nodeType":"YulIf","src":"249:112:46"},{"expression":{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"394:3:46"},{"name":"dst","nodeType":"YulIdentifier","src":"399:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"404:6:46"}],"functionName":{"name":"copy_calldata_to_memory","nodeType":"YulIdentifier","src":"370:23:46"},"nodeType":"YulFunctionCall","src":"370:41:46"},"nodeType":"YulExpressionStatement","src":"370:41:46"}]},"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"63:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"68:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"76:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"84:5:46","type":""}],"src":"7:410:46"},{"body":{"nodeType":"YulBlock","src":"475:87:46","statements":[{"nodeType":"YulAssignment","src":"485:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"507:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"494:12:46"},"nodeType":"YulFunctionCall","src":"494:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"485:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"550:5:46"}],"functionName":{"name":"validator_revert_t_address","nodeType":"YulIdentifier","src":"523:26:46"},"nodeType":"YulFunctionCall","src":"523:33:46"},"nodeType":"YulExpressionStatement","src":"523:33:46"}]},"name":"abi_decode_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"453:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"461:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"469:5:46","type":""}],"src":"423:139:46"},{"body":{"nodeType":"YulBlock","src":"620:87:46","statements":[{"nodeType":"YulAssignment","src":"630:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"652:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"639:12:46"},"nodeType":"YulFunctionCall","src":"639:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"630:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"695:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"668:26:46"},"nodeType":"YulFunctionCall","src":"668:33:46"},"nodeType":"YulExpressionStatement","src":"668:33:46"}]},"name":"abi_decode_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"598:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"606:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"614:5:46","type":""}],"src":"568:139:46"},{"body":{"nodeType":"YulBlock","src":"776:80:46","statements":[{"nodeType":"YulAssignment","src":"786:22:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"801:6:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"795:5:46"},"nodeType":"YulFunctionCall","src":"795:13:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"786:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"844:5:46"}],"functionName":{"name":"validator_revert_t_bytes32","nodeType":"YulIdentifier","src":"817:26:46"},"nodeType":"YulFunctionCall","src":"817:33:46"},"nodeType":"YulExpressionStatement","src":"817:33:46"}]},"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"754:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"762:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"770:5:46","type":""}],"src":"713:143:46"},{"body":{"nodeType":"YulBlock","src":"936:277:46","statements":[{"body":{"nodeType":"YulBlock","src":"985:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulIdentifier","src":"987:77:46"},"nodeType":"YulFunctionCall","src":"987:79:46"},"nodeType":"YulExpressionStatement","src":"987:79:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"964:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"972:4:46","type":"","value":"0x1f"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"960:3:46"},"nodeType":"YulFunctionCall","src":"960:17:46"},{"name":"end","nodeType":"YulIdentifier","src":"979:3:46"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"956:3:46"},"nodeType":"YulFunctionCall","src":"956:27:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"949:6:46"},"nodeType":"YulFunctionCall","src":"949:35:46"},"nodeType":"YulIf","src":"946:122:46"},{"nodeType":"YulVariableDeclaration","src":"1077:34:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1104:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1091:12:46"},"nodeType":"YulFunctionCall","src":"1091:20:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"1081:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1120:87:46","value":{"arguments":[{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1180:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"1188:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1176:3:46"},"nodeType":"YulFunctionCall","src":"1176:17:46"},{"name":"length","nodeType":"YulIdentifier","src":"1195:6:46"},{"name":"end","nodeType":"YulIdentifier","src":"1203:3:46"}],"functionName":{"name":"abi_decode_available_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"1129:46:46"},"nodeType":"YulFunctionCall","src":"1129:78:46"},"variableNames":[{"name":"array","nodeType":"YulIdentifier","src":"1120:5:46"}]}]},"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"914:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"922:3:46","type":""}],"returnVariables":[{"name":"array","nodeType":"YulTypedName","src":"930:5:46","type":""}],"src":"875:338:46"},{"body":{"nodeType":"YulBlock","src":"1270:86:46","statements":[{"nodeType":"YulAssignment","src":"1280:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1302:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1289:12:46"},"nodeType":"YulFunctionCall","src":"1289:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1280:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1344:5:46"}],"functionName":{"name":"validator_revert_t_uint64","nodeType":"YulIdentifier","src":"1318:25:46"},"nodeType":"YulFunctionCall","src":"1318:32:46"},"nodeType":"YulExpressionStatement","src":"1318:32:46"}]},"name":"abi_decode_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1248:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1256:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1264:5:46","type":""}],"src":"1219:137:46"},{"body":{"nodeType":"YulBlock","src":"1412:85:46","statements":[{"nodeType":"YulAssignment","src":"1422:29:46","value":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"1444:6:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"1431:12:46"},"nodeType":"YulFunctionCall","src":"1431:20:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"1422:5:46"}]},{"expression":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"1485:5:46"}],"functionName":{"name":"validator_revert_t_uint8","nodeType":"YulIdentifier","src":"1460:24:46"},"nodeType":"YulFunctionCall","src":"1460:31:46"},"nodeType":"YulExpressionStatement","src":"1460:31:46"}]},"name":"abi_decode_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"offset","nodeType":"YulTypedName","src":"1390:6:46","type":""},{"name":"end","nodeType":"YulTypedName","src":"1398:3:46","type":""}],"returnVariables":[{"name":"value","nodeType":"YulTypedName","src":"1406:5:46","type":""}],"src":"1362:135:46"},{"body":{"nodeType":"YulBlock","src":"1569:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"1615:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1617:77:46"},"nodeType":"YulFunctionCall","src":"1617:79:46"},"nodeType":"YulExpressionStatement","src":"1617:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1590:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1599:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1586:3:46"},"nodeType":"YulFunctionCall","src":"1586:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1611:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1582:3:46"},"nodeType":"YulFunctionCall","src":"1582:32:46"},"nodeType":"YulIf","src":"1579:119:46"},{"nodeType":"YulBlock","src":"1708:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"1723:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"1737:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"1727:6:46","type":""}]},{"nodeType":"YulAssignment","src":"1752:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"1787:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"1798:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"1783:3:46"},"nodeType":"YulFunctionCall","src":"1783:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"1807:7:46"}],"functionName":{"name":"abi_decode_t_address","nodeType":"YulIdentifier","src":"1762:20:46"},"nodeType":"YulFunctionCall","src":"1762:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"1752:6:46"}]}]}]},"name":"abi_decode_tuple_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1539:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1550:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1562:6:46","type":""}],"src":"1503:329:46"},{"body":{"nodeType":"YulBlock","src":"1904:263:46","statements":[{"body":{"nodeType":"YulBlock","src":"1950:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"1952:77:46"},"nodeType":"YulFunctionCall","src":"1952:79:46"},"nodeType":"YulExpressionStatement","src":"1952:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"1925:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"1934:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"1921:3:46"},"nodeType":"YulFunctionCall","src":"1921:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"1946:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"1917:3:46"},"nodeType":"YulFunctionCall","src":"1917:32:46"},"nodeType":"YulIf","src":"1914:119:46"},{"nodeType":"YulBlock","src":"2043:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2058:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2072:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2062:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2087:63:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2122:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2133:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2118:3:46"},"nodeType":"YulFunctionCall","src":"2118:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2142:7:46"}],"functionName":{"name":"abi_decode_t_bytes32","nodeType":"YulIdentifier","src":"2097:20:46"},"nodeType":"YulFunctionCall","src":"2097:53:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2087:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"1874:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"1885:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"1897:6:46","type":""}],"src":"1838:329:46"},{"body":{"nodeType":"YulBlock","src":"2250:274:46","statements":[{"body":{"nodeType":"YulBlock","src":"2296:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"2298:77:46"},"nodeType":"YulFunctionCall","src":"2298:79:46"},"nodeType":"YulExpressionStatement","src":"2298:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"2271:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2280:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2267:3:46"},"nodeType":"YulFunctionCall","src":"2267:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"2292:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2263:3:46"},"nodeType":"YulFunctionCall","src":"2263:32:46"},"nodeType":"YulIf","src":"2260:119:46"},{"nodeType":"YulBlock","src":"2389:128:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2404:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"2418:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2408:6:46","type":""}]},{"nodeType":"YulAssignment","src":"2433:74:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2479:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"2490:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2475:3:46"},"nodeType":"YulFunctionCall","src":"2475:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"2499:7:46"}],"functionName":{"name":"abi_decode_t_bytes32_fromMemory","nodeType":"YulIdentifier","src":"2443:31:46"},"nodeType":"YulFunctionCall","src":"2443:64:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2433:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes32_fromMemory","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2220:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"2231:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"2243:6:46","type":""}],"src":"2173:351:46"},{"body":{"nodeType":"YulBlock","src":"2605:432:46","statements":[{"body":{"nodeType":"YulBlock","src":"2651:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"2653:77:46"},"nodeType":"YulFunctionCall","src":"2653:79:46"},"nodeType":"YulExpressionStatement","src":"2653:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"2626:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"2635:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"2622:3:46"},"nodeType":"YulFunctionCall","src":"2622:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"2647:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"2618:3:46"},"nodeType":"YulFunctionCall","src":"2618:32:46"},"nodeType":"YulIf","src":"2615:119:46"},{"nodeType":"YulBlock","src":"2744:286:46","statements":[{"nodeType":"YulVariableDeclaration","src":"2759:45:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2790:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"2801:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2786:3:46"},"nodeType":"YulFunctionCall","src":"2786:17:46"}],"functionName":{"name":"calldataload","nodeType":"YulIdentifier","src":"2773:12:46"},"nodeType":"YulFunctionCall","src":"2773:31:46"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"2763:6:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"2851:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulIdentifier","src":"2853:77:46"},"nodeType":"YulFunctionCall","src":"2853:79:46"},"nodeType":"YulExpressionStatement","src":"2853:79:46"}]},"condition":{"arguments":[{"name":"offset","nodeType":"YulIdentifier","src":"2823:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"2831:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"2820:2:46"},"nodeType":"YulFunctionCall","src":"2820:30:46"},"nodeType":"YulIf","src":"2817:117:46"},{"nodeType":"YulAssignment","src":"2948:72:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"2992:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3003:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"2988:3:46"},"nodeType":"YulFunctionCall","src":"2988:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3012:7:46"}],"functionName":{"name":"abi_decode_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"2958:29:46"},"nodeType":"YulFunctionCall","src":"2958:62:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"2948:6:46"}]}]}]},"name":"abi_decode_tuple_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"2575:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"2586:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"2598:6:46","type":""}],"src":"2530:507:46"},{"body":{"nodeType":"YulBlock","src":"3108:262:46","statements":[{"body":{"nodeType":"YulBlock","src":"3154:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"3156:77:46"},"nodeType":"YulFunctionCall","src":"3156:79:46"},"nodeType":"YulExpressionStatement","src":"3156:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"3129:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3138:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3125:3:46"},"nodeType":"YulFunctionCall","src":"3125:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"3150:2:46","type":"","value":"32"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3121:3:46"},"nodeType":"YulFunctionCall","src":"3121:32:46"},"nodeType":"YulIf","src":"3118:119:46"},{"nodeType":"YulBlock","src":"3247:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3262:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3276:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3266:6:46","type":""}]},{"nodeType":"YulAssignment","src":"3291:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3325:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3336:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3321:3:46"},"nodeType":"YulFunctionCall","src":"3321:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3345:7:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"3301:19:46"},"nodeType":"YulFunctionCall","src":"3301:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"3291:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3078:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"3089:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"3101:6:46","type":""}],"src":"3043:327:46"},{"body":{"nodeType":"YulBlock","src":"3457:389:46","statements":[{"body":{"nodeType":"YulBlock","src":"3503:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"3505:77:46"},"nodeType":"YulFunctionCall","src":"3505:79:46"},"nodeType":"YulExpressionStatement","src":"3505:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"3478:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3487:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3474:3:46"},"nodeType":"YulFunctionCall","src":"3474:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"3499:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3470:3:46"},"nodeType":"YulFunctionCall","src":"3470:32:46"},"nodeType":"YulIf","src":"3467:119:46"},{"nodeType":"YulBlock","src":"3596:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3611:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3625:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3615:6:46","type":""}]},{"nodeType":"YulAssignment","src":"3640:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3674:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3685:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3670:3:46"},"nodeType":"YulFunctionCall","src":"3670:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3694:7:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"3650:19:46"},"nodeType":"YulFunctionCall","src":"3650:52:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"3640:6:46"}]}]},{"nodeType":"YulBlock","src":"3722:117:46","statements":[{"nodeType":"YulVariableDeclaration","src":"3737:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"3751:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"3741:6:46","type":""}]},{"nodeType":"YulAssignment","src":"3767:62:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"3801:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"3812:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"3797:3:46"},"nodeType":"YulFunctionCall","src":"3797:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"3821:7:46"}],"functionName":{"name":"abi_decode_t_uint64","nodeType":"YulIdentifier","src":"3777:19:46"},"nodeType":"YulFunctionCall","src":"3777:52:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"3767:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint64t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3419:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"3430:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"3442:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"3450:6:46","type":""}],"src":"3376:470:46"},{"body":{"nodeType":"YulBlock","src":"3931:387:46","statements":[{"body":{"nodeType":"YulBlock","src":"3977:83:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulIdentifier","src":"3979:77:46"},"nodeType":"YulFunctionCall","src":"3979:79:46"},"nodeType":"YulExpressionStatement","src":"3979:79:46"}]},"condition":{"arguments":[{"arguments":[{"name":"dataEnd","nodeType":"YulIdentifier","src":"3952:7:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"3961:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"3948:3:46"},"nodeType":"YulFunctionCall","src":"3948:23:46"},{"kind":"number","nodeType":"YulLiteral","src":"3973:2:46","type":"","value":"64"}],"functionName":{"name":"slt","nodeType":"YulIdentifier","src":"3944:3:46"},"nodeType":"YulFunctionCall","src":"3944:32:46"},"nodeType":"YulIf","src":"3941:119:46"},{"nodeType":"YulBlock","src":"4070:115:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4085:15:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4099:1:46","type":"","value":"0"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4089:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4114:61:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4147:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4158:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4143:3:46"},"nodeType":"YulFunctionCall","src":"4143:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4167:7:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"4124:18:46"},"nodeType":"YulFunctionCall","src":"4124:51:46"},"variableNames":[{"name":"value0","nodeType":"YulIdentifier","src":"4114:6:46"}]}]},{"nodeType":"YulBlock","src":"4195:116:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4210:16:46","value":{"kind":"number","nodeType":"YulLiteral","src":"4224:2:46","type":"","value":"32"},"variables":[{"name":"offset","nodeType":"YulTypedName","src":"4214:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4240:61:46","value":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"4273:9:46"},{"name":"offset","nodeType":"YulIdentifier","src":"4284:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4269:3:46"},"nodeType":"YulFunctionCall","src":"4269:22:46"},{"name":"dataEnd","nodeType":"YulIdentifier","src":"4293:7:46"}],"functionName":{"name":"abi_decode_t_uint8","nodeType":"YulIdentifier","src":"4250:18:46"},"nodeType":"YulFunctionCall","src":"4250:51:46"},"variableNames":[{"name":"value1","nodeType":"YulIdentifier","src":"4240:6:46"}]}]}]},"name":"abi_decode_tuple_t_uint8t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"3893:9:46","type":""},{"name":"dataEnd","nodeType":"YulTypedName","src":"3904:7:46","type":""}],"returnVariables":[{"name":"value0","nodeType":"YulTypedName","src":"3916:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"3924:6:46","type":""}],"src":"3852:466:46"},{"body":{"nodeType":"YulBlock","src":"4389:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4406:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4429:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"4411:17:46"},"nodeType":"YulFunctionCall","src":"4411:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4399:6:46"},"nodeType":"YulFunctionCall","src":"4399:37:46"},"nodeType":"YulExpressionStatement","src":"4399:37:46"}]},"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4377:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"4384:3:46","type":""}],"src":"4324:118:46"},{"body":{"nodeType":"YulBlock","src":"4507:50:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4524:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4544:5:46"}],"functionName":{"name":"cleanup_t_bool","nodeType":"YulIdentifier","src":"4529:14:46"},"nodeType":"YulFunctionCall","src":"4529:21:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4517:6:46"},"nodeType":"YulFunctionCall","src":"4517:34:46"},"nodeType":"YulExpressionStatement","src":"4517:34:46"}]},"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4495:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"4502:3:46","type":""}],"src":"4448:109:46"},{"body":{"nodeType":"YulBlock","src":"4628:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4645:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4668:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"4650:17:46"},"nodeType":"YulFunctionCall","src":"4650:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"4638:6:46"},"nodeType":"YulFunctionCall","src":"4638:37:46"},"nodeType":"YulExpressionStatement","src":"4638:37:46"}]},"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4616:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"4623:3:46","type":""}],"src":"4563:118:46"},{"body":{"nodeType":"YulBlock","src":"4777:270:46","statements":[{"nodeType":"YulVariableDeclaration","src":"4787:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4833:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"4801:31:46"},"nodeType":"YulFunctionCall","src":"4801:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"4791:6:46","type":""}]},{"nodeType":"YulAssignment","src":"4848:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"4913:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4918:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"4855:57:46"},"nodeType":"YulFunctionCall","src":"4855:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"4848:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"4960:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"4967:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"4956:3:46"},"nodeType":"YulFunctionCall","src":"4956:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"4974:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"4979:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"4934:21:46"},"nodeType":"YulFunctionCall","src":"4934:52:46"},"nodeType":"YulExpressionStatement","src":"4934:52:46"},{"nodeType":"YulAssignment","src":"4995:46:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5006:3:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"5033:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"5011:21:46"},"nodeType":"YulFunctionCall","src":"5011:29:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5002:3:46"},"nodeType":"YulFunctionCall","src":"5002:39:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"4995:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"4758:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"4765:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"4773:3:46","type":""}],"src":"4687:360:46"},{"body":{"nodeType":"YulBlock","src":"5161:265:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5171:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5217:5:46"}],"functionName":{"name":"array_length_t_bytes_memory_ptr","nodeType":"YulIdentifier","src":"5185:31:46"},"nodeType":"YulFunctionCall","src":"5185:38:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"5175:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5232:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5315:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5320:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"5239:75:46"},"nodeType":"YulFunctionCall","src":"5239:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5232:3:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5362:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"5369:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5358:3:46"},"nodeType":"YulFunctionCall","src":"5358:16:46"},{"name":"pos","nodeType":"YulIdentifier","src":"5376:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5381:6:46"}],"functionName":{"name":"copy_memory_to_memory","nodeType":"YulIdentifier","src":"5336:21:46"},"nodeType":"YulFunctionCall","src":"5336:52:46"},"nodeType":"YulExpressionStatement","src":"5336:52:46"},{"nodeType":"YulAssignment","src":"5397:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5408:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5413:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5404:3:46"},"nodeType":"YulFunctionCall","src":"5404:16:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"5397:3:46"}]}]},"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5142:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5149:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"5157:3:46","type":""}],"src":"5053:373:46"},{"body":{"nodeType":"YulBlock","src":"5541:711:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5551:29:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"5574:5:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"5568:5:46"},"nodeType":"YulFunctionCall","src":"5568:12:46"},"variables":[{"name":"slotValue","nodeType":"YulTypedName","src":"5555:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"5589:50:46","value":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"5629:9:46"}],"functionName":{"name":"extract_byte_array_length","nodeType":"YulIdentifier","src":"5603:25:46"},"nodeType":"YulFunctionCall","src":"5603:36:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"5593:6:46","type":""}]},{"nodeType":"YulAssignment","src":"5648:77:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5713:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"5718:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"5655:57:46"},"nodeType":"YulFunctionCall","src":"5655:70:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"5648:3:46"}]},{"cases":[{"body":{"nodeType":"YulBlock","src":"5774:128:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5827:3:46"},{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"5836:9:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"5851:4:46","type":"","value":"0xff"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"5847:3:46"},"nodeType":"YulFunctionCall","src":"5847:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"5832:3:46"},"nodeType":"YulFunctionCall","src":"5832:25:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"5820:6:46"},"nodeType":"YulFunctionCall","src":"5820:38:46"},"nodeType":"YulExpressionStatement","src":"5820:38:46"},{"nodeType":"YulAssignment","src":"5871:21:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"5882:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"5887:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"5878:3:46"},"nodeType":"YulFunctionCall","src":"5878:14:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"5871:3:46"}]}]},"nodeType":"YulCase","src":"5767:135:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5772:1:46","type":"","value":"0"}},{"body":{"nodeType":"YulBlock","src":"5918:328:46","statements":[{"nodeType":"YulVariableDeclaration","src":"5963:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6009:5:46"}],"functionName":{"name":"array_dataslot_t_bytes_storage","nodeType":"YulIdentifier","src":"5978:30:46"},"nodeType":"YulFunctionCall","src":"5978:37:46"},"variables":[{"name":"dataPos","nodeType":"YulTypedName","src":"5967:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"6028:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"6037:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"6032:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6095:110:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6124:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"6129:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6120:3:46"},"nodeType":"YulFunctionCall","src":"6120:11:46"},{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"6139:7:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"6133:5:46"},"nodeType":"YulFunctionCall","src":"6133:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6113:6:46"},"nodeType":"YulFunctionCall","src":"6113:35:46"},"nodeType":"YulExpressionStatement","src":"6113:35:46"},{"nodeType":"YulAssignment","src":"6165:26:46","value":{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"6180:7:46"},{"kind":"number","nodeType":"YulLiteral","src":"6189:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6176:3:46"},"nodeType":"YulFunctionCall","src":"6176:15:46"},"variableNames":[{"name":"dataPos","nodeType":"YulIdentifier","src":"6165:7:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"6062:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"6065:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6059:2:46"},"nodeType":"YulFunctionCall","src":"6059:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"6073:21:46","statements":[{"nodeType":"YulAssignment","src":"6075:17:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"6084:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"6087:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6080:3:46"},"nodeType":"YulFunctionCall","src":"6080:12:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"6075:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"6055:3:46","statements":[]},"src":"6051:154:46"},{"nodeType":"YulAssignment","src":"6218:18:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6229:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"6234:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6225:3:46"},"nodeType":"YulFunctionCall","src":"6225:11:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"6218:3:46"}]}]},"nodeType":"YulCase","src":"5911:335:46","value":{"kind":"number","nodeType":"YulLiteral","src":"5916:1:46","type":"","value":"1"}}],"expression":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"5745:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"5756:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"5741:3:46"},"nodeType":"YulFunctionCall","src":"5741:17:46"},"nodeType":"YulSwitch","src":"5734:512:46"}]},"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"5522:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"5529:3:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"5537:3:46","type":""}],"src":"5454:798:46"},{"body":{"nodeType":"YulBlock","src":"6385:736:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6395:29:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6418:5:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"6412:5:46"},"nodeType":"YulFunctionCall","src":"6412:12:46"},"variables":[{"name":"slotValue","nodeType":"YulTypedName","src":"6399:9:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"6433:50:46","value":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"6473:9:46"}],"functionName":{"name":"extract_byte_array_length","nodeType":"YulIdentifier","src":"6447:25:46"},"nodeType":"YulFunctionCall","src":"6447:36:46"},"variables":[{"name":"length","nodeType":"YulTypedName","src":"6437:6:46","type":""}]},{"nodeType":"YulAssignment","src":"6492:95:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6575:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6580:6:46"}],"functionName":{"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"6499:75:46"},"nodeType":"YulFunctionCall","src":"6499:88:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"6492:3:46"}]},{"cases":[{"body":{"nodeType":"YulBlock","src":"6636:130:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6689:3:46"},{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"6698:9:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"6713:4:46","type":"","value":"0xff"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"6709:3:46"},"nodeType":"YulFunctionCall","src":"6709:9:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"6694:3:46"},"nodeType":"YulFunctionCall","src":"6694:25:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6682:6:46"},"nodeType":"YulFunctionCall","src":"6682:38:46"},"nodeType":"YulExpressionStatement","src":"6682:38:46"},{"nodeType":"YulAssignment","src":"6733:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6744:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"6749:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6740:3:46"},"nodeType":"YulFunctionCall","src":"6740:16:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"6733:3:46"}]}]},"nodeType":"YulCase","src":"6629:137:46","value":{"kind":"number","nodeType":"YulLiteral","src":"6634:1:46","type":"","value":"0"}},{"body":{"nodeType":"YulBlock","src":"6782:333:46","statements":[{"nodeType":"YulVariableDeclaration","src":"6827:52:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"6873:5:46"}],"functionName":{"name":"array_dataslot_t_bytes_storage","nodeType":"YulIdentifier","src":"6842:30:46"},"nodeType":"YulFunctionCall","src":"6842:37:46"},"variables":[{"name":"dataPos","nodeType":"YulTypedName","src":"6831:7:46","type":""}]},{"nodeType":"YulVariableDeclaration","src":"6892:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"6901:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"6896:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"6959:110:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"6988:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"6993:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6984:3:46"},"nodeType":"YulFunctionCall","src":"6984:11:46"},{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"7003:7:46"}],"functionName":{"name":"sload","nodeType":"YulIdentifier","src":"6997:5:46"},"nodeType":"YulFunctionCall","src":"6997:14:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"6977:6:46"},"nodeType":"YulFunctionCall","src":"6977:35:46"},"nodeType":"YulExpressionStatement","src":"6977:35:46"},{"nodeType":"YulAssignment","src":"7029:26:46","value":{"arguments":[{"name":"dataPos","nodeType":"YulIdentifier","src":"7044:7:46"},{"kind":"number","nodeType":"YulLiteral","src":"7053:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7040:3:46"},"nodeType":"YulFunctionCall","src":"7040:15:46"},"variableNames":[{"name":"dataPos","nodeType":"YulIdentifier","src":"7029:7:46"}]}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"6926:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"6929:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"6923:2:46"},"nodeType":"YulFunctionCall","src":"6923:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"6937:21:46","statements":[{"nodeType":"YulAssignment","src":"6939:17:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"6948:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"6951:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"6944:3:46"},"nodeType":"YulFunctionCall","src":"6944:12:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"6939:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"6919:3:46","statements":[]},"src":"6915:154:46"},{"nodeType":"YulAssignment","src":"7082:23:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7093:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"7098:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7089:3:46"},"nodeType":"YulFunctionCall","src":"7089:16:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"7082:3:46"}]}]},"nodeType":"YulCase","src":"6775:340:46","value":{"kind":"number","nodeType":"YulLiteral","src":"6780:1:46","type":"","value":"1"}}],"expression":{"arguments":[{"name":"slotValue","nodeType":"YulIdentifier","src":"6607:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"6618:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"6603:3:46"},"nodeType":"YulFunctionCall","src":"6603:17:46"},"nodeType":"YulSwitch","src":"6596:519:46"}]},"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"6366:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"6373:3:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"6381:3:46","type":""}],"src":"6280:841:46"},{"body":{"nodeType":"YulBlock","src":"7209:83:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7226:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"7279:5:46"}],"functionName":{"name":"convert_t_contract$_Clonable_$7948_to_t_address","nodeType":"YulIdentifier","src":"7231:47:46"},"nodeType":"YulFunctionCall","src":"7231:54:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"7219:6:46"},"nodeType":"YulFunctionCall","src":"7219:67:46"},"nodeType":"YulExpressionStatement","src":"7219:67:46"}]},"name":"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"7197:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"7204:3:46","type":""}],"src":"7127:165:46"},{"body":{"nodeType":"YulBlock","src":"7444:220:46","statements":[{"nodeType":"YulAssignment","src":"7454:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7520:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7525:2:46","type":"","value":"38"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7461:58:46"},"nodeType":"YulFunctionCall","src":"7461:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7454:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7626:3:46"}],"functionName":{"name":"store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe","nodeType":"YulIdentifier","src":"7537:88:46"},"nodeType":"YulFunctionCall","src":"7537:93:46"},"nodeType":"YulExpressionStatement","src":"7537:93:46"},{"nodeType":"YulAssignment","src":"7639:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7650:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7655:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"7646:3:46"},"nodeType":"YulFunctionCall","src":"7646:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"7639:3:46"}]}]},"name":"abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"7432:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7440:3:46","type":""}],"src":"7298:366:46"},{"body":{"nodeType":"YulBlock","src":"7816:220:46","statements":[{"nodeType":"YulAssignment","src":"7826:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7892:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"7897:2:46","type":"","value":"61"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"7833:58:46"},"nodeType":"YulFunctionCall","src":"7833:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"7826:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"7998:3:46"}],"functionName":{"name":"store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18","nodeType":"YulIdentifier","src":"7909:88:46"},"nodeType":"YulFunctionCall","src":"7909:93:46"},"nodeType":"YulExpressionStatement","src":"7909:93:46"},{"nodeType":"YulAssignment","src":"8011:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8022:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8027:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8018:3:46"},"nodeType":"YulFunctionCall","src":"8018:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8011:3:46"}]}]},"name":"abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"7804:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"7812:3:46","type":""}],"src":"7670:366:46"},{"body":{"nodeType":"YulBlock","src":"8188:220:46","statements":[{"nodeType":"YulAssignment","src":"8198:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8264:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8269:2:46","type":"","value":"37"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8205:58:46"},"nodeType":"YulFunctionCall","src":"8205:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8198:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8370:3:46"}],"functionName":{"name":"store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf","nodeType":"YulIdentifier","src":"8281:88:46"},"nodeType":"YulFunctionCall","src":"8281:93:46"},"nodeType":"YulExpressionStatement","src":"8281:93:46"},{"nodeType":"YulAssignment","src":"8383:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8394:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8399:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8390:3:46"},"nodeType":"YulFunctionCall","src":"8390:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8383:3:46"}]}]},"name":"abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8176:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"8184:3:46","type":""}],"src":"8042:366:46"},{"body":{"nodeType":"YulBlock","src":"8560:220:46","statements":[{"nodeType":"YulAssignment","src":"8570:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8636:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8641:2:46","type":"","value":"24"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8577:58:46"},"nodeType":"YulFunctionCall","src":"8577:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8570:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8742:3:46"}],"functionName":{"name":"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","nodeType":"YulIdentifier","src":"8653:88:46"},"nodeType":"YulFunctionCall","src":"8653:93:46"},"nodeType":"YulExpressionStatement","src":"8653:93:46"},{"nodeType":"YulAssignment","src":"8755:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"8766:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"8771:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"8762:3:46"},"nodeType":"YulFunctionCall","src":"8762:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"8755:3:46"}]}]},"name":"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8548:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"8556:3:46","type":""}],"src":"8414:366:46"},{"body":{"nodeType":"YulBlock","src":"8932:220:46","statements":[{"nodeType":"YulAssignment","src":"8942:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9008:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"9013:2:46","type":"","value":"47"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"8949:58:46"},"nodeType":"YulFunctionCall","src":"8949:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"8942:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9114:3:46"}],"functionName":{"name":"store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff","nodeType":"YulIdentifier","src":"9025:88:46"},"nodeType":"YulFunctionCall","src":"9025:93:46"},"nodeType":"YulExpressionStatement","src":"9025:93:46"},{"nodeType":"YulAssignment","src":"9127:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9138:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"9143:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9134:3:46"},"nodeType":"YulFunctionCall","src":"9134:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"9127:3:46"}]}]},"name":"abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"8920:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"8928:3:46","type":""}],"src":"8786:366:46"},{"body":{"nodeType":"YulBlock","src":"9304:220:46","statements":[{"nodeType":"YulAssignment","src":"9314:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9380:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"9385:2:46","type":"","value":"60"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"9321:58:46"},"nodeType":"YulFunctionCall","src":"9321:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"9314:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9486:3:46"}],"functionName":{"name":"store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae","nodeType":"YulIdentifier","src":"9397:88:46"},"nodeType":"YulFunctionCall","src":"9397:93:46"},"nodeType":"YulExpressionStatement","src":"9397:93:46"},{"nodeType":"YulAssignment","src":"9499:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9510:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"9515:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9506:3:46"},"nodeType":"YulFunctionCall","src":"9506:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"9499:3:46"}]}]},"name":"abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"9292:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"9300:3:46","type":""}],"src":"9158:366:46"},{"body":{"nodeType":"YulBlock","src":"9676:220:46","statements":[{"nodeType":"YulAssignment","src":"9686:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9752:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"9757:2:46","type":"","value":"32"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"9693:58:46"},"nodeType":"YulFunctionCall","src":"9693:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"9686:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9858:3:46"}],"functionName":{"name":"store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe","nodeType":"YulIdentifier","src":"9769:88:46"},"nodeType":"YulFunctionCall","src":"9769:93:46"},"nodeType":"YulExpressionStatement","src":"9769:93:46"},{"nodeType":"YulAssignment","src":"9871:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"9882:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"9887:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"9878:3:46"},"nodeType":"YulFunctionCall","src":"9878:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"9871:3:46"}]}]},"name":"abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"9664:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"9672:3:46","type":""}],"src":"9530:366:46"},{"body":{"nodeType":"YulBlock","src":"10048:220:46","statements":[{"nodeType":"YulAssignment","src":"10058:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10124:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"10129:2:46","type":"","value":"61"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"10065:58:46"},"nodeType":"YulFunctionCall","src":"10065:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"10058:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10230:3:46"}],"functionName":{"name":"store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e","nodeType":"YulIdentifier","src":"10141:88:46"},"nodeType":"YulFunctionCall","src":"10141:93:46"},"nodeType":"YulExpressionStatement","src":"10141:93:46"},{"nodeType":"YulAssignment","src":"10243:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10254:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"10259:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10250:3:46"},"nodeType":"YulFunctionCall","src":"10250:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"10243:3:46"}]}]},"name":"abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"10036:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"10044:3:46","type":""}],"src":"9902:366:46"},{"body":{"nodeType":"YulBlock","src":"10420:220:46","statements":[{"nodeType":"YulAssignment","src":"10430:74:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10496:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"10501:2:46","type":"","value":"23"}],"functionName":{"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"10437:58:46"},"nodeType":"YulFunctionCall","src":"10437:67:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"10430:3:46"}]},{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10602:3:46"}],"functionName":{"name":"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","nodeType":"YulIdentifier","src":"10513:88:46"},"nodeType":"YulFunctionCall","src":"10513:93:46"},"nodeType":"YulExpressionStatement","src":"10513:93:46"},{"nodeType":"YulAssignment","src":"10615:19:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10626:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"10631:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10622:3:46"},"nodeType":"YulFunctionCall","src":"10622:12:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"10615:3:46"}]}]},"name":"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"10408:3:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"10416:3:46","type":""}],"src":"10274:366:46"},{"body":{"nodeType":"YulBlock","src":"10944:969:46","statements":[{"nodeType":"YulVariableDeclaration","src":"10954:26:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"10970:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"10975:4:46","type":"","value":"0xa0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"10966:3:46"},"nodeType":"YulFunctionCall","src":"10966:14:46"},"variables":[{"name":"tail","nodeType":"YulTypedName","src":"10958:4:46","type":""}]},{"nodeType":"YulBlock","src":"10990:168:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11033:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11063:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11070:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11059:3:46"},"nodeType":"YulFunctionCall","src":"11059:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11053:5:46"},"nodeType":"YulFunctionCall","src":"11053:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"11037:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"11119:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11137:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"11142:4:46","type":"","value":"0x00"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11133:3:46"},"nodeType":"YulFunctionCall","src":"11133:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"11089:29:46"},"nodeType":"YulFunctionCall","src":"11089:59:46"},"nodeType":"YulExpressionStatement","src":"11089:59:46"}]},{"nodeType":"YulBlock","src":"11168:178:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11221:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11251:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11258:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11247:3:46"},"nodeType":"YulFunctionCall","src":"11247:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11241:5:46"},"nodeType":"YulFunctionCall","src":"11241:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"11225:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"11307:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11325:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"11330:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11321:3:46"},"nodeType":"YulFunctionCall","src":"11321:14:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulIdentifier","src":"11277:29:46"},"nodeType":"YulFunctionCall","src":"11277:59:46"},"nodeType":"YulExpressionStatement","src":"11277:59:46"}]},{"nodeType":"YulBlock","src":"11356:178:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11407:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11437:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11444:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11433:3:46"},"nodeType":"YulFunctionCall","src":"11433:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11427:5:46"},"nodeType":"YulFunctionCall","src":"11427:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"11411:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"11495:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11513:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"11518:4:46","type":"","value":"0x40"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11509:3:46"},"nodeType":"YulFunctionCall","src":"11509:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"11463:31:46"},"nodeType":"YulFunctionCall","src":"11463:61:46"},"nodeType":"YulExpressionStatement","src":"11463:61:46"}]},{"nodeType":"YulBlock","src":"11544:174:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11591:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11621:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11628:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11617:3:46"},"nodeType":"YulFunctionCall","src":"11617:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11611:5:46"},"nodeType":"YulFunctionCall","src":"11611:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"11595:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"11679:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11697:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"11702:4:46","type":"","value":"0x60"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11693:3:46"},"nodeType":"YulFunctionCall","src":"11693:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"11647:31:46"},"nodeType":"YulFunctionCall","src":"11647:61:46"},"nodeType":"YulExpressionStatement","src":"11647:61:46"}]},{"nodeType":"YulBlock","src":"11728:178:46","statements":[{"nodeType":"YulVariableDeclaration","src":"11779:43:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"11809:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"11816:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11805:3:46"},"nodeType":"YulFunctionCall","src":"11805:16:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"11799:5:46"},"nodeType":"YulFunctionCall","src":"11799:23:46"},"variables":[{"name":"memberValue0","nodeType":"YulTypedName","src":"11783:12:46","type":""}]},{"expression":{"arguments":[{"name":"memberValue0","nodeType":"YulIdentifier","src":"11867:12:46"},{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"11885:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"11890:4:46","type":"","value":"0x80"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"11881:3:46"},"nodeType":"YulFunctionCall","src":"11881:14:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulIdentifier","src":"11835:31:46"},"nodeType":"YulFunctionCall","src":"11835:61:46"},"nodeType":"YulExpressionStatement","src":"11835:61:46"}]}]},"name":"abi_encode_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"10931:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"10938:3:46","type":""}],"src":"10784:1129:46"},{"body":{"nodeType":"YulBlock","src":"11984:53:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12001:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12024:5:46"}],"functionName":{"name":"cleanup_t_uint128","nodeType":"YulIdentifier","src":"12006:17:46"},"nodeType":"YulFunctionCall","src":"12006:24:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"11994:6:46"},"nodeType":"YulFunctionCall","src":"11994:37:46"},"nodeType":"YulExpressionStatement","src":"11994:37:46"}]},"name":"abi_encode_t_uint128_to_t_uint128_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"11972:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"11979:3:46","type":""}],"src":"11919:118:46"},{"body":{"nodeType":"YulBlock","src":"12096:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12113:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12135:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"12118:16:46"},"nodeType":"YulFunctionCall","src":"12118:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12106:6:46"},"nodeType":"YulFunctionCall","src":"12106:36:46"},"nodeType":"YulExpressionStatement","src":"12106:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12084:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12091:3:46","type":""}],"src":"12043:105:46"},{"body":{"nodeType":"YulBlock","src":"12217:52:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12234:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12256:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"12239:16:46"},"nodeType":"YulFunctionCall","src":"12239:23:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12227:6:46"},"nodeType":"YulFunctionCall","src":"12227:36:46"},"nodeType":"YulExpressionStatement","src":"12227:36:46"}]},"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12205:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12212:3:46","type":""}],"src":"12154:115:46"},{"body":{"nodeType":"YulBlock","src":"12326:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12343:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12364:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"12348:15:46"},"nodeType":"YulFunctionCall","src":"12348:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12336:6:46"},"nodeType":"YulFunctionCall","src":"12336:35:46"},"nodeType":"YulExpressionStatement","src":"12336:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12314:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12321:3:46","type":""}],"src":"12275:102:46"},{"body":{"nodeType":"YulBlock","src":"12444:51:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"12461:3:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"12482:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"12466:15:46"},"nodeType":"YulFunctionCall","src":"12466:22:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"12454:6:46"},"nodeType":"YulFunctionCall","src":"12454:35:46"},"nodeType":"YulExpressionStatement","src":"12454:35:46"}]},"name":"abi_encode_t_uint8_to_t_uint8_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"12432:5:46","type":""},{"name":"pos","nodeType":"YulTypedName","src":"12439:3:46","type":""}],"src":"12383:112:46"},{"body":{"nodeType":"YulBlock","src":"12635:137:46","statements":[{"nodeType":"YulAssignment","src":"12646:100:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"12733:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"12742:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"12653:79:46"},"nodeType":"YulFunctionCall","src":"12653:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"12646:3:46"}]},{"nodeType":"YulAssignment","src":"12756:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"12763:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"12756:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"12614:3:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"12620:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"12631:3:46","type":""}],"src":"12501:271:46"},{"body":{"nodeType":"YulBlock","src":"13139:684:46","statements":[{"nodeType":"YulAssignment","src":"13150:97:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"13234:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"13243:3:46"}],"functionName":{"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"13157:76:46"},"nodeType":"YulFunctionCall","src":"13157:90:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13150:3:46"}]},{"nodeType":"YulAssignment","src":"13257:100:46","value":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"13344:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"13353:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"13264:79:46"},"nodeType":"YulFunctionCall","src":"13264:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13257:3:46"}]},{"nodeType":"YulAssignment","src":"13367:100:46","value":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"13454:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"13463:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"13374:79:46"},"nodeType":"YulFunctionCall","src":"13374:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13367:3:46"}]},{"nodeType":"YulAssignment","src":"13477:100:46","value":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"13564:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"13573:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"13484:79:46"},"nodeType":"YulFunctionCall","src":"13484:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13477:3:46"}]},{"nodeType":"YulAssignment","src":"13587:100:46","value":{"arguments":[{"name":"value4","nodeType":"YulIdentifier","src":"13674:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"13683:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"13594:79:46"},"nodeType":"YulFunctionCall","src":"13594:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13587:3:46"}]},{"nodeType":"YulAssignment","src":"13697:100:46","value":{"arguments":[{"name":"value5","nodeType":"YulIdentifier","src":"13784:6:46"},{"name":"pos","nodeType":"YulIdentifier","src":"13793:3:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulIdentifier","src":"13704:79:46"},"nodeType":"YulFunctionCall","src":"13704:93:46"},"variableNames":[{"name":"pos","nodeType":"YulIdentifier","src":"13697:3:46"}]},{"nodeType":"YulAssignment","src":"13807:10:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"13814:3:46"},"variableNames":[{"name":"end","nodeType":"YulIdentifier","src":"13807:3:46"}]}]},"name":"abi_encode_tuple_packed_t_bytes_storage_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"13078:3:46","type":""},{"name":"value5","nodeType":"YulTypedName","src":"13084:6:46","type":""},{"name":"value4","nodeType":"YulTypedName","src":"13092:6:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"13100:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"13108:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"13116:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"13124:6:46","type":""}],"returnVariables":[{"name":"end","nodeType":"YulTypedName","src":"13135:3:46","type":""}],"src":"12778:1045:46"},{"body":{"nodeType":"YulBlock","src":"13927:124:46","statements":[{"nodeType":"YulAssignment","src":"13937:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"13949:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"13960:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"13945:3:46"},"nodeType":"YulFunctionCall","src":"13945:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"13937:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"14017:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14030:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14041:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14026:3:46"},"nodeType":"YulFunctionCall","src":"14026:17:46"}],"functionName":{"name":"abi_encode_t_address_to_t_address_fromStack","nodeType":"YulIdentifier","src":"13973:43:46"},"nodeType":"YulFunctionCall","src":"13973:71:46"},"nodeType":"YulExpressionStatement","src":"13973:71:46"}]},"name":"abi_encode_tuple_t_address__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"13899:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"13911:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"13922:4:46","type":""}],"src":"13829:222:46"},{"body":{"nodeType":"YulBlock","src":"14149:118:46","statements":[{"nodeType":"YulAssignment","src":"14159:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14171:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14182:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14167:3:46"},"nodeType":"YulFunctionCall","src":"14167:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14159:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"14233:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14246:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14257:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14242:3:46"},"nodeType":"YulFunctionCall","src":"14242:17:46"}],"functionName":{"name":"abi_encode_t_bool_to_t_bool_fromStack","nodeType":"YulIdentifier","src":"14195:37:46"},"nodeType":"YulFunctionCall","src":"14195:65:46"},"nodeType":"YulExpressionStatement","src":"14195:65:46"}]},"name":"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14121:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"14133:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"14144:4:46","type":""}],"src":"14057:210:46"},{"body":{"nodeType":"YulBlock","src":"14371:124:46","statements":[{"nodeType":"YulAssignment","src":"14381:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14393:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14404:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14389:3:46"},"nodeType":"YulFunctionCall","src":"14389:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14381:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"14461:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14474:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14485:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14470:3:46"},"nodeType":"YulFunctionCall","src":"14470:17:46"}],"functionName":{"name":"abi_encode_t_bytes32_to_t_bytes32_fromStack","nodeType":"YulIdentifier","src":"14417:43:46"},"nodeType":"YulFunctionCall","src":"14417:71:46"},"nodeType":"YulExpressionStatement","src":"14417:71:46"}]},"name":"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14343:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"14355:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"14366:4:46","type":""}],"src":"14273:222:46"},{"body":{"nodeType":"YulBlock","src":"14617:193:46","statements":[{"nodeType":"YulAssignment","src":"14627:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14639:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14650:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14635:3:46"},"nodeType":"YulFunctionCall","src":"14635:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14627:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14674:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14685:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14670:3:46"},"nodeType":"YulFunctionCall","src":"14670:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"14693:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"14699:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"14689:3:46"},"nodeType":"YulFunctionCall","src":"14689:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14663:6:46"},"nodeType":"YulFunctionCall","src":"14663:47:46"},"nodeType":"YulExpressionStatement","src":"14663:47:46"},{"nodeType":"YulAssignment","src":"14719:84:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"14789:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"14798:4:46"}],"functionName":{"name":"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"14727:61:46"},"nodeType":"YulFunctionCall","src":"14727:76:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14719:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_memory_ptr__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14589:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"14601:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"14612:4:46","type":""}],"src":"14501:309:46"},{"body":{"nodeType":"YulBlock","src":"14929:190:46","statements":[{"nodeType":"YulAssignment","src":"14939:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14951:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14962:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14947:3:46"},"nodeType":"YulFunctionCall","src":"14947:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"14939:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"14986:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"14997:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"14982:3:46"},"nodeType":"YulFunctionCall","src":"14982:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"15005:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"15011:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"15001:3:46"},"nodeType":"YulFunctionCall","src":"15001:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"14975:6:46"},"nodeType":"YulFunctionCall","src":"14975:47:46"},"nodeType":"YulExpressionStatement","src":"14975:47:46"},{"nodeType":"YulAssignment","src":"15031:81:46","value":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"15098:6:46"},{"name":"tail","nodeType":"YulIdentifier","src":"15107:4:46"}],"functionName":{"name":"abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"15039:58:46"},"nodeType":"YulFunctionCall","src":"15039:73:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15031:4:46"}]}]},"name":"abi_encode_tuple_t_bytes_storage__to_t_bytes_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"14901:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"14913:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"14924:4:46","type":""}],"src":"14816:303:46"},{"body":{"nodeType":"YulBlock","src":"15240:141:46","statements":[{"nodeType":"YulAssignment","src":"15250:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15262:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15273:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15258:3:46"},"nodeType":"YulFunctionCall","src":"15258:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15250:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"15347:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15360:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15371:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15356:3:46"},"nodeType":"YulFunctionCall","src":"15356:17:46"}],"functionName":{"name":"abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack","nodeType":"YulIdentifier","src":"15286:60:46"},"nodeType":"YulFunctionCall","src":"15286:88:46"},"nodeType":"YulExpressionStatement","src":"15286:88:46"}]},"name":"abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"15212:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"15224:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"15235:4:46","type":""}],"src":"15125:256:46"},{"body":{"nodeType":"YulBlock","src":"15558:248:46","statements":[{"nodeType":"YulAssignment","src":"15568:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15580:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15591:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15576:3:46"},"nodeType":"YulFunctionCall","src":"15576:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15568:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"15615:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"15626:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"15611:3:46"},"nodeType":"YulFunctionCall","src":"15611:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"15634:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"15640:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"15630:3:46"},"nodeType":"YulFunctionCall","src":"15630:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"15604:6:46"},"nodeType":"YulFunctionCall","src":"15604:47:46"},"nodeType":"YulExpressionStatement","src":"15604:47:46"},{"nodeType":"YulAssignment","src":"15660:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"15794:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"15668:124:46"},"nodeType":"YulFunctionCall","src":"15668:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15660:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"15538:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"15553:4:46","type":""}],"src":"15387:419:46"},{"body":{"nodeType":"YulBlock","src":"15983:248:46","statements":[{"nodeType":"YulAssignment","src":"15993:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16005:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16016:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16001:3:46"},"nodeType":"YulFunctionCall","src":"16001:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"15993:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16040:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16051:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16036:3:46"},"nodeType":"YulFunctionCall","src":"16036:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"16059:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"16065:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16055:3:46"},"nodeType":"YulFunctionCall","src":"16055:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16029:6:46"},"nodeType":"YulFunctionCall","src":"16029:47:46"},"nodeType":"YulExpressionStatement","src":"16029:47:46"},{"nodeType":"YulAssignment","src":"16085:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"16219:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16093:124:46"},"nodeType":"YulFunctionCall","src":"16093:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"16085:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"15963:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"15978:4:46","type":""}],"src":"15812:419:46"},{"body":{"nodeType":"YulBlock","src":"16408:248:46","statements":[{"nodeType":"YulAssignment","src":"16418:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16430:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16441:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16426:3:46"},"nodeType":"YulFunctionCall","src":"16426:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"16418:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16465:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16476:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16461:3:46"},"nodeType":"YulFunctionCall","src":"16461:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"16484:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"16490:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16480:3:46"},"nodeType":"YulFunctionCall","src":"16480:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16454:6:46"},"nodeType":"YulFunctionCall","src":"16454:47:46"},"nodeType":"YulExpressionStatement","src":"16454:47:46"},{"nodeType":"YulAssignment","src":"16510:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"16644:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16518:124:46"},"nodeType":"YulFunctionCall","src":"16518:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"16510:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"16388:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"16403:4:46","type":""}],"src":"16237:419:46"},{"body":{"nodeType":"YulBlock","src":"16833:248:46","statements":[{"nodeType":"YulAssignment","src":"16843:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16855:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16866:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16851:3:46"},"nodeType":"YulFunctionCall","src":"16851:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"16843:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"16890:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"16901:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"16886:3:46"},"nodeType":"YulFunctionCall","src":"16886:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"16909:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"16915:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"16905:3:46"},"nodeType":"YulFunctionCall","src":"16905:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"16879:6:46"},"nodeType":"YulFunctionCall","src":"16879:47:46"},"nodeType":"YulExpressionStatement","src":"16879:47:46"},{"nodeType":"YulAssignment","src":"16935:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"17069:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"16943:124:46"},"nodeType":"YulFunctionCall","src":"16943:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"16935:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"16813:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"16828:4:46","type":""}],"src":"16662:419:46"},{"body":{"nodeType":"YulBlock","src":"17258:248:46","statements":[{"nodeType":"YulAssignment","src":"17268:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17280:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"17291:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17276:3:46"},"nodeType":"YulFunctionCall","src":"17276:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"17268:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17315:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"17326:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17311:3:46"},"nodeType":"YulFunctionCall","src":"17311:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"17334:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"17340:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17330:3:46"},"nodeType":"YulFunctionCall","src":"17330:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17304:6:46"},"nodeType":"YulFunctionCall","src":"17304:47:46"},"nodeType":"YulExpressionStatement","src":"17304:47:46"},{"nodeType":"YulAssignment","src":"17360:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"17494:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"17368:124:46"},"nodeType":"YulFunctionCall","src":"17368:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"17360:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"17238:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"17253:4:46","type":""}],"src":"17087:419:46"},{"body":{"nodeType":"YulBlock","src":"17683:248:46","statements":[{"nodeType":"YulAssignment","src":"17693:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17705:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"17716:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17701:3:46"},"nodeType":"YulFunctionCall","src":"17701:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"17693:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"17740:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"17751:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"17736:3:46"},"nodeType":"YulFunctionCall","src":"17736:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"17759:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"17765:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"17755:3:46"},"nodeType":"YulFunctionCall","src":"17755:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"17729:6:46"},"nodeType":"YulFunctionCall","src":"17729:47:46"},"nodeType":"YulExpressionStatement","src":"17729:47:46"},{"nodeType":"YulAssignment","src":"17785:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"17919:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"17793:124:46"},"nodeType":"YulFunctionCall","src":"17793:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"17785:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"17663:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"17678:4:46","type":""}],"src":"17512:419:46"},{"body":{"nodeType":"YulBlock","src":"18108:248:46","statements":[{"nodeType":"YulAssignment","src":"18118:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18130:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18141:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18126:3:46"},"nodeType":"YulFunctionCall","src":"18126:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"18118:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18165:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18176:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18161:3:46"},"nodeType":"YulFunctionCall","src":"18161:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"18184:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"18190:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"18180:3:46"},"nodeType":"YulFunctionCall","src":"18180:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18154:6:46"},"nodeType":"YulFunctionCall","src":"18154:47:46"},"nodeType":"YulExpressionStatement","src":"18154:47:46"},{"nodeType":"YulAssignment","src":"18210:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"18344:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"18218:124:46"},"nodeType":"YulFunctionCall","src":"18218:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"18210:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"18088:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"18103:4:46","type":""}],"src":"17937:419:46"},{"body":{"nodeType":"YulBlock","src":"18533:248:46","statements":[{"nodeType":"YulAssignment","src":"18543:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18555:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18566:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18551:3:46"},"nodeType":"YulFunctionCall","src":"18551:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"18543:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18590:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18601:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18586:3:46"},"nodeType":"YulFunctionCall","src":"18586:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"18609:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"18615:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"18605:3:46"},"nodeType":"YulFunctionCall","src":"18605:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"18579:6:46"},"nodeType":"YulFunctionCall","src":"18579:47:46"},"nodeType":"YulExpressionStatement","src":"18579:47:46"},{"nodeType":"YulAssignment","src":"18635:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"18769:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"18643:124:46"},"nodeType":"YulFunctionCall","src":"18643:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"18635:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"18513:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"18528:4:46","type":""}],"src":"18362:419:46"},{"body":{"nodeType":"YulBlock","src":"18958:248:46","statements":[{"nodeType":"YulAssignment","src":"18968:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"18980:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"18991:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"18976:3:46"},"nodeType":"YulFunctionCall","src":"18976:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"18968:4:46"}]},{"expression":{"arguments":[{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19015:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19026:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19011:3:46"},"nodeType":"YulFunctionCall","src":"19011:17:46"},{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"19034:4:46"},{"name":"headStart","nodeType":"YulIdentifier","src":"19040:9:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"19030:3:46"},"nodeType":"YulFunctionCall","src":"19030:20:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"19004:6:46"},"nodeType":"YulFunctionCall","src":"19004:47:46"},"nodeType":"YulExpressionStatement","src":"19004:47:46"},{"nodeType":"YulAssignment","src":"19060:139:46","value":{"arguments":[{"name":"tail","nodeType":"YulIdentifier","src":"19194:4:46"}],"functionName":{"name":"abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"19068:124:46"},"nodeType":"YulFunctionCall","src":"19068:131:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19060:4:46"}]}]},"name":"abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__to_t_string_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"18938:9:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"18953:4:46","type":""}],"src":"18787:419:46"},{"body":{"nodeType":"YulBlock","src":"19404:219:46","statements":[{"nodeType":"YulAssignment","src":"19414:27:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19426:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19437:3:46","type":"","value":"160"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19422:3:46"},"nodeType":"YulFunctionCall","src":"19422:19:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19414:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"19589:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19602:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19613:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19598:3:46"},"nodeType":"YulFunctionCall","src":"19598:17:46"}],"functionName":{"name":"abi_encode_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_fromStack","nodeType":"YulIdentifier","src":"19451:137:46"},"nodeType":"YulFunctionCall","src":"19451:165:46"},"nodeType":"YulExpressionStatement","src":"19451:165:46"}]},"name":"abi_encode_tuple_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr__to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19376:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"19388:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"19399:4:46","type":""}],"src":"19212:411:46"},{"body":{"nodeType":"YulBlock","src":"19727:124:46","statements":[{"nodeType":"YulAssignment","src":"19737:26:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19749:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19760:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19745:3:46"},"nodeType":"YulFunctionCall","src":"19745:18:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"19737:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"19817:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"19830:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"19841:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"19826:3:46"},"nodeType":"YulFunctionCall","src":"19826:17:46"}],"functionName":{"name":"abi_encode_t_uint128_to_t_uint128_fromStack","nodeType":"YulIdentifier","src":"19773:43:46"},"nodeType":"YulFunctionCall","src":"19773:71:46"},"nodeType":"YulExpressionStatement","src":"19773:71:46"}]},"name":"abi_encode_tuple_t_uint128__to_t_uint128__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19699:9:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"19711:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"19722:4:46","type":""}],"src":"19629:222:46"},{"body":{"nodeType":"YulBlock","src":"20053:440:46","statements":[{"nodeType":"YulAssignment","src":"20063:27:46","value":{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20075:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20086:3:46","type":"","value":"160"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20071:3:46"},"nodeType":"YulFunctionCall","src":"20071:19:46"},"variableNames":[{"name":"tail","nodeType":"YulIdentifier","src":"20063:4:46"}]},{"expression":{"arguments":[{"name":"value0","nodeType":"YulIdentifier","src":"20140:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20153:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20164:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20149:3:46"},"nodeType":"YulFunctionCall","src":"20149:17:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"20100:39:46"},"nodeType":"YulFunctionCall","src":"20100:67:46"},"nodeType":"YulExpressionStatement","src":"20100:67:46"},{"expression":{"arguments":[{"name":"value1","nodeType":"YulIdentifier","src":"20217:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20230:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20241:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20226:3:46"},"nodeType":"YulFunctionCall","src":"20226:18:46"}],"functionName":{"name":"abi_encode_t_uint8_to_t_uint8_fromStack","nodeType":"YulIdentifier","src":"20177:39:46"},"nodeType":"YulFunctionCall","src":"20177:68:46"},"nodeType":"YulExpressionStatement","src":"20177:68:46"},{"expression":{"arguments":[{"name":"value2","nodeType":"YulIdentifier","src":"20297:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20310:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20321:2:46","type":"","value":"64"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20306:3:46"},"nodeType":"YulFunctionCall","src":"20306:18:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"20255:41:46"},"nodeType":"YulFunctionCall","src":"20255:70:46"},"nodeType":"YulExpressionStatement","src":"20255:70:46"},{"expression":{"arguments":[{"name":"value3","nodeType":"YulIdentifier","src":"20377:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20390:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20401:2:46","type":"","value":"96"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20386:3:46"},"nodeType":"YulFunctionCall","src":"20386:18:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"20335:41:46"},"nodeType":"YulFunctionCall","src":"20335:70:46"},"nodeType":"YulExpressionStatement","src":"20335:70:46"},{"expression":{"arguments":[{"name":"value4","nodeType":"YulIdentifier","src":"20457:6:46"},{"arguments":[{"name":"headStart","nodeType":"YulIdentifier","src":"20470:9:46"},{"kind":"number","nodeType":"YulLiteral","src":"20481:3:46","type":"","value":"128"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"20466:3:46"},"nodeType":"YulFunctionCall","src":"20466:19:46"}],"functionName":{"name":"abi_encode_t_uint64_to_t_uint64_fromStack","nodeType":"YulIdentifier","src":"20415:41:46"},"nodeType":"YulFunctionCall","src":"20415:71:46"},"nodeType":"YulExpressionStatement","src":"20415:71:46"}]},"name":"abi_encode_tuple_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__to_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__fromStack_reversed","nodeType":"YulFunctionDefinition","parameters":[{"name":"headStart","nodeType":"YulTypedName","src":"19993:9:46","type":""},{"name":"value4","nodeType":"YulTypedName","src":"20005:6:46","type":""},{"name":"value3","nodeType":"YulTypedName","src":"20013:6:46","type":""},{"name":"value2","nodeType":"YulTypedName","src":"20021:6:46","type":""},{"name":"value1","nodeType":"YulTypedName","src":"20029:6:46","type":""},{"name":"value0","nodeType":"YulTypedName","src":"20037:6:46","type":""}],"returnVariables":[{"name":"tail","nodeType":"YulTypedName","src":"20048:4:46","type":""}],"src":"19857:636:46"},{"body":{"nodeType":"YulBlock","src":"20540:88:46","statements":[{"nodeType":"YulAssignment","src":"20550:30:46","value":{"arguments":[],"functionName":{"name":"allocate_unbounded","nodeType":"YulIdentifier","src":"20560:18:46"},"nodeType":"YulFunctionCall","src":"20560:20:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"20550:6:46"}]},{"expression":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"20609:6:46"},{"name":"size","nodeType":"YulIdentifier","src":"20617:4:46"}],"functionName":{"name":"finalize_allocation","nodeType":"YulIdentifier","src":"20589:19:46"},"nodeType":"YulFunctionCall","src":"20589:33:46"},"nodeType":"YulExpressionStatement","src":"20589:33:46"}]},"name":"allocate_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"size","nodeType":"YulTypedName","src":"20524:4:46","type":""}],"returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"20533:6:46","type":""}],"src":"20499:129:46"},{"body":{"nodeType":"YulBlock","src":"20674:35:46","statements":[{"nodeType":"YulAssignment","src":"20684:19:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"20700:2:46","type":"","value":"64"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"20694:5:46"},"nodeType":"YulFunctionCall","src":"20694:9:46"},"variableNames":[{"name":"memPtr","nodeType":"YulIdentifier","src":"20684:6:46"}]}]},"name":"allocate_unbounded","nodeType":"YulFunctionDefinition","returnVariables":[{"name":"memPtr","nodeType":"YulTypedName","src":"20667:6:46","type":""}],"src":"20634:75:46"},{"body":{"nodeType":"YulBlock","src":"20781:241:46","statements":[{"body":{"nodeType":"YulBlock","src":"20886:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"20888:16:46"},"nodeType":"YulFunctionCall","src":"20888:18:46"},"nodeType":"YulExpressionStatement","src":"20888:18:46"}]},"condition":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"20858:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"20866:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"20855:2:46"},"nodeType":"YulFunctionCall","src":"20855:30:46"},"nodeType":"YulIf","src":"20852:56:46"},{"nodeType":"YulAssignment","src":"20918:37:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"20948:6:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"20926:21:46"},"nodeType":"YulFunctionCall","src":"20926:29:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"20918:4:46"}]},{"nodeType":"YulAssignment","src":"20992:23:46","value":{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"21004:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"21010:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21000:3:46"},"nodeType":"YulFunctionCall","src":"21000:15:46"},"variableNames":[{"name":"size","nodeType":"YulIdentifier","src":"20992:4:46"}]}]},"name":"array_allocation_size_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"length","nodeType":"YulTypedName","src":"20765:6:46","type":""}],"returnVariables":[{"name":"size","nodeType":"YulTypedName","src":"20776:4:46","type":""}],"src":"20715:307:46"},{"body":{"nodeType":"YulBlock","src":"21081:87:46","statements":[{"nodeType":"YulAssignment","src":"21091:11:46","value":{"name":"ptr","nodeType":"YulIdentifier","src":"21099:3:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"21091:4:46"}]},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"21119:1:46","type":"","value":"0"},{"name":"ptr","nodeType":"YulIdentifier","src":"21122:3:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21112:6:46"},"nodeType":"YulFunctionCall","src":"21112:14:46"},"nodeType":"YulExpressionStatement","src":"21112:14:46"},{"nodeType":"YulAssignment","src":"21135:26:46","value":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"21153:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"21156:4:46","type":"","value":"0x20"}],"functionName":{"name":"keccak256","nodeType":"YulIdentifier","src":"21143:9:46"},"nodeType":"YulFunctionCall","src":"21143:18:46"},"variableNames":[{"name":"data","nodeType":"YulIdentifier","src":"21135:4:46"}]}]},"name":"array_dataslot_t_bytes_storage","nodeType":"YulFunctionDefinition","parameters":[{"name":"ptr","nodeType":"YulTypedName","src":"21068:3:46","type":""}],"returnVariables":[{"name":"data","nodeType":"YulTypedName","src":"21076:4:46","type":""}],"src":"21028:140:46"},{"body":{"nodeType":"YulBlock","src":"21232:40:46","statements":[{"nodeType":"YulAssignment","src":"21243:22:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"21259:5:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"21253:5:46"},"nodeType":"YulFunctionCall","src":"21253:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"21243:6:46"}]}]},"name":"array_length_t_bytes_memory_ptr","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"21215:5:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"21225:6:46","type":""}],"src":"21174:98:46"},{"body":{"nodeType":"YulBlock","src":"21373:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21390:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"21395:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21383:6:46"},"nodeType":"YulFunctionCall","src":"21383:19:46"},"nodeType":"YulExpressionStatement","src":"21383:19:46"},{"nodeType":"YulAssignment","src":"21411:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21430:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"21435:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21426:3:46"},"nodeType":"YulFunctionCall","src":"21426:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"21411:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"21345:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"21350:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"21361:11:46","type":""}],"src":"21278:168:46"},{"body":{"nodeType":"YulBlock","src":"21565:34:46","statements":[{"nodeType":"YulAssignment","src":"21575:18:46","value":{"name":"pos","nodeType":"YulIdentifier","src":"21590:3:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"21575:11:46"}]}]},"name":"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"21537:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"21542:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"21553:11:46","type":""}],"src":"21452:147:46"},{"body":{"nodeType":"YulBlock","src":"21701:73:46","statements":[{"expression":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21718:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"21723:6:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"21711:6:46"},"nodeType":"YulFunctionCall","src":"21711:19:46"},"nodeType":"YulExpressionStatement","src":"21711:19:46"},{"nodeType":"YulAssignment","src":"21739:29:46","value":{"arguments":[{"name":"pos","nodeType":"YulIdentifier","src":"21758:3:46"},{"kind":"number","nodeType":"YulLiteral","src":"21763:4:46","type":"","value":"0x20"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"21754:3:46"},"nodeType":"YulFunctionCall","src":"21754:14:46"},"variableNames":[{"name":"updated_pos","nodeType":"YulIdentifier","src":"21739:11:46"}]}]},"name":"array_storeLengthForEncoding_t_string_memory_ptr_fromStack","nodeType":"YulFunctionDefinition","parameters":[{"name":"pos","nodeType":"YulTypedName","src":"21673:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"21678:6:46","type":""}],"returnVariables":[{"name":"updated_pos","nodeType":"YulTypedName","src":"21689:11:46","type":""}],"src":"21605:169:46"},{"body":{"nodeType":"YulBlock","src":"21823:211:46","statements":[{"nodeType":"YulAssignment","src":"21833:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"21855:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"21838:16:46"},"nodeType":"YulFunctionCall","src":"21838:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"21833:1:46"}]},{"nodeType":"YulAssignment","src":"21866:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"21888:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"21871:16:46"},"nodeType":"YulFunctionCall","src":"21871:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"21866:1:46"}]},{"body":{"nodeType":"YulBlock","src":"21980:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"21982:16:46"},"nodeType":"YulFunctionCall","src":"21982:18:46"},"nodeType":"YulExpressionStatement","src":"21982:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"21949:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"21956:18:46","type":"","value":"0xffffffffffffffff"},{"name":"y","nodeType":"YulIdentifier","src":"21976:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"21952:3:46"},"nodeType":"YulFunctionCall","src":"21952:26:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"21946:2:46"},"nodeType":"YulFunctionCall","src":"21946:33:46"},"nodeType":"YulIf","src":"21943:59:46"},{"nodeType":"YulAssignment","src":"22012:16:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22023:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"22026:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"22019:3:46"},"nodeType":"YulFunctionCall","src":"22019:9:46"},"variableNames":[{"name":"sum","nodeType":"YulIdentifier","src":"22012:3:46"}]}]},"name":"checked_add_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"21810:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"21813:1:46","type":""}],"returnVariables":[{"name":"sum","nodeType":"YulTypedName","src":"21819:3:46","type":""}],"src":"21780:254:46"},{"body":{"nodeType":"YulBlock","src":"22087:250:46","statements":[{"nodeType":"YulAssignment","src":"22097:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22119:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"22102:16:46"},"nodeType":"YulFunctionCall","src":"22102:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"22097:1:46"}]},{"nodeType":"YulAssignment","src":"22130:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"22152:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"22135:16:46"},"nodeType":"YulFunctionCall","src":"22135:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"22130:1:46"}]},{"body":{"nodeType":"YulBlock","src":"22279:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"22281:16:46"},"nodeType":"YulFunctionCall","src":"22281:18:46"},"nodeType":"YulExpressionStatement","src":"22281:18:46"}]},"condition":{"arguments":[{"arguments":[{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22239:1:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"22232:6:46"},"nodeType":"YulFunctionCall","src":"22232:9:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"22225:6:46"},"nodeType":"YulFunctionCall","src":"22225:17:46"},{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"22247:1:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"22254:18:46","type":"","value":"0xffffffffffffffff"},{"name":"x","nodeType":"YulIdentifier","src":"22274:1:46"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"22250:3:46"},"nodeType":"YulFunctionCall","src":"22250:26:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"22244:2:46"},"nodeType":"YulFunctionCall","src":"22244:33:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"22221:3:46"},"nodeType":"YulFunctionCall","src":"22221:57:46"},"nodeType":"YulIf","src":"22218:83:46"},{"nodeType":"YulAssignment","src":"22311:20:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22326:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"22329:1:46"}],"functionName":{"name":"mul","nodeType":"YulIdentifier","src":"22322:3:46"},"nodeType":"YulFunctionCall","src":"22322:9:46"},"variableNames":[{"name":"product","nodeType":"YulIdentifier","src":"22311:7:46"}]}]},"name":"checked_mul_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"22070:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"22073:1:46","type":""}],"returnVariables":[{"name":"product","nodeType":"YulTypedName","src":"22079:7:46","type":""}],"src":"22040:297:46"},{"body":{"nodeType":"YulBlock","src":"22387:144:46","statements":[{"nodeType":"YulAssignment","src":"22397:24:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22419:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"22402:16:46"},"nodeType":"YulFunctionCall","src":"22402:19:46"},"variableNames":[{"name":"x","nodeType":"YulIdentifier","src":"22397:1:46"}]},{"nodeType":"YulAssignment","src":"22430:24:46","value":{"arguments":[{"name":"y","nodeType":"YulIdentifier","src":"22452:1:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"22435:16:46"},"nodeType":"YulFunctionCall","src":"22435:19:46"},"variableNames":[{"name":"y","nodeType":"YulIdentifier","src":"22430:1:46"}]},{"body":{"nodeType":"YulBlock","src":"22476:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"22478:16:46"},"nodeType":"YulFunctionCall","src":"22478:18:46"},"nodeType":"YulExpressionStatement","src":"22478:18:46"}]},"condition":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22470:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"22473:1:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"22467:2:46"},"nodeType":"YulFunctionCall","src":"22467:8:46"},"nodeType":"YulIf","src":"22464:34:46"},{"nodeType":"YulAssignment","src":"22508:17:46","value":{"arguments":[{"name":"x","nodeType":"YulIdentifier","src":"22520:1:46"},{"name":"y","nodeType":"YulIdentifier","src":"22523:1:46"}],"functionName":{"name":"sub","nodeType":"YulIdentifier","src":"22516:3:46"},"nodeType":"YulFunctionCall","src":"22516:9:46"},"variableNames":[{"name":"diff","nodeType":"YulIdentifier","src":"22508:4:46"}]}]},"name":"checked_sub_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"x","nodeType":"YulTypedName","src":"22373:1:46","type":""},{"name":"y","nodeType":"YulTypedName","src":"22376:1:46","type":""}],"returnVariables":[{"name":"diff","nodeType":"YulTypedName","src":"22382:4:46","type":""}],"src":"22343:188:46"},{"body":{"nodeType":"YulBlock","src":"22582:51:46","statements":[{"nodeType":"YulAssignment","src":"22592:35:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"22621:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"22603:17:46"},"nodeType":"YulFunctionCall","src":"22603:24:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"22592:7:46"}]}]},"name":"cleanup_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"22564:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"22574:7:46","type":""}],"src":"22537:96:46"},{"body":{"nodeType":"YulBlock","src":"22681:48:46","statements":[{"nodeType":"YulAssignment","src":"22691:32:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"22716:5:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"22709:6:46"},"nodeType":"YulFunctionCall","src":"22709:13:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"22702:6:46"},"nodeType":"YulFunctionCall","src":"22702:21:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"22691:7:46"}]}]},"name":"cleanup_t_bool","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"22663:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"22673:7:46","type":""}],"src":"22639:90:46"},{"body":{"nodeType":"YulBlock","src":"22780:32:46","statements":[{"nodeType":"YulAssignment","src":"22790:16:46","value":{"name":"value","nodeType":"YulIdentifier","src":"22801:5:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"22790:7:46"}]}]},"name":"cleanup_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"22762:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"22772:7:46","type":""}],"src":"22735:77:46"},{"body":{"nodeType":"YulBlock","src":"22863:73:46","statements":[{"nodeType":"YulAssignment","src":"22873:57:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"22888:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"22895:34:46","type":"","value":"0xffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"22884:3:46"},"nodeType":"YulFunctionCall","src":"22884:46:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"22873:7:46"}]}]},"name":"cleanup_t_uint128","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"22845:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"22855:7:46","type":""}],"src":"22818:118:46"},{"body":{"nodeType":"YulBlock","src":"22987:81:46","statements":[{"nodeType":"YulAssignment","src":"22997:65:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23012:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"23019:42:46","type":"","value":"0xffffffffffffffffffffffffffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"23008:3:46"},"nodeType":"YulFunctionCall","src":"23008:54:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"22997:7:46"}]}]},"name":"cleanup_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"22969:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"22979:7:46","type":""}],"src":"22942:126:46"},{"body":{"nodeType":"YulBlock","src":"23118:57:46","statements":[{"nodeType":"YulAssignment","src":"23128:41:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23143:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"23150:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"23139:3:46"},"nodeType":"YulFunctionCall","src":"23139:30:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"23128:7:46"}]}]},"name":"cleanup_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23100:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"23110:7:46","type":""}],"src":"23074:101:46"},{"body":{"nodeType":"YulBlock","src":"23224:43:46","statements":[{"nodeType":"YulAssignment","src":"23234:27:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23249:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"23256:4:46","type":"","value":"0xff"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"23245:3:46"},"nodeType":"YulFunctionCall","src":"23245:16:46"},"variableNames":[{"name":"cleaned","nodeType":"YulIdentifier","src":"23234:7:46"}]}]},"name":"cleanup_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23206:5:46","type":""}],"returnVariables":[{"name":"cleaned","nodeType":"YulTypedName","src":"23216:7:46","type":""}],"src":"23181:86:46"},{"body":{"nodeType":"YulBlock","src":"23350:66:46","statements":[{"nodeType":"YulAssignment","src":"23360:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23404:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_address","nodeType":"YulIdentifier","src":"23373:30:46"},"nodeType":"YulFunctionCall","src":"23373:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"23360:9:46"}]}]},"name":"convert_t_contract$_Clonable_$7948_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23330:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"23340:9:46","type":""}],"src":"23273:143:46"},{"body":{"nodeType":"YulBlock","src":"23482:66:46","statements":[{"nodeType":"YulAssignment","src":"23492:50:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23536:5:46"}],"functionName":{"name":"convert_t_uint160_to_t_uint160","nodeType":"YulIdentifier","src":"23505:30:46"},"nodeType":"YulFunctionCall","src":"23505:37:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"23492:9:46"}]}]},"name":"convert_t_uint160_to_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23462:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"23472:9:46","type":""}],"src":"23422:126:46"},{"body":{"nodeType":"YulBlock","src":"23614:53:46","statements":[{"nodeType":"YulAssignment","src":"23624:37:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"23655:5:46"}],"functionName":{"name":"cleanup_t_uint160","nodeType":"YulIdentifier","src":"23637:17:46"},"nodeType":"YulFunctionCall","src":"23637:24:46"},"variableNames":[{"name":"converted","nodeType":"YulIdentifier","src":"23624:9:46"}]}]},"name":"convert_t_uint160_to_t_uint160","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"23594:5:46","type":""}],"returnVariables":[{"name":"converted","nodeType":"YulTypedName","src":"23604:9:46","type":""}],"src":"23554:113:46"},{"body":{"nodeType":"YulBlock","src":"23724:103:46","statements":[{"expression":{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"23747:3:46"},{"name":"src","nodeType":"YulIdentifier","src":"23752:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"23757:6:46"}],"functionName":{"name":"calldatacopy","nodeType":"YulIdentifier","src":"23734:12:46"},"nodeType":"YulFunctionCall","src":"23734:30:46"},"nodeType":"YulExpressionStatement","src":"23734:30:46"},{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"23805:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"23810:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23801:3:46"},"nodeType":"YulFunctionCall","src":"23801:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"23819:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23794:6:46"},"nodeType":"YulFunctionCall","src":"23794:27:46"},"nodeType":"YulExpressionStatement","src":"23794:27:46"}]},"name":"copy_calldata_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"23706:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"23711:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"23716:6:46","type":""}],"src":"23673:154:46"},{"body":{"nodeType":"YulBlock","src":"23882:258:46","statements":[{"nodeType":"YulVariableDeclaration","src":"23892:10:46","value":{"kind":"number","nodeType":"YulLiteral","src":"23901:1:46","type":"","value":"0"},"variables":[{"name":"i","nodeType":"YulTypedName","src":"23896:1:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"23961:63:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"23986:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"23991:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23982:3:46"},"nodeType":"YulFunctionCall","src":"23982:11:46"},{"arguments":[{"arguments":[{"name":"src","nodeType":"YulIdentifier","src":"24005:3:46"},{"name":"i","nodeType":"YulIdentifier","src":"24010:1:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24001:3:46"},"nodeType":"YulFunctionCall","src":"24001:11:46"}],"functionName":{"name":"mload","nodeType":"YulIdentifier","src":"23995:5:46"},"nodeType":"YulFunctionCall","src":"23995:18:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"23975:6:46"},"nodeType":"YulFunctionCall","src":"23975:39:46"},"nodeType":"YulExpressionStatement","src":"23975:39:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"23922:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"23925:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"23919:2:46"},"nodeType":"YulFunctionCall","src":"23919:13:46"},"nodeType":"YulForLoop","post":{"nodeType":"YulBlock","src":"23933:19:46","statements":[{"nodeType":"YulAssignment","src":"23935:15:46","value":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"23944:1:46"},{"kind":"number","nodeType":"YulLiteral","src":"23947:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"23940:3:46"},"nodeType":"YulFunctionCall","src":"23940:10:46"},"variableNames":[{"name":"i","nodeType":"YulIdentifier","src":"23935:1:46"}]}]},"pre":{"nodeType":"YulBlock","src":"23915:3:46","statements":[]},"src":"23911:113:46"},{"body":{"nodeType":"YulBlock","src":"24058:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"dst","nodeType":"YulIdentifier","src":"24108:3:46"},{"name":"length","nodeType":"YulIdentifier","src":"24113:6:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24104:3:46"},"nodeType":"YulFunctionCall","src":"24104:16:46"},{"kind":"number","nodeType":"YulLiteral","src":"24122:1:46","type":"","value":"0"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24097:6:46"},"nodeType":"YulFunctionCall","src":"24097:27:46"},"nodeType":"YulExpressionStatement","src":"24097:27:46"}]},"condition":{"arguments":[{"name":"i","nodeType":"YulIdentifier","src":"24039:1:46"},{"name":"length","nodeType":"YulIdentifier","src":"24042:6:46"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"24036:2:46"},"nodeType":"YulFunctionCall","src":"24036:13:46"},"nodeType":"YulIf","src":"24033:101:46"}]},"name":"copy_memory_to_memory","nodeType":"YulFunctionDefinition","parameters":[{"name":"src","nodeType":"YulTypedName","src":"23864:3:46","type":""},{"name":"dst","nodeType":"YulTypedName","src":"23869:3:46","type":""},{"name":"length","nodeType":"YulTypedName","src":"23874:6:46","type":""}],"src":"23833:307:46"},{"body":{"nodeType":"YulBlock","src":"24197:269:46","statements":[{"nodeType":"YulAssignment","src":"24207:22:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"24221:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"24227:1:46","type":"","value":"2"}],"functionName":{"name":"div","nodeType":"YulIdentifier","src":"24217:3:46"},"nodeType":"YulFunctionCall","src":"24217:12:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"24207:6:46"}]},{"nodeType":"YulVariableDeclaration","src":"24238:38:46","value":{"arguments":[{"name":"data","nodeType":"YulIdentifier","src":"24268:4:46"},{"kind":"number","nodeType":"YulLiteral","src":"24274:1:46","type":"","value":"1"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"24264:3:46"},"nodeType":"YulFunctionCall","src":"24264:12:46"},"variables":[{"name":"outOfPlaceEncoding","nodeType":"YulTypedName","src":"24242:18:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"24315:51:46","statements":[{"nodeType":"YulAssignment","src":"24329:27:46","value":{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"24343:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24351:4:46","type":"","value":"0x7f"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"24339:3:46"},"nodeType":"YulFunctionCall","src":"24339:17:46"},"variableNames":[{"name":"length","nodeType":"YulIdentifier","src":"24329:6:46"}]}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"24295:18:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"24288:6:46"},"nodeType":"YulFunctionCall","src":"24288:26:46"},"nodeType":"YulIf","src":"24285:81:46"},{"body":{"nodeType":"YulBlock","src":"24418:42:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x22","nodeType":"YulIdentifier","src":"24432:16:46"},"nodeType":"YulFunctionCall","src":"24432:18:46"},"nodeType":"YulExpressionStatement","src":"24432:18:46"}]},"condition":{"arguments":[{"name":"outOfPlaceEncoding","nodeType":"YulIdentifier","src":"24382:18:46"},{"arguments":[{"name":"length","nodeType":"YulIdentifier","src":"24405:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"24413:2:46","type":"","value":"32"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"24402:2:46"},"nodeType":"YulFunctionCall","src":"24402:14:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"24379:2:46"},"nodeType":"YulFunctionCall","src":"24379:38:46"},"nodeType":"YulIf","src":"24376:84:46"}]},"name":"extract_byte_array_length","nodeType":"YulFunctionDefinition","parameters":[{"name":"data","nodeType":"YulTypedName","src":"24181:4:46","type":""}],"returnVariables":[{"name":"length","nodeType":"YulTypedName","src":"24190:6:46","type":""}],"src":"24146:320:46"},{"body":{"nodeType":"YulBlock","src":"24515:238:46","statements":[{"nodeType":"YulVariableDeclaration","src":"24525:58:46","value":{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"24547:6:46"},{"arguments":[{"name":"size","nodeType":"YulIdentifier","src":"24577:4:46"}],"functionName":{"name":"round_up_to_mul_of_32","nodeType":"YulIdentifier","src":"24555:21:46"},"nodeType":"YulFunctionCall","src":"24555:27:46"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24543:3:46"},"nodeType":"YulFunctionCall","src":"24543:40:46"},"variables":[{"name":"newFreePtr","nodeType":"YulTypedName","src":"24529:10:46","type":""}]},{"body":{"nodeType":"YulBlock","src":"24694:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x41","nodeType":"YulIdentifier","src":"24696:16:46"},"nodeType":"YulFunctionCall","src":"24696:18:46"},"nodeType":"YulExpressionStatement","src":"24696:18:46"}]},"condition":{"arguments":[{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"24637:10:46"},{"kind":"number","nodeType":"YulLiteral","src":"24649:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"gt","nodeType":"YulIdentifier","src":"24634:2:46"},"nodeType":"YulFunctionCall","src":"24634:34:46"},{"arguments":[{"name":"newFreePtr","nodeType":"YulIdentifier","src":"24673:10:46"},{"name":"memPtr","nodeType":"YulIdentifier","src":"24685:6:46"}],"functionName":{"name":"lt","nodeType":"YulIdentifier","src":"24670:2:46"},"nodeType":"YulFunctionCall","src":"24670:22:46"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"24631:2:46"},"nodeType":"YulFunctionCall","src":"24631:62:46"},"nodeType":"YulIf","src":"24628:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"24732:2:46","type":"","value":"64"},{"name":"newFreePtr","nodeType":"YulIdentifier","src":"24736:10:46"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24725:6:46"},"nodeType":"YulFunctionCall","src":"24725:22:46"},"nodeType":"YulExpressionStatement","src":"24725:22:46"}]},"name":"finalize_allocation","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"24501:6:46","type":""},{"name":"size","nodeType":"YulTypedName","src":"24509:4:46","type":""}],"src":"24472:281:46"},{"body":{"nodeType":"YulBlock","src":"24801:141:46","statements":[{"nodeType":"YulAssignment","src":"24811:32:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"24837:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"24820:16:46"},"nodeType":"YulFunctionCall","src":"24820:23:46"},"variableNames":[{"name":"value","nodeType":"YulIdentifier","src":"24811:5:46"}]},{"body":{"nodeType":"YulBlock","src":"24885:22:46","statements":[{"expression":{"arguments":[],"functionName":{"name":"panic_error_0x11","nodeType":"YulIdentifier","src":"24887:16:46"},"nodeType":"YulFunctionCall","src":"24887:18:46"},"nodeType":"YulExpressionStatement","src":"24887:18:46"}]},"condition":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"24858:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"24865:18:46","type":"","value":"0xffffffffffffffff"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"24855:2:46"},"nodeType":"YulFunctionCall","src":"24855:29:46"},"nodeType":"YulIf","src":"24852:55:46"},{"nodeType":"YulAssignment","src":"24916:20:46","value":{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"24927:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"24934:1:46","type":"","value":"1"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"24923:3:46"},"nodeType":"YulFunctionCall","src":"24923:13:46"},"variableNames":[{"name":"ret","nodeType":"YulIdentifier","src":"24916:3:46"}]}]},"name":"increment_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"24787:5:46","type":""}],"returnVariables":[{"name":"ret","nodeType":"YulTypedName","src":"24797:3:46","type":""}],"src":"24759:183:46"},{"body":{"nodeType":"YulBlock","src":"24976:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"24993:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"24996:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"24986:6:46"},"nodeType":"YulFunctionCall","src":"24986:88:46"},"nodeType":"YulExpressionStatement","src":"24986:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25090:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"25093:4:46","type":"","value":"0x01"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25083:6:46"},"nodeType":"YulFunctionCall","src":"25083:15:46"},"nodeType":"YulExpressionStatement","src":"25083:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25114:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25117:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25107:6:46"},"nodeType":"YulFunctionCall","src":"25107:15:46"},"nodeType":"YulExpressionStatement","src":"25107:15:46"}]},"name":"panic_error_0x01","nodeType":"YulFunctionDefinition","src":"24948:180:46"},{"body":{"nodeType":"YulBlock","src":"25162:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25179:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25182:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25172:6:46"},"nodeType":"YulFunctionCall","src":"25172:88:46"},"nodeType":"YulExpressionStatement","src":"25172:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25276:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"25279:4:46","type":"","value":"0x11"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25269:6:46"},"nodeType":"YulFunctionCall","src":"25269:15:46"},"nodeType":"YulExpressionStatement","src":"25269:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25300:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25303:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25293:6:46"},"nodeType":"YulFunctionCall","src":"25293:15:46"},"nodeType":"YulExpressionStatement","src":"25293:15:46"}]},"name":"panic_error_0x11","nodeType":"YulFunctionDefinition","src":"25134:180:46"},{"body":{"nodeType":"YulBlock","src":"25348:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25365:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25368:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25358:6:46"},"nodeType":"YulFunctionCall","src":"25358:88:46"},"nodeType":"YulExpressionStatement","src":"25358:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25462:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"25465:4:46","type":"","value":"0x22"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25455:6:46"},"nodeType":"YulFunctionCall","src":"25455:15:46"},"nodeType":"YulExpressionStatement","src":"25455:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25486:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25489:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25479:6:46"},"nodeType":"YulFunctionCall","src":"25479:15:46"},"nodeType":"YulExpressionStatement","src":"25479:15:46"}]},"name":"panic_error_0x22","nodeType":"YulFunctionDefinition","src":"25320:180:46"},{"body":{"nodeType":"YulBlock","src":"25534:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25551:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25554:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25544:6:46"},"nodeType":"YulFunctionCall","src":"25544:88:46"},"nodeType":"YulExpressionStatement","src":"25544:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25648:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"25651:4:46","type":"","value":"0x32"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25641:6:46"},"nodeType":"YulFunctionCall","src":"25641:15:46"},"nodeType":"YulExpressionStatement","src":"25641:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25672:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25675:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25665:6:46"},"nodeType":"YulFunctionCall","src":"25665:15:46"},"nodeType":"YulExpressionStatement","src":"25665:15:46"}]},"name":"panic_error_0x32","nodeType":"YulFunctionDefinition","src":"25506:180:46"},{"body":{"nodeType":"YulBlock","src":"25720:152:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25737:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25740:77:46","type":"","value":"35408467139433450592217433187231851964531694900788300625387963629091585785856"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25730:6:46"},"nodeType":"YulFunctionCall","src":"25730:88:46"},"nodeType":"YulExpressionStatement","src":"25730:88:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25834:1:46","type":"","value":"4"},{"kind":"number","nodeType":"YulLiteral","src":"25837:4:46","type":"","value":"0x41"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"25827:6:46"},"nodeType":"YulFunctionCall","src":"25827:15:46"},"nodeType":"YulExpressionStatement","src":"25827:15:46"},{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25858:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25861:4:46","type":"","value":"0x24"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25851:6:46"},"nodeType":"YulFunctionCall","src":"25851:15:46"},"nodeType":"YulExpressionStatement","src":"25851:15:46"}]},"name":"panic_error_0x41","nodeType":"YulFunctionDefinition","src":"25692:180:46"},{"body":{"nodeType":"YulBlock","src":"25967:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"25984:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"25987:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"25977:6:46"},"nodeType":"YulFunctionCall","src":"25977:12:46"},"nodeType":"YulExpressionStatement","src":"25977:12:46"}]},"name":"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d","nodeType":"YulFunctionDefinition","src":"25878:117:46"},{"body":{"nodeType":"YulBlock","src":"26090:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"26107:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"26110:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"26100:6:46"},"nodeType":"YulFunctionCall","src":"26100:12:46"},"nodeType":"YulExpressionStatement","src":"26100:12:46"}]},"name":"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae","nodeType":"YulFunctionDefinition","src":"26001:117:46"},{"body":{"nodeType":"YulBlock","src":"26213:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"26230:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"26233:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"26223:6:46"},"nodeType":"YulFunctionCall","src":"26223:12:46"},"nodeType":"YulExpressionStatement","src":"26223:12:46"}]},"name":"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db","nodeType":"YulFunctionDefinition","src":"26124:117:46"},{"body":{"nodeType":"YulBlock","src":"26336:28:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"26353:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"26356:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"26346:6:46"},"nodeType":"YulFunctionCall","src":"26346:12:46"},"nodeType":"YulExpressionStatement","src":"26346:12:46"}]},"name":"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b","nodeType":"YulFunctionDefinition","src":"26247:117:46"},{"body":{"nodeType":"YulBlock","src":"26418:54:46","statements":[{"nodeType":"YulAssignment","src":"26428:38:46","value":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"26446:5:46"},{"kind":"number","nodeType":"YulLiteral","src":"26453:2:46","type":"","value":"31"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26442:3:46"},"nodeType":"YulFunctionCall","src":"26442:14:46"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"26462:2:46","type":"","value":"31"}],"functionName":{"name":"not","nodeType":"YulIdentifier","src":"26458:3:46"},"nodeType":"YulFunctionCall","src":"26458:7:46"}],"functionName":{"name":"and","nodeType":"YulIdentifier","src":"26438:3:46"},"nodeType":"YulFunctionCall","src":"26438:28:46"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"26428:6:46"}]}]},"name":"round_up_to_mul_of_32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"26401:5:46","type":""}],"returnVariables":[{"name":"result","nodeType":"YulTypedName","src":"26411:6:46","type":""}],"src":"26370:102:46"},{"body":{"nodeType":"YulBlock","src":"26584:119:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"26606:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"26614:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26602:3:46"},"nodeType":"YulFunctionCall","src":"26602:14:46"},{"hexValue":"4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061","kind":"string","nodeType":"YulLiteral","src":"26618:34:46","type":"","value":"Ownable: new owner is the zero a"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26595:6:46"},"nodeType":"YulFunctionCall","src":"26595:58:46"},"nodeType":"YulExpressionStatement","src":"26595:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"26674:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"26682:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26670:3:46"},"nodeType":"YulFunctionCall","src":"26670:15:46"},{"hexValue":"646472657373","kind":"string","nodeType":"YulLiteral","src":"26687:8:46","type":"","value":"ddress"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26663:6:46"},"nodeType":"YulFunctionCall","src":"26663:33:46"},"nodeType":"YulExpressionStatement","src":"26663:33:46"}]},"name":"store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"26576:6:46","type":""}],"src":"26478:225:46"},{"body":{"nodeType":"YulBlock","src":"26815:142:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"26837:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"26845:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26833:3:46"},"nodeType":"YulFunctionCall","src":"26833:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a207769746e","kind":"string","nodeType":"YulLiteral","src":"26849:34:46","type":"","value":"WitnetRequestMalleableBase: witn"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26826:6:46"},"nodeType":"YulFunctionCall","src":"26826:58:46"},"nodeType":"YulExpressionStatement","src":"26826:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"26905:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"26913:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"26901:3:46"},"nodeType":"YulFunctionCall","src":"26901:15:46"},{"hexValue":"657373696e6720636f6e73656e737573206f7574206f662072616e6765","kind":"string","nodeType":"YulLiteral","src":"26918:31:46","type":"","value":"essing consensus out of range"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"26894:6:46"},"nodeType":"YulFunctionCall","src":"26894:56:46"},"nodeType":"YulExpressionStatement","src":"26894:56:46"}]},"name":"store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"26807:6:46","type":""}],"src":"26709:248:46"},{"body":{"nodeType":"YulBlock","src":"27069:118:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27091:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27099:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27087:3:46"},"nodeType":"YulFunctionCall","src":"27087:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a206e6f2072","kind":"string","nodeType":"YulLiteral","src":"27103:34:46","type":"","value":"WitnetRequestMalleableBase: no r"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27080:6:46"},"nodeType":"YulFunctionCall","src":"27080:58:46"},"nodeType":"YulExpressionStatement","src":"27080:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27159:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27167:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27155:3:46"},"nodeType":"YulFunctionCall","src":"27155:15:46"},{"hexValue":"6577617264","kind":"string","nodeType":"YulLiteral","src":"27172:7:46","type":"","value":"eward"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27148:6:46"},"nodeType":"YulFunctionCall","src":"27148:32:46"},"nodeType":"YulExpressionStatement","src":"27148:32:46"}]},"name":"store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"27061:6:46","type":""}],"src":"26963:224:46"},{"body":{"nodeType":"YulBlock","src":"27299:68:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27321:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27329:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27317:3:46"},"nodeType":"YulFunctionCall","src":"27317:14:46"},{"hexValue":"436c6f6e61626c653a2043524541544532206661696c6564","kind":"string","nodeType":"YulLiteral","src":"27333:26:46","type":"","value":"Clonable: CREATE2 failed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27310:6:46"},"nodeType":"YulFunctionCall","src":"27310:50:46"},"nodeType":"YulExpressionStatement","src":"27310:50:46"}]},"name":"store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"27291:6:46","type":""}],"src":"27193:174:46"},{"body":{"nodeType":"YulBlock","src":"27479:128:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27501:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27509:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27497:3:46"},"nodeType":"YulFunctionCall","src":"27497:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a20616c7265","kind":"string","nodeType":"YulLiteral","src":"27513:34:46","type":"","value":"WitnetRequestMalleableBase: alre"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27490:6:46"},"nodeType":"YulFunctionCall","src":"27490:58:46"},"nodeType":"YulExpressionStatement","src":"27490:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27569:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27577:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27565:3:46"},"nodeType":"YulFunctionCall","src":"27565:15:46"},{"hexValue":"61647920696e697469616c697a6564","kind":"string","nodeType":"YulLiteral","src":"27582:17:46","type":"","value":"ady initialized"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27558:6:46"},"nodeType":"YulFunctionCall","src":"27558:42:46"},"nodeType":"YulExpressionStatement","src":"27558:42:46"}]},"name":"store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"27471:6:46","type":""}],"src":"27373:234:46"},{"body":{"nodeType":"YulBlock","src":"27719:141:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27741:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27749:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27737:3:46"},"nodeType":"YulFunctionCall","src":"27737:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a206e756d62","kind":"string","nodeType":"YulLiteral","src":"27753:34:46","type":"","value":"WitnetRequestMalleableBase: numb"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27730:6:46"},"nodeType":"YulFunctionCall","src":"27730:58:46"},"nodeType":"YulExpressionStatement","src":"27730:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27809:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"27817:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27805:3:46"},"nodeType":"YulFunctionCall","src":"27805:15:46"},{"hexValue":"6572206f66207769746e6573736573206f7574206f662072616e6765","kind":"string","nodeType":"YulLiteral","src":"27822:30:46","type":"","value":"er of witnesses out of range"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27798:6:46"},"nodeType":"YulFunctionCall","src":"27798:55:46"},"nodeType":"YulExpressionStatement","src":"27798:55:46"}]},"name":"store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"27711:6:46","type":""}],"src":"27613:247:46"},{"body":{"nodeType":"YulBlock","src":"27972:76:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"27994:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"28002:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"27990:3:46"},"nodeType":"YulFunctionCall","src":"27990:14:46"},{"hexValue":"4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572","kind":"string","nodeType":"YulLiteral","src":"28006:34:46","type":"","value":"Ownable: caller is not the owner"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"27983:6:46"},"nodeType":"YulFunctionCall","src":"27983:58:46"},"nodeType":"YulExpressionStatement","src":"27983:58:46"}]},"name":"store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"27964:6:46","type":""}],"src":"27866:182:46"},{"body":{"nodeType":"YulBlock","src":"28160:142:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"28182:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"28190:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28178:3:46"},"nodeType":"YulFunctionCall","src":"28178:14:46"},{"hexValue":"5769746e6574526571756573744d616c6c6561626c65426173653a207769746e","kind":"string","nodeType":"YulLiteral","src":"28194:34:46","type":"","value":"WitnetRequestMalleableBase: witn"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28171:6:46"},"nodeType":"YulFunctionCall","src":"28171:58:46"},"nodeType":"YulExpressionStatement","src":"28171:58:46"},{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"28250:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"28258:2:46","type":"","value":"32"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28246:3:46"},"nodeType":"YulFunctionCall","src":"28246:15:46"},{"hexValue":"657373696e6720636f6c6c61746572616c2062656c6f77203120574954","kind":"string","nodeType":"YulLiteral","src":"28263:31:46","type":"","value":"essing collateral below 1 WIT"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28239:6:46"},"nodeType":"YulFunctionCall","src":"28239:56:46"},"nodeType":"YulExpressionStatement","src":"28239:56:46"}]},"name":"store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"28152:6:46","type":""}],"src":"28054:248:46"},{"body":{"nodeType":"YulBlock","src":"28414:67:46","statements":[{"expression":{"arguments":[{"arguments":[{"name":"memPtr","nodeType":"YulIdentifier","src":"28436:6:46"},{"kind":"number","nodeType":"YulLiteral","src":"28444:1:46","type":"","value":"0"}],"functionName":{"name":"add","nodeType":"YulIdentifier","src":"28432:3:46"},"nodeType":"YulFunctionCall","src":"28432:14:46"},{"hexValue":"436c6f6e61626c653a20435245415445206661696c6564","kind":"string","nodeType":"YulLiteral","src":"28448:25:46","type":"","value":"Clonable: CREATE failed"}],"functionName":{"name":"mstore","nodeType":"YulIdentifier","src":"28425:6:46"},"nodeType":"YulFunctionCall","src":"28425:49:46"},"nodeType":"YulExpressionStatement","src":"28425:49:46"}]},"name":"store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e","nodeType":"YulFunctionDefinition","parameters":[{"name":"memPtr","nodeType":"YulTypedName","src":"28406:6:46","type":""}],"src":"28308:173:46"},{"body":{"nodeType":"YulBlock","src":"28530:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"28587:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"28596:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"28599:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"28589:6:46"},"nodeType":"YulFunctionCall","src":"28589:12:46"},"nodeType":"YulExpressionStatement","src":"28589:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28553:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28578:5:46"}],"functionName":{"name":"cleanup_t_address","nodeType":"YulIdentifier","src":"28560:17:46"},"nodeType":"YulFunctionCall","src":"28560:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"28550:2:46"},"nodeType":"YulFunctionCall","src":"28550:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"28543:6:46"},"nodeType":"YulFunctionCall","src":"28543:43:46"},"nodeType":"YulIf","src":"28540:63:46"}]},"name":"validator_revert_t_address","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28523:5:46","type":""}],"src":"28487:122:46"},{"body":{"nodeType":"YulBlock","src":"28658:79:46","statements":[{"body":{"nodeType":"YulBlock","src":"28715:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"28724:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"28727:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"28717:6:46"},"nodeType":"YulFunctionCall","src":"28717:12:46"},"nodeType":"YulExpressionStatement","src":"28717:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28681:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28706:5:46"}],"functionName":{"name":"cleanup_t_bytes32","nodeType":"YulIdentifier","src":"28688:17:46"},"nodeType":"YulFunctionCall","src":"28688:24:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"28678:2:46"},"nodeType":"YulFunctionCall","src":"28678:35:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"28671:6:46"},"nodeType":"YulFunctionCall","src":"28671:43:46"},"nodeType":"YulIf","src":"28668:63:46"}]},"name":"validator_revert_t_bytes32","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28651:5:46","type":""}],"src":"28615:122:46"},{"body":{"nodeType":"YulBlock","src":"28785:78:46","statements":[{"body":{"nodeType":"YulBlock","src":"28841:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"28850:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"28853:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"28843:6:46"},"nodeType":"YulFunctionCall","src":"28843:12:46"},"nodeType":"YulExpressionStatement","src":"28843:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28808:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28832:5:46"}],"functionName":{"name":"cleanup_t_uint64","nodeType":"YulIdentifier","src":"28815:16:46"},"nodeType":"YulFunctionCall","src":"28815:23:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"28805:2:46"},"nodeType":"YulFunctionCall","src":"28805:34:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"28798:6:46"},"nodeType":"YulFunctionCall","src":"28798:42:46"},"nodeType":"YulIf","src":"28795:62:46"}]},"name":"validator_revert_t_uint64","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28778:5:46","type":""}],"src":"28743:120:46"},{"body":{"nodeType":"YulBlock","src":"28910:77:46","statements":[{"body":{"nodeType":"YulBlock","src":"28965:16:46","statements":[{"expression":{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"28974:1:46","type":"","value":"0"},{"kind":"number","nodeType":"YulLiteral","src":"28977:1:46","type":"","value":"0"}],"functionName":{"name":"revert","nodeType":"YulIdentifier","src":"28967:6:46"},"nodeType":"YulFunctionCall","src":"28967:12:46"},"nodeType":"YulExpressionStatement","src":"28967:12:46"}]},"condition":{"arguments":[{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28933:5:46"},{"arguments":[{"name":"value","nodeType":"YulIdentifier","src":"28956:5:46"}],"functionName":{"name":"cleanup_t_uint8","nodeType":"YulIdentifier","src":"28940:15:46"},"nodeType":"YulFunctionCall","src":"28940:22:46"}],"functionName":{"name":"eq","nodeType":"YulIdentifier","src":"28930:2:46"},"nodeType":"YulFunctionCall","src":"28930:33:46"}],"functionName":{"name":"iszero","nodeType":"YulIdentifier","src":"28923:6:46"},"nodeType":"YulFunctionCall","src":"28923:41:46"},"nodeType":"YulIf","src":"28920:61:46"}]},"name":"validator_revert_t_uint8","nodeType":"YulFunctionDefinition","parameters":[{"name":"value","nodeType":"YulTypedName","src":"28903:5:46","type":""}],"src":"28869:118:46"}]},"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_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\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    function abi_decode_t_bytes32_fromMemory(offset, end) -> value {\n        value := mload(offset)\n        validator_revert_t_bytes32(value)\n    }\n\n    // bytes\n    function abi_decode_t_bytes_memory_ptr(offset, end) -> array {\n        if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\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_uint64(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint64(value)\n    }\n\n    function abi_decode_t_uint8(offset, end) -> value {\n        value := calldataload(offset)\n        validator_revert_t_uint8(value)\n    }\n\n    function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes32(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes32_fromMemory(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_bytes32_fromMemory(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_bytes_memory_ptr(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := calldataload(add(headStart, 0))\n            if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n            value0 := abi_decode_t_bytes_memory_ptr(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint64(headStart, dataEnd) -> value0 {\n        if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint64t_uint64(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_uint64(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_decode_tuple_t_uint8t_uint8(headStart, dataEnd) -> value0, value1 {\n        if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n        {\n\n            let offset := 0\n\n            value0 := abi_decode_t_uint8(add(headStart, offset), dataEnd)\n        }\n\n        {\n\n            let offset := 32\n\n            value1 := abi_decode_t_uint8(add(headStart, offset), dataEnd)\n        }\n\n    }\n\n    function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n        mstore(pos, cleanup_t_address(value))\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_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_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> end {\n        let length := array_length_t_bytes_memory_ptr(value)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        copy_memory_to_memory(add(value, 0x20), pos, length)\n        end := add(pos, length)\n    }\n\n    // bytes -> bytes\n    function abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_fromStack(value, pos) -> ret {\n        let slotValue := sload(value)\n        let length := extract_byte_array_length(slotValue)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_fromStack(pos, length)\n        switch and(slotValue, 1)\n        case 0 {\n            // short byte array\n            mstore(pos, and(slotValue, not(0xff)))\n            ret := add(pos, 0x20)\n        }\n        case 1 {\n            // long byte array\n            let dataPos := array_dataslot_t_bytes_storage(value)\n            let i := 0\n            for { } lt(i, length) { i := add(i, 0x20) } {\n                mstore(add(pos, i), sload(dataPos))\n                dataPos := add(dataPos, 1)\n            }\n            ret := add(pos, i)\n        }\n    }\n\n    // bytes -> bytes\n    function abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value, pos) -> ret {\n        let slotValue := sload(value)\n        let length := extract_byte_array_length(slotValue)\n        pos := array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length)\n        switch and(slotValue, 1)\n        case 0 {\n            // short byte array\n            mstore(pos, and(slotValue, not(0xff)))\n            ret := add(pos, length)\n        }\n        case 1 {\n            // long byte array\n            let dataPos := array_dataslot_t_bytes_storage(value)\n            let i := 0\n            for { } lt(i, length) { i := add(i, 0x20) } {\n                mstore(add(pos, i), sload(dataPos))\n                dataPos := add(dataPos, 1)\n            }\n            ret := add(pos, length)\n        }\n    }\n\n    function abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack(value, pos) {\n        mstore(pos, convert_t_contract$_Clonable_$7948_to_t_address(value))\n    }\n\n    function abi_encode_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 38)\n        store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n        store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 37)\n        store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 24)\n        store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 47)\n        store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 60)\n        store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n        store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(pos)\n        end := add(pos, 32)\n    }\n\n    function abi_encode_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 61)\n        store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e(pos)\n        end := add(pos, 64)\n    }\n\n    function abi_encode_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack(pos) -> end {\n        pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 23)\n        store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e(pos)\n        end := add(pos, 32)\n    }\n\n    // struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams -> struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams\n    function abi_encode_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_fromStack(value, pos)  {\n        let tail := add(pos, 0xa0)\n\n        {\n            // numWitnesses\n\n            let memberValue0 := mload(add(value, 0x00))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x00))\n        }\n\n        {\n            // minWitnessingConsensus\n\n            let memberValue0 := mload(add(value, 0x20))\n            abi_encode_t_uint8_to_t_uint8(memberValue0, add(pos, 0x20))\n        }\n\n        {\n            // witnessingCollateral\n\n            let memberValue0 := mload(add(value, 0x40))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0x40))\n        }\n\n        {\n            // witnessingReward\n\n            let memberValue0 := mload(add(value, 0x60))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0x60))\n        }\n\n        {\n            // witnessingUnitaryFee\n\n            let memberValue0 := mload(add(value, 0x80))\n            abi_encode_t_uint64_to_t_uint64(memberValue0, add(pos, 0x80))\n        }\n\n    }\n\n    function abi_encode_t_uint128_to_t_uint128_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint128(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint64_to_t_uint64_fromStack(value, pos) {\n        mstore(pos, cleanup_t_uint64(value))\n    }\n\n    function abi_encode_t_uint8_to_t_uint8(value, pos) {\n        mstore(pos, cleanup_t_uint8(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_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value0) -> end {\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        end := pos\n    }\n\n    function abi_encode_tuple_packed_t_bytes_storage_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__to_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed(pos , value5, value4, value3, value2, value1, value0) -> end {\n\n        pos := abi_encode_t_bytes_storage_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value0,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value1,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value2,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value3,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value4,  pos)\n\n        pos := abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack(value5,  pos)\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_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__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_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_bytes_storage__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_storage_to_t_bytes_memory_ptr_fromStack(value0,  tail)\n\n    }\n\n    function abi_encode_tuple_t_contract$_Clonable_$7948__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_contract$_Clonable_$7948_to_t_address_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe__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_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18__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_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf__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_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf__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_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff__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_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae__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_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe__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_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e__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_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_stringliteral_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e__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_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e_to_t_string_memory_ptr_fromStack( tail)\n\n    }\n\n    function abi_encode_tuple_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr__to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 160)\n\n        abi_encode_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_to_t_struct$_WitnetRequestWitnessingParams_$8370_memory_ptr_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_uint128__to_t_uint128__fromStack_reversed(headStart , value0) -> tail {\n        tail := add(headStart, 32)\n\n        abi_encode_t_uint128_to_t_uint128_fromStack(value0,  add(headStart, 0))\n\n    }\n\n    function abi_encode_tuple_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__to_t_uint8_t_uint8_t_uint64_t_uint64_t_uint64__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n        tail := add(headStart, 160)\n\n        abi_encode_t_uint8_to_t_uint8_fromStack(value0,  add(headStart, 0))\n\n        abi_encode_t_uint8_to_t_uint8_fromStack(value1,  add(headStart, 32))\n\n        abi_encode_t_uint64_to_t_uint64_fromStack(value2,  add(headStart, 64))\n\n        abi_encode_t_uint64_to_t_uint64_fromStack(value3,  add(headStart, 96))\n\n        abi_encode_t_uint64_to_t_uint64_fromStack(value4,  add(headStart, 128))\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_bytes_storage(ptr) -> data {\n        data := ptr\n\n        mstore(0, ptr)\n        data := keccak256(0, 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 array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack(pos, length) -> updated_pos {\n        updated_pos := pos\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_uint64(x, y) -> sum {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n\n        // overflow, if x > (maxValue - y)\n        if gt(x, sub(0xffffffffffffffff, y)) { panic_error_0x11() }\n\n        sum := add(x, y)\n    }\n\n    function checked_mul_t_uint64(x, y) -> product {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(y)\n\n        // overflow, if x != 0 and y > (maxValue / x)\n        if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffff, x))) { panic_error_0x11() }\n\n        product := mul(x, y)\n    }\n\n    function checked_sub_t_uint64(x, y) -> diff {\n        x := cleanup_t_uint64(x)\n        y := cleanup_t_uint64(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_uint128(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffffffffffffffffffff)\n    }\n\n    function cleanup_t_uint160(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n    }\n\n    function cleanup_t_uint64(value) -> cleaned {\n        cleaned := and(value, 0xffffffffffffffff)\n    }\n\n    function cleanup_t_uint8(value) -> cleaned {\n        cleaned := and(value, 0xff)\n    }\n\n    function convert_t_contract$_Clonable_$7948_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_address(value)\n    }\n\n    function convert_t_uint160_to_t_address(value) -> converted {\n        converted := convert_t_uint160_to_t_uint160(value)\n    }\n\n    function convert_t_uint160_to_t_uint160(value) -> converted {\n        converted := cleanup_t_uint160(value)\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_uint64(value) -> ret {\n        value := cleanup_t_uint64(value)\n        if eq(value, 0xffffffffffffffff) { panic_error_0x11() }\n        ret := add(value, 1)\n    }\n\n    function panic_error_0x01() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x01)\n        revert(0, 0x24)\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_0x22() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x22)\n        revert(0, 0x24)\n    }\n\n    function panic_error_0x32() {\n        mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n        mstore(4, 0x32)\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 revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n        revert(0, 0)\n    }\n\n    function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n        revert(0, 0)\n    }\n\n    function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n        revert(0, 0)\n    }\n\n    function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n        revert(0, 0)\n    }\n\n    function round_up_to_mul_of_32(value) -> result {\n        result := and(add(value, 31), not(31))\n    }\n\n    function store_literal_in_memory_245f15ff17f551913a7a18385165551503906a406f905ac1c2437281a7cd0cfe(memPtr) {\n\n        mstore(add(memPtr, 0), \"Ownable: new owner is the zero a\")\n\n        mstore(add(memPtr, 32), \"ddress\")\n\n    }\n\n    function store_literal_in_memory_253d8212e2277e094a57b61f36d157bc381d508b106be0b6fcbbffe41d33bf18(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: witn\")\n\n        mstore(add(memPtr, 32), \"essing consensus out of range\")\n\n    }\n\n    function store_literal_in_memory_3028811fe85e0826df2c92b176dbfdf22979bf926c81a0f3926f04f1a7204abf(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: no r\")\n\n        mstore(add(memPtr, 32), \"eward\")\n\n    }\n\n    function store_literal_in_memory_62587aaa6633c4a97ccbc8d0b840d369355afe237fccc225f604c3b177c5bfdf(memPtr) {\n\n        mstore(add(memPtr, 0), \"Clonable: CREATE2 failed\")\n\n    }\n\n    function store_literal_in_memory_66186945941ba062abde9fee4c56b73a3a06cc46fda579ce7fa6afa4e66f30ff(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: alre\")\n\n        mstore(add(memPtr, 32), \"ady initialized\")\n\n    }\n\n    function store_literal_in_memory_8766685b734726cea7263646f850b1addbdca2b7fd3f271ce6444480f6af6aae(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: numb\")\n\n        mstore(add(memPtr, 32), \"er of witnesses out of range\")\n\n    }\n\n    function store_literal_in_memory_9924ebdf1add33d25d4ef888e16131f0a5687b0580a36c21b5c301a6c462effe(memPtr) {\n\n        mstore(add(memPtr, 0), \"Ownable: caller is not the owner\")\n\n    }\n\n    function store_literal_in_memory_f7f6bfd48e19a6009adf6f0a02998771391f9b142a1219c74df79defc2a7495e(memPtr) {\n\n        mstore(add(memPtr, 0), \"WitnetRequestMalleableBase: witn\")\n\n        mstore(add(memPtr, 32), \"essing collateral below 1 WIT\")\n\n    }\n\n    function store_literal_in_memory_f8cfba6ed78807628b270dde5bcd8cbfca4a14a698a8ee8cad29a9a244bc492e(memPtr) {\n\n        mstore(add(memPtr, 0), \"Clonable: CREATE failed\")\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_uint64(value) {\n        if iszero(eq(value, cleanup_t_uint64(value))) { revert(0, 0) }\n    }\n\n    function validator_revert_t_uint8(value) {\n        if iszero(eq(value, cleanup_t_uint8(value))) { revert(0, 0) }\n    }\n\n}\n","id":46,"language":"Yul","name":"#utility.yul"}],"immutableReferences":{"7850":[{"length":32,"start":1577},{"length":32,"start":1937},{"length":32,"start":3874},{"length":32,"start":4138},{"length":32,"start":5235},{"length":32,"start":5500}]},"linkReferences":{},"object":"608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063daaa360c11610071578063daaa360c14610287578063ef53d97a146102b7578063f0940002146102d5578063f2fde38b146102f3578063ff21c3ba1461030f57610116565b80638da5cb5b14610213578063a04daef014610231578063d196c2e31461024f578063d9b9a9611461026b57610116565b806352d1902d116100e957806352d1902d146101915780636f2ddd93146101af5780637104ddb2146101cd578063715018a6146101eb5780638a481dad146101f557610116565b806309bd5a601461011b57806309ed460714610139578063439fab911461015757806348f9b83114610173575b600080fd5b61012361032b565b6040516101309190612113565b60405180910390f35b61014161033e565b60405161014e9190612172565b60405180910390f35b610171600480360381019061016c9190611be5565b61042d565b005b61017b61046e565b60405161018891906122ad565b60405180910390f35b610199610561565b6040516101a69190612113565b60405180910390f35b6101b761058c565b6040516101c4919061212e565b60405180910390f35b6101d5610627565b6040516101e291906120dd565b60405180910390f35b6101f361064b565b005b6101fd6106d3565b60405161020a91906122c8565b60405180910390f35b61021b61075a565b60405161022891906120dd565b60405180910390f35b61023961078d565b60405161024691906120f8565b60405180910390f35b61026960048036038101906102649190611c9b565b6107e4565b005b61028560048036038101906102809190611c2e565b610903565b005b6102a1600480360381019061029c9190611b8b565b610a1c565b6040516102ae9190612172565b60405180910390f35b6102bf610b0e565b6040516102cc91906122c8565b60405180910390f35b6102dd610b66565b6040516102ea919061212e565b60405180910390f35b61030d60048036038101906103089190611b5e565b610c01565b005b61032960048036038101906103249190611c5b565b610cf9565b005b6000610335610ef5565b60030154905090565b6000610348610f1d565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab9161036e610ef5565b6001016040518263ffffffff1660e01b815260040161038d9190612150565b600060405180830381600087803b1580156103a757600080fd5b505af11580156103bb573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b81526004016103f891906120dd565b600060405180830381600087803b15801561041257600080fd5b505af1158015610426573d6000803e3d6000fd5b5050505090565b61046b6040518060400160405280601181526020017f0a0f120508021a01801a0210022202100b000000000000000000000000000000815250610e26565b50565b61047661198f565b61047e610ef5565b6004016040518060a00160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016000820160019054906101000a900460ff1660ff1660ff1681526020016000820160029054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201600a9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681526020016000820160129054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681525050905090565b60007f851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c260001b905090565b6060610596610ef5565b60010180546105a49061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546105d09061258a565b801561061d5780601f106105f25761010080835404028352916020019161061d565b820191906000526020600020905b81548152906001019060200180831161060057829003601f168201915b5050505050905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6106536110a6565b73ffffffffffffffffffffffffffffffffffffffff1661067161075a565b73ffffffffffffffffffffffffffffffffffffffff16146106c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106be9061224d565b60405180910390fd5b6106d160006110ae565b565b6000806106de610ef5565b600401905080600001600a9054906101000a900467ffffffffffffffff168160000160129054906101000a900467ffffffffffffffff1660026107219190612417565b61072b91906123d9565b8160000160009054906101000a900460ff1660ff1661074a9190612417565b67ffffffffffffffff1691505090565b6000610764610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff161415905090565b6107ec6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661080a61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610860576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108579061224d565b60405180910390fd5b600061086a610ef5565b6004019050828160000160006101000a81548160ff021916908360ff160217905550818160000160016101000a81548160ff021916908360ff1602179055506108fe83838360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b505050565b61090b6110a6565b73ffffffffffffffffffffffffffffffffffffffff1661092961075a565b73ffffffffffffffffffffffffffffffffffffffff161461097f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109769061224d565b60405180910390fd5b6000610989610ef5565b6004019050818160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610a188160000160009054906101000a900460ff168260000160019054906101000a900460ff168484600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b6000610a278261146e565b90508073ffffffffffffffffffffffffffffffffffffffff1663439fab91610a4d610ef5565b6001016040518263ffffffff1660e01b8152600401610a6c9190612150565b600060405180830381600087803b158015610a8657600080fd5b505af1158015610a9a573d6000803e3d6000fd5b505050508073ffffffffffffffffffffffffffffffffffffffff1663f2fde38b336040518263ffffffff1660e01b8152600401610ad791906120dd565b600060405180830381600087803b158015610af157600080fd5b505af1158015610b05573d6000803e3d6000fd5b50505050919050565b600080610b19610ef5565b60040190508060000160029054906101000a900467ffffffffffffffff168160000160009054906101000a900460ff1660ff16610b569190612417565b67ffffffffffffffff1691505090565b6060610b70610ef5565b6002018054610b7e9061258a565b80601f0160208091040260200160405190810160405280929190818152602001828054610baa9061258a565b8015610bf75780601f10610bcc57610100808354040283529160200191610bf7565b820191906000526020600020905b815481529060010190602001808311610bda57829003601f168201915b5050505050905090565b610c096110a6565b73ffffffffffffffffffffffffffffffffffffffff16610c2761075a565b73ffffffffffffffffffffffffffffffffffffffff1614610c7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c749061224d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ced576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ce49061218d565b60405180910390fd5b610cf6816110ae565b50565b610d016110a6565b73ffffffffffffffffffffffffffffffffffffffff16610d1f61075a565b73ffffffffffffffffffffffffffffffffffffffff1614610d75576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6c9061224d565b60405180910390fd5b6000610d7f610ef5565b60040190508281600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550818160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550610e218160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff168686611186565b505050565b6000610e30610ef5565b6001018054610e3e9061258a565b905014610e80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e779061220d565b60405180910390fd5b610e89816115fa565b610e99610e946110a6565b6110ae565b50565b6000600282604051610eae919061206e565b602060405180830381855afa158015610ecb573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190610eee9190611bb8565b9050919050565b60007f375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7905090565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f0925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611011576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110089061228d565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a45090565b600033905090565b60006110b8610ef5565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816110e7610ef5565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008267ffffffffffffffff16116111d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111ca906121cd565b60405180910390fd5b60018560ff16101580156111eb5750607f8560ff1611155b61122a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112219061222d565b60405180910390fd5b60338460ff1610158015611242575060638460ff1611155b611281576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611278906121ad565b60405180910390fd5b633b9aca008367ffffffffffffffff1610156112d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c99061226d565b60405180910390fd5b6112da610ef5565b6001016112eb601060f81b8461177d565b6112f9601860f81b88611978565b611307602060f81b8561177d565b611315602860f81b89611978565b611323603060f81b8961177d565b60405160200161133896959493929190612085565b60405160208183030381529060405261134f610ef5565b60020190805190602001906113659291906119e2565b50611402611371610ef5565b600201805461137f9061258a565b80601f01602080910402602001604051908101604052809291908181526020018280546113ab9061258a565b80156113f85780601f106113cd576101008083540402835291602001916113f8565b820191906000526020600020905b8154815290600101906020018083116113db57829003601f168201915b5050505050610e9c565b61140a610ef5565b600301819055503373ffffffffffffffffffffffffffffffffffffffff167f897a395aeb2699d9730b6377870654a5c371d6bb6dc4486cfc5c80eeafd095b0868686868660405161145f9594939291906122e3565b60405180910390a25050505050565b6000807f000000000000000000000000000000000000000000000000000000000000000090506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160601b60148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152836037826000f5925050600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155a906121ed565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167ff376596be5039d6b2fb36fead4c8a370eae426e790a869be8db074ab608cc24860405160405180910390a450919050565b600081511161160c5761160b61261e565b5b80611615610ef5565b600101908051906020019061162b9291906119e2565b506000611636610ef5565b600401905060028160000160006101000a81548160ff021916908360ff16021790555060338160000160016101000a81548160ff021916908360ff160217905550633b9aca008160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506207a12081600001600a6101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506203d0908160000160126101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506117798160000160009054906101000a900460ff168260000160019054906101000a900460ff168360000160029054906101000a900467ffffffffffffffff1684600001600a9054906101000a900467ffffffffffffffff168560000160129054906101000a900467ffffffffffffffff16611186565b5050565b606060008290506000600290505b607f8267ffffffffffffffff1611156117c35760078267ffffffffffffffff16901c91506001816117bc91906123d9565b905061178b565b60008167ffffffffffffffff1667ffffffffffffffff8111156117e9576117e86126da565b5b6040519080825280601f01601f19166020018201604052801561181b5781602001600182028036833780820191505090505b5090508492508581600081518110611836576118356126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600190505b8267ffffffffffffffff168167ffffffffffffffff16101561190257607f841660801760f81b828267ffffffffffffffff16815181106118af576118ae6126ab565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060078467ffffffffffffffff16901c935080806118fa906125ed565b91505061186c565b50607f60f81b816001846119169190612459565b67ffffffffffffffff1681518110611931576119306126ab565b5b6020010181815160f81c60f81b169150907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535080935050505092915050565b6060611987838360ff1661177d565b905092915050565b6040518060a00160405280600060ff168152602001600060ff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff168152602001600067ffffffffffffffff1681525090565b8280546119ee9061258a565b90600052602060002090601f016020900481019282611a105760008555611a57565b82601f10611a2957805160ff1916838001178555611a57565b82800160010185558215611a57579182015b82811115611a56578251825591602001919060010190611a3b565b5b509050611a649190611a68565b5090565b5b80821115611a81576000816000905550600101611a69565b5090565b6000611a98611a938461235b565b612336565b905082815260208101848484011115611ab457611ab361270e565b5b611abf848285612548565b509392505050565b600081359050611ad681612983565b92915050565b600081359050611aeb8161299a565b92915050565b600081519050611b008161299a565b92915050565b600082601f830112611b1b57611b1a612709565b5b8135611b2b848260208601611a85565b91505092915050565b600081359050611b43816129b1565b92915050565b600081359050611b58816129c8565b92915050565b600060208284031215611b7457611b73612718565b5b6000611b8284828501611ac7565b91505092915050565b600060208284031215611ba157611ba0612718565b5b6000611baf84828501611adc565b91505092915050565b600060208284031215611bce57611bcd612718565b5b6000611bdc84828501611af1565b91505092915050565b600060208284031215611bfb57611bfa612718565b5b600082013567ffffffffffffffff811115611c1957611c18612713565b5b611c2584828501611b06565b91505092915050565b600060208284031215611c4457611c43612718565b5b6000611c5284828501611b34565b91505092915050565b60008060408385031215611c7257611c71612718565b5b6000611c8085828601611b34565b9250506020611c9185828601611b34565b9150509250929050565b60008060408385031215611cb257611cb1612718565b5b6000611cc085828601611b49565b9250506020611cd185828601611b49565b9150509250929050565b611ce48161248d565b82525050565b611cf38161249f565b82525050565b611d02816124ab565b82525050565b6000611d13826123a1565b611d1d81856123ac565b9350611d2d818560208601612557565b611d368161271d565b840191505092915050565b6000611d4c826123a1565b611d5681856123bd565b9350611d66818560208601612557565b80840191505092915050565b60008154611d7f8161258a565b611d8981866123ac565b94506001821660008114611da45760018114611db657611de9565b60ff1983168652602086019350611de9565b611dbf8561238c565b60005b83811015611de157815481890152600182019150602081019050611dc2565b808801955050505b50505092915050565b60008154611dff8161258a565b611e0981866123bd565b94506001821660008114611e245760018114611e3557611e68565b60ff19831686528186019350611e68565b611e3e8561238c565b60005b83811015611e6057815481890152600182019150602081019050611e41565b838801955050505b50505092915050565b611e7a81612512565b82525050565b6000611e8d6026836123c8565b9150611e988261272e565b604082019050919050565b6000611eb0603d836123c8565b9150611ebb8261277d565b604082019050919050565b6000611ed36025836123c8565b9150611ede826127cc565b604082019050919050565b6000611ef66018836123c8565b9150611f018261281b565b602082019050919050565b6000611f19602f836123c8565b9150611f2482612844565b604082019050919050565b6000611f3c603c836123c8565b9150611f4782612893565b604082019050919050565b6000611f5f6020836123c8565b9150611f6a826128e2565b602082019050919050565b6000611f82603d836123c8565b9150611f8d8261290b565b604082019050919050565b6000611fa56017836123c8565b9150611fb08261295a565b602082019050919050565b60a082016000820151611fd16000850182612050565b506020820151611fe46020850182612050565b506040820151611ff76040850182612032565b50606082015161200a6060850182612032565b50608082015161201d6080850182612032565b50505050565b61202c816124b5565b82525050565b61203b816124f1565b82525050565b61204a816124f1565b82525050565b61205981612505565b82525050565b61206881612505565b82525050565b600061207a8284611d41565b915081905092915050565b60006120918289611df2565b915061209d8288611d41565b91506120a98287611d41565b91506120b58286611d41565b91506120c18285611d41565b91506120cd8284611d41565b9150819050979650505050505050565b60006020820190506120f26000830184611cdb565b92915050565b600060208201905061210d6000830184611cea565b92915050565b60006020820190506121286000830184611cf9565b92915050565b600060208201905081810360008301526121488184611d08565b905092915050565b6000602082019050818103600083015261216a8184611d72565b905092915050565b60006020820190506121876000830184611e71565b92915050565b600060208201905081810360008301526121a681611e80565b9050919050565b600060208201905081810360008301526121c681611ea3565b9050919050565b600060208201905081810360008301526121e681611ec6565b9050919050565b6000602082019050818103600083015261220681611ee9565b9050919050565b6000602082019050818103600083015261222681611f0c565b9050919050565b6000602082019050818103600083015261224681611f2f565b9050919050565b6000602082019050818103600083015261226681611f52565b9050919050565b6000602082019050818103600083015261228681611f75565b9050919050565b600060208201905081810360008301526122a681611f98565b9050919050565b600060a0820190506122c26000830184611fbb565b92915050565b60006020820190506122dd6000830184612023565b92915050565b600060a0820190506122f8600083018861205f565b612305602083018761205f565b6123126040830186612041565b61231f6060830185612041565b61232c6080830184612041565b9695505050505050565b6000612340612351565b905061234c82826125bc565b919050565b6000604051905090565b600067ffffffffffffffff821115612376576123756126da565b5b61237f8261271d565b9050602081019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600082825260208201905092915050565b600081905092915050565b600082825260208201905092915050565b60006123e4826124f1565b91506123ef836124f1565b92508267ffffffffffffffff0382111561240c5761240b61264d565b5b828201905092915050565b6000612422826124f1565b915061242d836124f1565b92508167ffffffffffffffff048311821515161561244e5761244d61264d565b5b828202905092915050565b6000612464826124f1565b915061246f836124f1565b9250828210156124825761248161264d565b5b828203905092915050565b6000612498826124d1565b9050919050565b60008115159050919050565b6000819050919050565b60006fffffffffffffffffffffffffffffffff82169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600067ffffffffffffffff82169050919050565b600060ff82169050919050565b600061251d82612524565b9050919050565b600061252f82612536565b9050919050565b6000612541826124d1565b9050919050565b82818337600083830152505050565b60005b8381101561257557808201518184015260208101905061255a565b83811115612584576000848401525b50505050565b600060028204905060018216806125a257607f821691505b602082108114156125b6576125b561267c565b5b50919050565b6125c58261271d565b810181811067ffffffffffffffff821117156125e4576125e36126da565b5b80604052505050565b60006125f8826124f1565b915067ffffffffffffffff8214156126135761261261264d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6e73656e737573206f7574206f662072616e6765000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e6f207260008201527f6577617264000000000000000000000000000000000000000000000000000000602082015250565b7f436c6f6e61626c653a2043524541544532206661696c65640000000000000000600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a20616c726560008201527f61647920696e697469616c697a65640000000000000000000000000000000000602082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a206e756d6260008201527f6572206f66207769746e6573736573206f7574206f662072616e676500000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5769746e6574526571756573744d616c6c6561626c65426173653a207769746e60008201527f657373696e6720636f6c6c61746572616c2062656c6f77203120574954000000602082015250565b7f436c6f6e61626c653a20435245415445206661696c6564000000000000000000600082015250565b61298c8161248d565b811461299757600080fd5b50565b6129a3816124ab565b81146129ae57600080fd5b50565b6129ba816124f1565b81146129c557600080fd5b50565b6129d181612505565b81146129dc57600080fd5b5056fea264697066735822122018d3be95fdcbd8bc6f0654dc2eb3dcdc04b923b60a7642bd2f454937f279d0f064736f6c63430008070033","opcodes":"PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8DA5CB5B GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xDAAA360C GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xDAAA360C EQ PUSH2 0x287 JUMPI DUP1 PUSH4 0xEF53D97A EQ PUSH2 0x2B7 JUMPI DUP1 PUSH4 0xF0940002 EQ PUSH2 0x2D5 JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2F3 JUMPI DUP1 PUSH4 0xFF21C3BA EQ PUSH2 0x30F JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x213 JUMPI DUP1 PUSH4 0xA04DAEF0 EQ PUSH2 0x231 JUMPI DUP1 PUSH4 0xD196C2E3 EQ PUSH2 0x24F JUMPI DUP1 PUSH4 0xD9B9A961 EQ PUSH2 0x26B JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x52D1902D GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x52D1902D EQ PUSH2 0x191 JUMPI DUP1 PUSH4 0x6F2DDD93 EQ PUSH2 0x1AF JUMPI DUP1 PUSH4 0x7104DDB2 EQ PUSH2 0x1CD JUMPI DUP1 PUSH4 0x715018A6 EQ PUSH2 0x1EB JUMPI DUP1 PUSH4 0x8A481DAD EQ PUSH2 0x1F5 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x9BD5A60 EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x9ED4607 EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x439FAB91 EQ PUSH2 0x157 JUMPI DUP1 PUSH4 0x48F9B831 EQ PUSH2 0x173 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x32B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x141 PUSH2 0x33E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x14E SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x171 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x16C SWAP2 SWAP1 PUSH2 0x1BE5 JUMP JUMPDEST PUSH2 0x42D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x17B PUSH2 0x46E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x188 SWAP2 SWAP1 PUSH2 0x22AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x199 PUSH2 0x561 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1A6 SWAP2 SWAP1 PUSH2 0x2113 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1B7 PUSH2 0x58C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C4 SWAP2 SWAP1 PUSH2 0x212E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1D5 PUSH2 0x627 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1E2 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1F3 PUSH2 0x64B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1FD PUSH2 0x6D3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x20A SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x21B PUSH2 0x75A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x228 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x239 PUSH2 0x78D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x246 SWAP2 SWAP1 PUSH2 0x20F8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x269 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x264 SWAP2 SWAP1 PUSH2 0x1C9B JUMP JUMPDEST PUSH2 0x7E4 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x285 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x280 SWAP2 SWAP1 PUSH2 0x1C2E JUMP JUMPDEST PUSH2 0x903 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2A1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x29C SWAP2 SWAP1 PUSH2 0x1B8B JUMP JUMPDEST PUSH2 0xA1C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AE SWAP2 SWAP1 PUSH2 0x2172 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2BF PUSH2 0xB0E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2CC SWAP2 SWAP1 PUSH2 0x22C8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2DD PUSH2 0xB66 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2EA SWAP2 SWAP1 PUSH2 0x212E 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 0x1B5E JUMP JUMPDEST PUSH2 0xC01 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x329 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x324 SWAP2 SWAP1 PUSH2 0x1C5B JUMP JUMPDEST PUSH2 0xCF9 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 PUSH2 0x335 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x348 PUSH2 0xF1D JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0x36E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x38D SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3A7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x3BB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x3F8 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x412 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x426 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP1 JUMP JUMPDEST PUSH2 0x46B PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x11 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0xA0F120508021A01801A0210022202100B000000000000000000000000000000 DUP2 MSTORE POP PUSH2 0xE26 JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x476 PUSH2 0x198F JUMP JUMPDEST PUSH2 0x47E PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP3 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x851D0A92A3AD30295BEF33AFC69D6874779826B7789386B336E22621365ED2C2 PUSH1 0x0 SHL SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0x596 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x5A4 SWAP1 PUSH2 0x258A 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 0x5D0 SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x61D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5F2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x61D 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 0x600 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH32 0x0 DUP2 JUMP JUMPDEST PUSH2 0x653 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x671 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x6C7 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x6BE SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x6D1 PUSH1 0x0 PUSH2 0x10AE JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0x6DE PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH1 0x2 PUSH2 0x721 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH2 0x72B SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0x74A SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x764 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x7EC PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x80A PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x860 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x857 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x86A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x8FE DUP4 DUP4 DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH2 0x90B PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x929 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0x97F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x976 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x989 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xA18 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP5 DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xA27 DUP3 PUSH2 0x146E JUMP JUMPDEST SWAP1 POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x439FAB91 PUSH2 0xA4D PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA6C SWAP2 SWAP1 PUSH2 0x2150 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xA86 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xA9A JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP DUP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xF2FDE38B CALLER PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x20DD JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xAF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xB05 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH2 0xB19 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP1 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND PUSH2 0xB56 SWAP2 SWAP1 PUSH2 0x2417 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP2 POP POP SWAP1 JUMP JUMPDEST PUSH1 0x60 PUSH2 0xB70 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0xB7E SWAP1 PUSH2 0x258A 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 0xBAA SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0xBF7 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xBCC JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xBF7 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 0xBDA JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0xC09 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xC27 PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xC7D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xC74 SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0xCED JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xCE4 SWAP1 PUSH2 0x218D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xCF6 DUP2 PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0xD01 PUSH2 0x10A6 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xD1F PUSH2 0x75A JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xD75 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD6C SWAP1 PUSH2 0x224D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH2 0xD7F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP DUP3 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0xE21 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP7 DUP7 PUSH2 0x1186 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xE30 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0xE3E SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 POP EQ PUSH2 0xE80 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE77 SWAP1 PUSH2 0x220D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xE89 DUP2 PUSH2 0x15FA JUMP JUMPDEST PUSH2 0xE99 PUSH2 0xE94 PUSH2 0x10A6 JUMP JUMPDEST PUSH2 0x10AE JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 PUSH1 0x40 MLOAD PUSH2 0xEAE SWAP2 SWAP1 PUSH2 0x206E JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0xECB JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST 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 0xEEE SWAP2 SWAP1 PUSH2 0x1BB8 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x375930152E1D0D102998BE6E496B0CEE86C9ECD0EFEF01014ECFF169B17DFBA7 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE PUSH1 0x37 DUP2 PUSH1 0x0 CREATE SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1011 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1008 SWAP1 PUSH2 0x228D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x10B8 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH2 0x10E7 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT PUSH2 0x11D3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x11CA SWAP1 PUSH2 0x21CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP6 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x11EB JUMPI POP PUSH1 0x7F DUP6 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x122A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1221 SWAP1 PUSH2 0x222D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x33 DUP5 PUSH1 0xFF AND LT ISZERO DUP1 ISZERO PUSH2 0x1242 JUMPI POP PUSH1 0x63 DUP5 PUSH1 0xFF AND GT ISZERO JUMPDEST PUSH2 0x1281 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1278 SWAP1 PUSH2 0x21AD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH4 0x3B9ACA00 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x12D2 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12C9 SWAP1 PUSH2 0x226D JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x12DA PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD PUSH2 0x12EB PUSH1 0x10 PUSH1 0xF8 SHL DUP5 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x12F9 PUSH1 0x18 PUSH1 0xF8 SHL DUP9 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1307 PUSH1 0x20 PUSH1 0xF8 SHL DUP6 PUSH2 0x177D JUMP JUMPDEST PUSH2 0x1315 PUSH1 0x28 PUSH1 0xF8 SHL DUP10 PUSH2 0x1978 JUMP JUMPDEST PUSH2 0x1323 PUSH1 0x30 PUSH1 0xF8 SHL DUP10 PUSH2 0x177D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x1338 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2085 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x134F PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x1365 SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH2 0x1402 PUSH2 0x1371 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x137F SWAP1 PUSH2 0x258A 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 0x13AB SWAP1 PUSH2 0x258A JUMP JUMPDEST DUP1 ISZERO PUSH2 0x13F8 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x13CD JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x13F8 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 0x13DB JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP PUSH2 0xE9C JUMP JUMPDEST PUSH2 0x140A PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x3 ADD DUP2 SWAP1 SSTORE POP CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x897A395AEB2699D9730B6377870654A5C371D6BB6DC4486CFC5C80EEAFD095B0 DUP7 DUP7 DUP7 DUP7 DUP7 PUSH1 0x40 MLOAD PUSH2 0x145F SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x22E3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG2 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH32 0x0 SWAP1 POP PUSH1 0x40 MLOAD PUSH32 0x3D602D80600A3D3981F3363D3D373D3D3D363D73000000000000000000000000 DUP2 MSTORE DUP2 PUSH1 0x60 SHL PUSH1 0x14 DUP3 ADD MSTORE PUSH32 0x5AF43D82803E903D91602B57FD5BF30000000000000000000000000000000000 PUSH1 0x28 DUP3 ADD MSTORE DUP4 PUSH1 0x37 DUP3 PUSH1 0x0 CREATE2 SWAP3 POP POP PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO PUSH2 0x1563 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x155A SWAP1 PUSH2 0x21ED JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xF376596BE5039D6B2FB36FEAD4C8A370EAE426E790A869BE8DB074AB608CC248 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG4 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD GT PUSH2 0x160C JUMPI PUSH2 0x160B PUSH2 0x261E JUMP JUMPDEST JUMPDEST DUP1 PUSH2 0x1615 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x162B SWAP3 SWAP2 SWAP1 PUSH2 0x19E2 JUMP JUMPDEST POP PUSH1 0x0 PUSH2 0x1636 PUSH2 0xEF5 JUMP JUMPDEST PUSH1 0x4 ADD SWAP1 POP PUSH1 0x2 DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x33 DUP2 PUSH1 0x0 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH4 0x3B9ACA00 DUP2 PUSH1 0x0 ADD PUSH1 0x2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x7A120 DUP2 PUSH1 0x0 ADD PUSH1 0xA PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH3 0x3D090 DUP2 PUSH1 0x0 ADD PUSH1 0x12 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH8 0xFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH8 0xFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1779 DUP2 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP3 PUSH1 0x0 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP4 PUSH1 0x0 ADD PUSH1 0x2 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP5 PUSH1 0x0 ADD PUSH1 0xA SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x0 ADD PUSH1 0x12 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH2 0x1186 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 DUP3 SWAP1 POP PUSH1 0x0 PUSH1 0x2 SWAP1 POP JUMPDEST PUSH1 0x7F DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND GT ISZERO PUSH2 0x17C3 JUMPI PUSH1 0x7 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP2 POP PUSH1 0x1 DUP2 PUSH2 0x17BC SWAP2 SWAP1 PUSH2 0x23D9 JUMP JUMPDEST SWAP1 POP PUSH2 0x178B JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x17E9 JUMPI PUSH2 0x17E8 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x1F ADD PUSH1 0x1F NOT AND PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x181B JUMPI DUP2 PUSH1 0x20 ADD PUSH1 0x1 DUP3 MUL DUP1 CALLDATASIZE DUP4 CALLDATACOPY DUP1 DUP3 ADD SWAP2 POP POP SWAP1 POP JUMPDEST POP SWAP1 POP DUP5 SWAP3 POP DUP6 DUP2 PUSH1 0x0 DUP2 MLOAD DUP2 LT PUSH2 0x1836 JUMPI PUSH2 0x1835 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x0 PUSH1 0x1 SWAP1 POP JUMPDEST DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 PUSH8 0xFFFFFFFFFFFFFFFF AND LT ISZERO PUSH2 0x1902 JUMPI PUSH1 0x7F DUP5 AND PUSH1 0x80 OR PUSH1 0xF8 SHL DUP3 DUP3 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x18AF JUMPI PUSH2 0x18AE PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP PUSH1 0x7 DUP5 PUSH8 0xFFFFFFFFFFFFFFFF AND SWAP1 SHR SWAP4 POP DUP1 DUP1 PUSH2 0x18FA SWAP1 PUSH2 0x25ED JUMP JUMPDEST SWAP2 POP POP PUSH2 0x186C JUMP JUMPDEST POP PUSH1 0x7F PUSH1 0xF8 SHL DUP2 PUSH1 0x1 DUP5 PUSH2 0x1916 SWAP2 SWAP1 PUSH2 0x2459 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MLOAD DUP2 LT PUSH2 0x1931 JUMPI PUSH2 0x1930 PUSH2 0x26AB JUMP JUMPDEST JUMPDEST PUSH1 0x20 ADD ADD DUP2 DUP2 MLOAD PUSH1 0xF8 SHR PUSH1 0xF8 SHL AND SWAP2 POP SWAP1 PUSH31 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF NOT AND SWAP1 DUP2 PUSH1 0x0 BYTE SWAP1 MSTORE8 POP DUP1 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1987 DUP4 DUP4 PUSH1 0xFF AND PUSH2 0x177D JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH1 0xA0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH1 0xFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x19EE SWAP1 PUSH2 0x258A JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1A10 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1A29 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1A57 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1A57 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1A56 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1A3B JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1A64 SWAP2 SWAP1 PUSH2 0x1A68 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1A81 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1A69 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1A98 PUSH2 0x1A93 DUP5 PUSH2 0x235B JUMP JUMPDEST PUSH2 0x2336 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x1AB4 JUMPI PUSH2 0x1AB3 PUSH2 0x270E JUMP JUMPDEST JUMPDEST PUSH2 0x1ABF DUP5 DUP3 DUP6 PUSH2 0x2548 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AD6 DUP2 PUSH2 0x2983 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1AEB DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP PUSH2 0x1B00 DUP2 PUSH2 0x299A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1B1B JUMPI PUSH2 0x1B1A PUSH2 0x2709 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x1B2B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x1A85 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B43 DUP2 PUSH2 0x29B1 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x1B58 DUP2 PUSH2 0x29C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1B74 JUMPI PUSH2 0x1B73 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1B82 DUP5 DUP3 DUP6 ADD PUSH2 0x1AC7 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BA1 JUMPI PUSH2 0x1BA0 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BAF DUP5 DUP3 DUP6 ADD PUSH2 0x1ADC JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BCE JUMPI PUSH2 0x1BCD PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1BDC DUP5 DUP3 DUP6 ADD PUSH2 0x1AF1 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1BFB JUMPI PUSH2 0x1BFA PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x1C19 JUMPI PUSH2 0x1C18 PUSH2 0x2713 JUMP JUMPDEST JUMPDEST PUSH2 0x1C25 DUP5 DUP3 DUP6 ADD PUSH2 0x1B06 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1C44 JUMPI PUSH2 0x1C43 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C52 DUP5 DUP3 DUP6 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1C72 JUMPI PUSH2 0x1C71 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1C80 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1C91 DUP6 DUP3 DUP7 ADD PUSH2 0x1B34 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1CB2 JUMPI PUSH2 0x1CB1 PUSH2 0x2718 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x1CC0 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x1CD1 DUP6 DUP3 DUP7 ADD PUSH2 0x1B49 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x1CE4 DUP2 PUSH2 0x248D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1CF3 DUP2 PUSH2 0x249F JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x1D02 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D13 DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D1D DUP2 DUP6 PUSH2 0x23AC JUMP JUMPDEST SWAP4 POP PUSH2 0x1D2D DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST PUSH2 0x1D36 DUP2 PUSH2 0x271D JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1D4C DUP3 PUSH2 0x23A1 JUMP JUMPDEST PUSH2 0x1D56 DUP2 DUP6 PUSH2 0x23BD JUMP JUMPDEST SWAP4 POP PUSH2 0x1D66 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x2557 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1D7F DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1D89 DUP2 DUP7 PUSH2 0x23AC JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1DA4 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1DB6 JUMPI PUSH2 0x1DE9 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE PUSH1 0x20 DUP7 ADD SWAP4 POP PUSH2 0x1DE9 JUMP JUMPDEST PUSH2 0x1DBF DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1DE1 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1DC2 JUMP JUMPDEST DUP1 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SLOAD PUSH2 0x1DFF DUP2 PUSH2 0x258A JUMP JUMPDEST PUSH2 0x1E09 DUP2 DUP7 PUSH2 0x23BD JUMP JUMPDEST SWAP5 POP PUSH1 0x1 DUP3 AND PUSH1 0x0 DUP2 EQ PUSH2 0x1E24 JUMPI PUSH1 0x1 DUP2 EQ PUSH2 0x1E35 JUMPI PUSH2 0x1E68 JUMP JUMPDEST PUSH1 0xFF NOT DUP4 AND DUP7 MSTORE DUP2 DUP7 ADD SWAP4 POP PUSH2 0x1E68 JUMP JUMPDEST PUSH2 0x1E3E DUP6 PUSH2 0x238C JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1E60 JUMPI DUP2 SLOAD DUP2 DUP10 ADD MSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1E41 JUMP JUMPDEST DUP4 DUP9 ADD SWAP6 POP POP POP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x1E7A DUP2 PUSH2 0x2512 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1E8D PUSH1 0x26 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1E98 DUP3 PUSH2 0x272E JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EB0 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EBB DUP3 PUSH2 0x277D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1ED3 PUSH1 0x25 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1EDE DUP3 PUSH2 0x27CC JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1EF6 PUSH1 0x18 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F01 DUP3 PUSH2 0x281B JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F19 PUSH1 0x2F DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F24 DUP3 PUSH2 0x2844 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F3C PUSH1 0x3C DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F47 DUP3 PUSH2 0x2893 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F5F PUSH1 0x20 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F6A DUP3 PUSH2 0x28E2 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F82 PUSH1 0x3D DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1F8D DUP3 PUSH2 0x290B JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1FA5 PUSH1 0x17 DUP4 PUSH2 0x23C8 JUMP JUMPDEST SWAP2 POP PUSH2 0x1FB0 DUP3 PUSH2 0x295A JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xA0 DUP3 ADD PUSH1 0x0 DUP3 ADD MLOAD PUSH2 0x1FD1 PUSH1 0x0 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x20 DUP3 ADD MLOAD PUSH2 0x1FE4 PUSH1 0x20 DUP6 ADD DUP3 PUSH2 0x2050 JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD PUSH2 0x1FF7 PUSH1 0x40 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD PUSH2 0x200A PUSH1 0x60 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD PUSH2 0x201D PUSH1 0x80 DUP6 ADD DUP3 PUSH2 0x2032 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH2 0x202C DUP2 PUSH2 0x24B5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x203B DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x204A DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2059 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x2068 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x207A DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2091 DUP3 DUP10 PUSH2 0x1DF2 JUMP JUMPDEST SWAP2 POP PUSH2 0x209D DUP3 DUP9 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20A9 DUP3 DUP8 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20B5 DUP3 DUP7 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20C1 DUP3 DUP6 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP PUSH2 0x20CD DUP3 DUP5 PUSH2 0x1D41 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20F2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CDB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x210D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CEA JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2128 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1CF9 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2148 DUP2 DUP5 PUSH2 0x1D08 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 0x216A DUP2 DUP5 PUSH2 0x1D72 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2187 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1E71 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21A6 DUP2 PUSH2 0x1E80 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 0x21C6 DUP2 PUSH2 0x1EA3 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 0x21E6 DUP2 PUSH2 0x1EC6 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 0x2206 DUP2 PUSH2 0x1EE9 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 0x2226 DUP2 PUSH2 0x1F0C 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 0x2246 DUP2 PUSH2 0x1F2F 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 0x2266 DUP2 PUSH2 0x1F52 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 0x2286 DUP2 PUSH2 0x1F75 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 0x22A6 DUP2 PUSH2 0x1F98 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22C2 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x1FBB JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x22DD PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2023 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x22F8 PUSH1 0x0 DUP4 ADD DUP9 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2305 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x205F JUMP JUMPDEST PUSH2 0x2312 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x231F PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x2041 JUMP JUMPDEST PUSH2 0x232C PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2041 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2340 PUSH2 0x2351 JUMP JUMPDEST SWAP1 POP PUSH2 0x234C DUP3 DUP3 PUSH2 0x25BC 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 0x2376 JUMPI PUSH2 0x2375 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST PUSH2 0x237F DUP3 PUSH2 0x271D JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP DUP2 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 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 DUP2 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 0x23E4 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x23EF DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 PUSH8 0xFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x240C JUMPI PUSH2 0x240B PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2422 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x242D DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP2 PUSH8 0xFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x244E JUMPI PUSH2 0x244D PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2464 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH2 0x246F DUP4 PUSH2 0x24F1 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x2482 JUMPI PUSH2 0x2481 PUSH2 0x264D JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2498 DUP3 PUSH2 0x24D1 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 PUSH16 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x251D DUP3 PUSH2 0x2524 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x252F DUP3 PUSH2 0x2536 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2541 DUP3 PUSH2 0x24D1 JUMP JUMPDEST 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 0x2575 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x255A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x2584 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 0x25A2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x25B6 JUMPI PUSH2 0x25B5 PUSH2 0x267C JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x25C5 DUP3 PUSH2 0x271D JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x25E4 JUMPI PUSH2 0x25E3 PUSH2 0x26DA JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x25F8 DUP3 PUSH2 0x24F1 JUMP JUMPDEST SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x2613 JUMPI PUSH2 0x2612 PUSH2 0x264D JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x1 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 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 0x32 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 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A206E6577206F776E657220697320746865207A65726F2061 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6464726573730000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6E73656E737573206F7574206F662072616E6765000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E6F2072 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6577617264000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A2043524541544532206661696C65640000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A20616C7265 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x61647920696E697469616C697A65640000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A206E756D62 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6572206F66207769746E6573736573206F7574206F662072616E676500000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x4F776E61626C653A2063616C6C6572206973206E6F7420746865206F776E6572 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x5769746E6574526571756573744D616C6C6561626C65426173653A207769746E PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x657373696E6720636F6C6C61746572616C2062656C6F77203120574954000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH32 0x436C6F6E61626C653A20435245415445206661696C6564000000000000000000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH2 0x298C DUP2 PUSH2 0x248D JUMP JUMPDEST DUP2 EQ PUSH2 0x2997 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29A3 DUP2 PUSH2 0x24AB JUMP JUMPDEST DUP2 EQ PUSH2 0x29AE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29BA DUP2 PUSH2 0x24F1 JUMP JUMPDEST DUP2 EQ PUSH2 0x29C5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH2 0x29D1 DUP2 PUSH2 0x2505 JUMP JUMPDEST DUP2 EQ PUSH2 0x29DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 XOR 0xD3 0xBE SWAP6 REVERT 0xCB 0xD8 0xBC PUSH16 0x654DC2EB3DCDC04B923B60A7642BD2F GASLIMIT 0x49 CALLDATACOPY CALLCODE PUSH26 0xD0F064736F6C6343000807003300000000000000000000000000 ","sourceMap":"110:387:45:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2076:96:44;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6419:258;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;346:149:45;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5730:150:44;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9085:276;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4807:120;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;310:45:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1600:101:38;;;:::i;:::-;;5389:265:44;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8245:132;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;522:134:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4091:551:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2310:490;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7075:302;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5037:239;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1892:109;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1836:198:38;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3172:557:44;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2076:96;2124:7;2150:10;:8;:10::i;:::-;:15;;;2143:22;;2076:96;:::o;6419:258::-;6493:18;6539:13;:11;:13::i;:::-;6527:25;;6562:9;:20;;;6583:10;:8;:10::i;:::-;:19;;6562:41;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6629:9;6613:45;;;6659:10;6613:57;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6419:258;:::o;346:149:45:-;434:54;451:36;;;;;;;;;;;;;;;;;434:16;:54::i;:::-;346:149;:::o;5730:150:44:-;5797:36;;:::i;:::-;5856:10;:8;:10::i;:::-;:17;;5849:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5730:150;:::o;9085:276::-;9174:7;9278:66;9197:157;;;;9085:276;:::o;4807:120::-;4866:12;4901:10;:8;:10::i;:::-;:19;;4894:26;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4807:120;:::o;310:45:34:-;;;:::o;1600:101:38:-;1210:12;:10;:12::i;:::-;1199:23;;:7;:5;:7::i;:::-;:23;;;1191:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1664:30:::1;1691:1;1664:18;:30::i;:::-;1600:101::o:0;5389:265:44:-;5458:7;5481:45;5529:10;:8;:10::i;:::-;:17;;5481:65;;5622:7;:24;;;;;;;;;;;;5591:7;:28;;;;;;;;;;;;5587:1;:32;;;;:::i;:::-;:59;;;;:::i;:::-;5563:7;:20;;;;;;;;;;;;:84;;;;;;:::i;:::-;5556:91;;;;;5389:265;:::o;8245:132::-;8324:7;8354:10;:8;:10::i;:::-;:16;;;;;;;;;;;;8347:23;;8245:132;:::o;522:134:34:-;577:4;635;618:21;;626:4;618:21;;;;597:52;;522:134;:::o;4091:551:44:-;1210:12:38;:10;:12::i;:::-;1199:23;;:7;:5;:7::i;:::-;:23;;;1191:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4235:45:44::1;4283:10;:8;:10::i;:::-;:17;;4235:65;;4333:13;4310:7;:20;;;:36;;;;;;;;;;;;;;;;;;4389:23;4356:7;:30;;;:56;;;;;;;;;;;;;;;;;;4422:213;4453:13;4480:23;4517:7;:28;;;;;;;;;;;;4559:7;:24;;;;;;;;;;;;4597:7;:28;;;;;;;;;;;;4422:17;:213::i;:::-;4225:417;4091:551:::0;;:::o;2310:490::-;1210:12:38;:10;:12::i;:::-;1199:23;;:7;:5;:7::i;:::-;:23;;;1191:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2436:45:44::1;2484:10;:8;:10::i;:::-;:17;;2436:65;;2542:21;2511:7;:28;;;:52;;;;;;;;;;;;;;;;;;2573:220;2604:7;:20;;;;;;;;;;;;2638:7;:30;;;;;;;;;;;;2682:21;2717:7;:24;;;;;;;;;;;;2755:7;:28;;;;;;;;;;;;2573:17;:220::i;:::-;2426:374;2310:490:::0;:::o;7075:302::-;7175:18;7221:31;7246:5;7221:24;:31::i;:::-;7209:43;;7262:9;:20;;;7283:10;:8;:10::i;:::-;:19;;7262:41;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7329:9;7313:45;;;7359:10;7313:57;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7075:302;;;:::o;5037:239::-;5113:7;5136:45;5184:10;:8;:10::i;:::-;:17;;5136:65;;5241:7;:28;;;;;;;;;;;;5218:7;:20;;;;;;;;;;;;:51;;;;;;:::i;:::-;5211:58;;;;;5037:239;:::o;1892:109::-;1944:12;1975:10;:8;:10::i;:::-;:19;;1968:26;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1892:109;:::o;1836:198:38:-;1210:12;:10;:12::i;:::-;1199:23;;:7;:5;:7::i;:::-;:23;;;1191:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1944:1:::1;1924:22;;:8;:22;;;;1916:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;1999:28;2018:8;1999:18;:28::i;:::-;1836:198:::0;:::o;3172:557:44:-;1210:12:38;:10;:12::i;:::-;1199:23;;:7;:5;:7::i;:::-;:23;;;1191:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;3318:45:44::1;3366:10;:8;:10::i;:::-;:17;;3318:65;;3420:17;3393:7;:24;;;:44;;;;;;;;;;;;;;;;;;3478:21;3447:7;:28;;;:52;;;;;;;;;;;;;;;;;;3509:213;3540:7;:20;;;;;;;;;;;;3574:7;:30;;;;;;;;;;;;3618:7;:28;;;;;;;;;;;;3660:17;3691:21;3509:17;:213::i;:::-;3308:421;3172:557:::0;;:::o;7678:270::-;7814:1;7784:10;:8;:10::i;:::-;:19;;:26;;;;;:::i;:::-;;;:31;7776:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;7877:22;7889:9;7877:11;:22::i;:::-;7909:32;7928:12;:10;:12::i;:::-;7909:18;:32::i;:::-;7678:270;:::o;298:111:29:-;359:7;385:17;392:9;385:17;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;378:24;;298:111;;;:::o;12167:343:44:-;12242:46;12428:66;12327:167;;12167:343;:::o;1102:870:34:-;1159:18;1193:13;1209:4;1193:20;;1295:4;1289:11;1383:66;1378:3;1371:79;1562:5;1556:4;1552:16;1545:4;1540:3;1536:14;1529:40;1661:66;1654:4;1649:3;1645:14;1638:90;1805:4;1800:3;1797:1;1790:20;1777:33;;1232:588;1875:1;1845:32;;1853:9;1845:32;;;;1837:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1955:9;1920:45;;1948:4;1920:45;;1927:10;1920:45;;;;;;;;;;;;1183:789;1102:870;:::o;506:96:35:-;559:7;585:10;578:17;;506:96;:::o;8463:236:44:-;8565:16;8584:10;:8;:10::i;:::-;:16;;;;;;;;;;;;8565:35;;8629:8;8610:10;:8;:10::i;:::-;:16;;;:27;;;;;;;;;;;;;;;;;;8683:8;8652:40;;8673:8;8652:40;;;;;;;;;;;;8555:144;8463:236;:::o;10535:1550::-;10858:1;10838:17;:21;;;10817:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;10970:1;10953:13;:18;;;;:42;;;;;10992:3;10975:13;:20;;;;10953:42;10932:149;;;;;;;;;;;;:::i;:::-;;;;;;;;;11139:2;11112:23;:29;;;;:62;;;;;11172:2;11145:23;:29;;;;11112:62;11091:170;;;;;;;;;;;;:::i;:::-;;;;;;;;;11317:7;11292:21;:32;;;;11271:140;;;;;;;;;;;;:::i;:::-;;;;;;;;;11474:10;:8;:10::i;:::-;:19;;11507:46;11528:4;11521:12;;11535:17;11507:13;:46::i;:::-;11567:41;11587:4;11580:12;;11594:13;11567:12;:41::i;:::-;11622:42;11636:4;11622:42;;11642:21;11622:13;:42::i;:::-;11678:43;11691:4;11678:43;;11697:23;11678:12;:43::i;:::-;11735:42;11749:4;11735:42;;11755:21;11735:13;:42::i;:::-;11444:343;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;11422:10;:8;:10::i;:::-;:19;;:365;;;;;;;;;;;;:::i;:::-;;11815:26;:10;:8;:10::i;:::-;:19;;:24;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:26::i;:::-;11797:10;:8;:10::i;:::-;:15;;:44;;;;11893:10;11856:222;;;11917:13;11944:23;11981:21;12016:17;12047:21;11856:222;;;;;;;;;;:::i;:::-;;;;;;;;10535:1550;;;;;:::o;2520:840:34:-;2603:18;2637:13;2653:4;2637:20;;2739:4;2733:11;2769:66;2764:3;2757:79;2948:5;2942:4;2938:16;2931:4;2926:3;2922:14;2915:40;3047:66;3040:4;3035:3;3031:14;3024:90;3199:5;3193:4;3188:3;3185:1;3177:28;3164:41;;2676:539;3262:1;3232:32;;3240:9;3232:32;;;;3224:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;3343:9;3308:45;;3336:4;3308:45;;3315:10;3308:45;;;;;;;;;;;;2627:733;2520:840;;;:::o;9679:756:44:-;9781:1;9762:9;:16;:20;9755:28;;;;:::i;:::-;;9815:9;9793:10;:8;:10::i;:::-;:19;;:31;;;;;;;;;;;;:::i;:::-;;9835:45;9883:10;:8;:10::i;:::-;:17;;9835:65;;9933:1;9910:7;:20;;;:24;;;;;;;;;;;;;;;;;;9977:2;9944:7;:30;;;:35;;;;;;;;;;;;;;;;;;10020:7;9989;:28;;;:38;;;;;;;;;;;;;;;;;;10078:11;10051:7;:24;;;:38;;;;;;;;;;;;;;;;;;10152:12;10121:7;:28;;;:43;;;;;;;;;;;;;;;;;;10201:227;10232:7;:20;;;;;;;;;;;;10266:7;:30;;;;;;;;;;;;10310:7;:28;;;;;;;;;;;;10352:7;:24;;;;;;;;;;;;10390:7;:28;;;;;;;;;;;;10201:17;:227::i;:::-;9745:690;9679:756;:::o;12727:798::-;12809:12;12982:10;12995:1;12982:14;;13006:15;13024:1;13006:19;;13035:85;13048:4;13042:3;:10;;;13035:85;;;13081:1;13074:3;:8;;;;13068:14;;13108:1;13096:13;;;;;:::i;:::-;;;13035:85;;;13129:16;13158:8;13148:19;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13129:38;;13183:1;13177:7;;13203:1;13194:3;13198:1;13194:6;;;;;;;;:::i;:::-;;;;;:10;;;;;;;;;;;13219:8;13230:1;13219:12;;13214:202;13237:8;13233:12;;:1;:12;;;13214:202;;;13371:4;13365:3;:10;13352:4;:24;13345:32;;13336:3;13340:1;13336:6;;;;;;;;;;:::i;:::-;;;;;:41;;;;;;;;;;;13404:1;13397:3;:8;;;;13391:14;;13247:3;;;;;:::i;:::-;;;;13214:202;;;;13494:4;13473:25;;:3;13488:1;13477:8;:12;;;;:::i;:::-;13473:17;;;;;;;;;;:::i;:::-;;;;;:25;;;;;;;;;;;;;;;;;;;;;13515:3;13508:10;;;;;12727:798;;;;:::o;13654:149::-;13734:12;13769:27;13783:1;13793;13786:9;;13769:13;:27::i;:::-;13762:34;;13654:149;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:410:46:-;84:5;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:112;;;280:79;;:::i;:::-;249:112;370:41;404:6;399:3;394;370:41;:::i;:::-;90:327;7:410;;;;;:::o;423:139::-;469:5;507:6;494:20;485:29;;523:33;550:5;523:33;:::i;:::-;423:139;;;;:::o;568:::-;614:5;652:6;639:20;630:29;;668:33;695:5;668:33;:::i;:::-;568:139;;;;:::o;713:143::-;770:5;801:6;795:13;786:22;;817:33;844:5;817:33;:::i;:::-;713:143;;;;:::o;875:338::-;930:5;979:3;972:4;964:6;960:17;956:27;946:122;;987:79;;:::i;:::-;946:122;1104:6;1091:20;1129:78;1203:3;1195:6;1188:4;1180:6;1176:17;1129:78;:::i;:::-;1120:87;;936:277;875:338;;;;:::o;1219:137::-;1264:5;1302:6;1289:20;1280:29;;1318:32;1344:5;1318:32;:::i;:::-;1219:137;;;;:::o;1362:135::-;1406:5;1444:6;1431:20;1422:29;;1460:31;1485:5;1460:31;:::i;:::-;1362:135;;;;:::o;1503:329::-;1562:6;1611:2;1599:9;1590:7;1586:23;1582:32;1579:119;;;1617:79;;:::i;:::-;1579:119;1737:1;1762:53;1807:7;1798:6;1787:9;1783:22;1762:53;:::i;:::-;1752:63;;1708:117;1503:329;;;;:::o;1838:::-;1897:6;1946:2;1934:9;1925:7;1921:23;1917:32;1914:119;;;1952:79;;:::i;:::-;1914:119;2072:1;2097:53;2142:7;2133:6;2122:9;2118:22;2097:53;:::i;:::-;2087:63;;2043:117;1838:329;;;;:::o;2173:351::-;2243:6;2292:2;2280:9;2271:7;2267:23;2263:32;2260:119;;;2298:79;;:::i;:::-;2260:119;2418:1;2443:64;2499:7;2490:6;2479:9;2475:22;2443:64;:::i;:::-;2433:74;;2389:128;2173:351;;;;:::o;2530:507::-;2598:6;2647:2;2635:9;2626:7;2622:23;2618:32;2615:119;;;2653:79;;:::i;:::-;2615:119;2801:1;2790:9;2786:17;2773:31;2831:18;2823:6;2820:30;2817:117;;;2853:79;;:::i;:::-;2817:117;2958:62;3012:7;3003:6;2992:9;2988:22;2958:62;:::i;:::-;2948:72;;2744:286;2530:507;;;;:::o;3043:327::-;3101:6;3150:2;3138:9;3129:7;3125:23;3121:32;3118:119;;;3156:79;;:::i;:::-;3118:119;3276:1;3301:52;3345:7;3336:6;3325:9;3321:22;3301:52;:::i;:::-;3291:62;;3247:116;3043:327;;;;:::o;3376:470::-;3442:6;3450;3499:2;3487:9;3478:7;3474:23;3470:32;3467:119;;;3505:79;;:::i;:::-;3467:119;3625:1;3650:52;3694:7;3685:6;3674:9;3670:22;3650:52;:::i;:::-;3640:62;;3596:116;3751:2;3777:52;3821:7;3812:6;3801:9;3797:22;3777:52;:::i;:::-;3767:62;;3722:117;3376:470;;;;;:::o;3852:466::-;3916:6;3924;3973:2;3961:9;3952:7;3948:23;3944:32;3941:119;;;3979:79;;:::i;:::-;3941:119;4099:1;4124:51;4167:7;4158:6;4147:9;4143:22;4124:51;:::i;:::-;4114:61;;4070:115;4224:2;4250:51;4293:7;4284:6;4273:9;4269:22;4250:51;:::i;:::-;4240:61;;4195:116;3852:466;;;;;:::o;4324:118::-;4411:24;4429:5;4411:24;:::i;:::-;4406:3;4399:37;4324:118;;:::o;4448:109::-;4529:21;4544:5;4529:21;:::i;:::-;4524:3;4517:34;4448:109;;:::o;4563:118::-;4650:24;4668:5;4650:24;:::i;:::-;4645:3;4638:37;4563:118;;:::o;4687:360::-;4773:3;4801:38;4833:5;4801:38;:::i;:::-;4855:70;4918:6;4913:3;4855:70;:::i;:::-;4848:77;;4934:52;4979:6;4974:3;4967:4;4960:5;4956:16;4934:52;:::i;:::-;5011:29;5033:6;5011:29;:::i;:::-;5006:3;5002:39;4995:46;;4777:270;4687:360;;;;:::o;5053:373::-;5157:3;5185:38;5217:5;5185:38;:::i;:::-;5239:88;5320:6;5315:3;5239:88;:::i;:::-;5232:95;;5336:52;5381:6;5376:3;5369:4;5362:5;5358:16;5336:52;:::i;:::-;5413:6;5408:3;5404:16;5397:23;;5161:265;5053:373;;;;:::o;5454:798::-;5537:3;5574:5;5568:12;5603:36;5629:9;5603:36;:::i;:::-;5655:70;5718:6;5713:3;5655:70;:::i;:::-;5648:77;;5756:1;5745:9;5741:17;5772:1;5767:135;;;;5916:1;5911:335;;;;5734:512;;5767:135;5851:4;5847:9;5836;5832:25;5827:3;5820:38;5887:4;5882:3;5878:14;5871:21;;5767:135;;5911:335;5978:37;6009:5;5978:37;:::i;:::-;6037:1;6051:154;6065:6;6062:1;6059:13;6051:154;;;6139:7;6133:14;6129:1;6124:3;6120:11;6113:35;6189:1;6180:7;6176:15;6165:26;;6087:4;6084:1;6080:12;6075:17;;6051:154;;;6234:1;6229:3;6225:11;6218:18;;5918:328;;5734:512;;5541:711;;5454:798;;;;:::o;6280:841::-;6381:3;6418:5;6412:12;6447:36;6473:9;6447:36;:::i;:::-;6499:88;6580:6;6575:3;6499:88;:::i;:::-;6492:95;;6618:1;6607:9;6603:17;6634:1;6629:137;;;;6780:1;6775:340;;;;6596:519;;6629:137;6713:4;6709:9;6698;6694:25;6689:3;6682:38;6749:6;6744:3;6740:16;6733:23;;6629:137;;6775:340;6842:37;6873:5;6842:37;:::i;:::-;6901:1;6915:154;6929:6;6926:1;6923:13;6915:154;;;7003:7;6997:14;6993:1;6988:3;6984:11;6977:35;7053:1;7044:7;7040:15;7029:26;;6951:4;6948:1;6944:12;6939:17;;6915:154;;;7098:6;7093:3;7089:16;7082:23;;6782:333;;6596:519;;6385:736;;6280:841;;;;:::o;7127:165::-;7231:54;7279:5;7231:54;:::i;:::-;7226:3;7219:67;7127:165;;:::o;7298:366::-;7440:3;7461:67;7525:2;7520:3;7461:67;:::i;:::-;7454:74;;7537:93;7626:3;7537:93;:::i;:::-;7655:2;7650:3;7646:12;7639:19;;7298:366;;;:::o;7670:::-;7812:3;7833:67;7897:2;7892:3;7833:67;:::i;:::-;7826:74;;7909:93;7998:3;7909:93;:::i;:::-;8027:2;8022:3;8018:12;8011:19;;7670:366;;;:::o;8042:::-;8184:3;8205:67;8269:2;8264:3;8205:67;:::i;:::-;8198:74;;8281:93;8370:3;8281:93;:::i;:::-;8399:2;8394:3;8390:12;8383:19;;8042:366;;;:::o;8414:::-;8556:3;8577:67;8641:2;8636:3;8577:67;:::i;:::-;8570:74;;8653:93;8742:3;8653:93;:::i;:::-;8771:2;8766:3;8762:12;8755:19;;8414:366;;;:::o;8786:::-;8928:3;8949:67;9013:2;9008:3;8949:67;:::i;:::-;8942:74;;9025:93;9114:3;9025:93;:::i;:::-;9143:2;9138:3;9134:12;9127:19;;8786:366;;;:::o;9158:::-;9300:3;9321:67;9385:2;9380:3;9321:67;:::i;:::-;9314:74;;9397:93;9486:3;9397:93;:::i;:::-;9515:2;9510:3;9506:12;9499:19;;9158:366;;;:::o;9530:::-;9672:3;9693:67;9757:2;9752:3;9693:67;:::i;:::-;9686:74;;9769:93;9858:3;9769:93;:::i;:::-;9887:2;9882:3;9878:12;9871:19;;9530:366;;;:::o;9902:::-;10044:3;10065:67;10129:2;10124:3;10065:67;:::i;:::-;10058:74;;10141:93;10230:3;10141:93;:::i;:::-;10259:2;10254:3;10250:12;10243:19;;9902:366;;;:::o;10274:::-;10416:3;10437:67;10501:2;10496:3;10437:67;:::i;:::-;10430:74;;10513:93;10602:3;10513:93;:::i;:::-;10631:2;10626:3;10622:12;10615:19;;10274:366;;;:::o;10784:1129::-;10975:4;10970:3;10966:14;11070:4;11063:5;11059:16;11053:23;11089:59;11142:4;11137:3;11133:14;11119:12;11089:59;:::i;:::-;10990:168;11258:4;11251:5;11247:16;11241:23;11277:59;11330:4;11325:3;11321:14;11307:12;11277:59;:::i;:::-;11168:178;11444:4;11437:5;11433:16;11427:23;11463:61;11518:4;11513:3;11509:14;11495:12;11463:61;:::i;:::-;11356:178;11628:4;11621:5;11617:16;11611:23;11647:61;11702:4;11697:3;11693:14;11679:12;11647:61;:::i;:::-;11544:174;11816:4;11809:5;11805:16;11799:23;11835:61;11890:4;11885:3;11881:14;11867:12;11835:61;:::i;:::-;11728:178;10944:969;10784:1129;;:::o;11919:118::-;12006:24;12024:5;12006:24;:::i;:::-;12001:3;11994:37;11919:118;;:::o;12043:105::-;12118:23;12135:5;12118:23;:::i;:::-;12113:3;12106:36;12043:105;;:::o;12154:115::-;12239:23;12256:5;12239:23;:::i;:::-;12234:3;12227:36;12154:115;;:::o;12275:102::-;12348:22;12364:5;12348:22;:::i;:::-;12343:3;12336:35;12275:102;;:::o;12383:112::-;12466:22;12482:5;12466:22;:::i;:::-;12461:3;12454:35;12383:112;;:::o;12501:271::-;12631:3;12653:93;12742:3;12733:6;12653:93;:::i;:::-;12646:100;;12763:3;12756:10;;12501:271;;;;:::o;12778:1045::-;13135:3;13157:90;13243:3;13234:6;13157:90;:::i;:::-;13150:97;;13264:93;13353:3;13344:6;13264:93;:::i;:::-;13257:100;;13374:93;13463:3;13454:6;13374:93;:::i;:::-;13367:100;;13484:93;13573:3;13564:6;13484:93;:::i;:::-;13477:100;;13594:93;13683:3;13674:6;13594:93;:::i;:::-;13587:100;;13704:93;13793:3;13784:6;13704:93;:::i;:::-;13697:100;;13814:3;13807:10;;12778:1045;;;;;;;;;:::o;13829:222::-;13922:4;13960:2;13949:9;13945:18;13937:26;;13973:71;14041:1;14030:9;14026:17;14017:6;13973:71;:::i;:::-;13829:222;;;;:::o;14057:210::-;14144:4;14182:2;14171:9;14167:18;14159:26;;14195:65;14257:1;14246:9;14242:17;14233:6;14195:65;:::i;:::-;14057:210;;;;:::o;14273:222::-;14366:4;14404:2;14393:9;14389:18;14381:26;;14417:71;14485:1;14474:9;14470:17;14461:6;14417:71;:::i;:::-;14273:222;;;;:::o;14501:309::-;14612:4;14650:2;14639:9;14635:18;14627:26;;14699:9;14693:4;14689:20;14685:1;14674:9;14670:17;14663:47;14727:76;14798:4;14789:6;14727:76;:::i;:::-;14719:84;;14501:309;;;;:::o;14816:303::-;14924:4;14962:2;14951:9;14947:18;14939:26;;15011:9;15005:4;15001:20;14997:1;14986:9;14982:17;14975:47;15039:73;15107:4;15098:6;15039:73;:::i;:::-;15031:81;;14816:303;;;;:::o;15125:256::-;15235:4;15273:2;15262:9;15258:18;15250:26;;15286:88;15371:1;15360:9;15356:17;15347:6;15286:88;:::i;:::-;15125:256;;;;:::o;15387:419::-;15553:4;15591:2;15580:9;15576:18;15568:26;;15640:9;15634:4;15630:20;15626:1;15615:9;15611:17;15604:47;15668:131;15794:4;15668:131;:::i;:::-;15660:139;;15387:419;;;:::o;15812:::-;15978:4;16016:2;16005:9;16001:18;15993:26;;16065:9;16059:4;16055:20;16051:1;16040:9;16036:17;16029:47;16093:131;16219:4;16093:131;:::i;:::-;16085:139;;15812:419;;;:::o;16237:::-;16403:4;16441:2;16430:9;16426:18;16418:26;;16490:9;16484:4;16480:20;16476:1;16465:9;16461:17;16454:47;16518:131;16644:4;16518:131;:::i;:::-;16510:139;;16237:419;;;:::o;16662:::-;16828:4;16866:2;16855:9;16851:18;16843:26;;16915:9;16909:4;16905:20;16901:1;16890:9;16886:17;16879:47;16943:131;17069:4;16943:131;:::i;:::-;16935:139;;16662:419;;;:::o;17087:::-;17253:4;17291:2;17280:9;17276:18;17268:26;;17340:9;17334:4;17330:20;17326:1;17315:9;17311:17;17304:47;17368:131;17494:4;17368:131;:::i;:::-;17360:139;;17087:419;;;:::o;17512:::-;17678:4;17716:2;17705:9;17701:18;17693:26;;17765:9;17759:4;17755:20;17751:1;17740:9;17736:17;17729:47;17793:131;17919:4;17793:131;:::i;:::-;17785:139;;17512:419;;;:::o;17937:::-;18103:4;18141:2;18130:9;18126:18;18118:26;;18190:9;18184:4;18180:20;18176:1;18165:9;18161:17;18154:47;18218:131;18344:4;18218:131;:::i;:::-;18210:139;;17937:419;;;:::o;18362:::-;18528:4;18566:2;18555:9;18551:18;18543:26;;18615:9;18609:4;18605:20;18601:1;18590:9;18586:17;18579:47;18643:131;18769:4;18643:131;:::i;:::-;18635:139;;18362:419;;;:::o;18787:::-;18953:4;18991:2;18980:9;18976:18;18968:26;;19040:9;19034:4;19030:20;19026:1;19015:9;19011:17;19004:47;19068:131;19194:4;19068:131;:::i;:::-;19060:139;;18787:419;;;:::o;19212:411::-;19399:4;19437:3;19426:9;19422:19;19414:27;;19451:165;19613:1;19602:9;19598:17;19589:6;19451:165;:::i;:::-;19212:411;;;;:::o;19629:222::-;19722:4;19760:2;19749:9;19745:18;19737:26;;19773:71;19841:1;19830:9;19826:17;19817:6;19773:71;:::i;:::-;19629:222;;;;:::o;19857:636::-;20048:4;20086:3;20075:9;20071:19;20063:27;;20100:67;20164:1;20153:9;20149:17;20140:6;20100:67;:::i;:::-;20177:68;20241:2;20230:9;20226:18;20217:6;20177:68;:::i;:::-;20255:70;20321:2;20310:9;20306:18;20297:6;20255:70;:::i;:::-;20335;20401:2;20390:9;20386:18;20377:6;20335:70;:::i;:::-;20415:71;20481:3;20470:9;20466:19;20457:6;20415:71;:::i;:::-;19857:636;;;;;;;;:::o;20499:129::-;20533:6;20560:20;;:::i;:::-;20550:30;;20589:33;20617:4;20609:6;20589:33;:::i;:::-;20499:129;;;:::o;20634:75::-;20667:6;20700:2;20694:9;20684:19;;20634:75;:::o;20715:307::-;20776:4;20866:18;20858:6;20855:30;20852:56;;;20888:18;;:::i;:::-;20852:56;20926:29;20948:6;20926:29;:::i;:::-;20918:37;;21010:4;21004;21000:15;20992:23;;20715:307;;;:::o;21028:140::-;21076:4;21099:3;21091:11;;21122:3;21119:1;21112:14;21156:4;21153:1;21143:18;21135:26;;21028:140;;;:::o;21174:98::-;21225:6;21259:5;21253:12;21243:22;;21174:98;;;:::o;21278:168::-;21361:11;21395:6;21390:3;21383:19;21435:4;21430:3;21426:14;21411:29;;21278:168;;;;:::o;21452:147::-;21553:11;21590:3;21575:18;;21452:147;;;;:::o;21605:169::-;21689:11;21723:6;21718:3;21711:19;21763:4;21758:3;21754:14;21739:29;;21605:169;;;;:::o;21780:254::-;21819:3;21838:19;21855:1;21838:19;:::i;:::-;21833:24;;21871:19;21888:1;21871:19;:::i;:::-;21866:24;;21976:1;21956:18;21952:26;21949:1;21946:33;21943:59;;;21982:18;;:::i;:::-;21943:59;22026:1;22023;22019:9;22012:16;;21780:254;;;;:::o;22040:297::-;22079:7;22102:19;22119:1;22102:19;:::i;:::-;22097:24;;22135:19;22152:1;22135:19;:::i;:::-;22130:24;;22274:1;22254:18;22250:26;22247:1;22244:33;22239:1;22232:9;22225:17;22221:57;22218:83;;;22281:18;;:::i;:::-;22218:83;22329:1;22326;22322:9;22311:20;;22040:297;;;;:::o;22343:188::-;22382:4;22402:19;22419:1;22402:19;:::i;:::-;22397:24;;22435:19;22452:1;22435:19;:::i;:::-;22430:24;;22473:1;22470;22467:8;22464:34;;;22478:18;;:::i;:::-;22464:34;22523:1;22520;22516:9;22508:17;;22343:188;;;;:::o;22537:96::-;22574:7;22603:24;22621:5;22603:24;:::i;:::-;22592:35;;22537:96;;;:::o;22639:90::-;22673:7;22716:5;22709:13;22702:21;22691:32;;22639:90;;;:::o;22735:77::-;22772:7;22801:5;22790:16;;22735:77;;;:::o;22818:118::-;22855:7;22895:34;22888:5;22884:46;22873:57;;22818:118;;;:::o;22942:126::-;22979:7;23019:42;23012:5;23008:54;22997:65;;22942:126;;;:::o;23074:101::-;23110:7;23150:18;23143:5;23139:30;23128:41;;23074:101;;;:::o;23181:86::-;23216:7;23256:4;23249:5;23245:16;23234:27;;23181:86;;;:::o;23273:143::-;23340:9;23373:37;23404:5;23373:37;:::i;:::-;23360:50;;23273:143;;;:::o;23422:126::-;23472:9;23505:37;23536:5;23505:37;:::i;:::-;23492:50;;23422:126;;;:::o;23554:113::-;23604:9;23637:24;23655:5;23637:24;:::i;:::-;23624:37;;23554:113;;;:::o;23673:154::-;23757:6;23752:3;23747;23734:30;23819:1;23810:6;23805:3;23801:16;23794:27;23673:154;;;:::o;23833:307::-;23901:1;23911:113;23925:6;23922:1;23919:13;23911:113;;;24010:1;24005:3;24001:11;23995:18;23991:1;23986:3;23982:11;23975:39;23947:2;23944:1;23940:10;23935:15;;23911:113;;;24042:6;24039:1;24036:13;24033:101;;;24122:1;24113:6;24108:3;24104:16;24097:27;24033:101;23882:258;23833:307;;;:::o;24146:320::-;24190:6;24227:1;24221:4;24217:12;24207:22;;24274:1;24268:4;24264:12;24295:18;24285:81;;24351:4;24343:6;24339:17;24329:27;;24285:81;24413:2;24405:6;24402:14;24382:18;24379:38;24376:84;;;24432:18;;:::i;:::-;24376:84;24197:269;24146:320;;;:::o;24472:281::-;24555:27;24577:4;24555:27;:::i;:::-;24547:6;24543:40;24685:6;24673:10;24670:22;24649:18;24637:10;24634:34;24631:62;24628:88;;;24696:18;;:::i;:::-;24628:88;24736:10;24732:2;24725:22;24515:238;24472:281;;:::o;24759:183::-;24797:3;24820:23;24837:5;24820:23;:::i;:::-;24811:32;;24865:18;24858:5;24855:29;24852:55;;;24887:18;;:::i;:::-;24852:55;24934:1;24927:5;24923:13;24916:20;;24759:183;;;:::o;24948:180::-;24996:77;24993:1;24986:88;25093:4;25090:1;25083:15;25117:4;25114:1;25107:15;25134:180;25182:77;25179:1;25172:88;25279:4;25276:1;25269:15;25303:4;25300:1;25293:15;25320:180;25368:77;25365:1;25358:88;25465:4;25462:1;25455:15;25489:4;25486:1;25479:15;25506:180;25554:77;25551:1;25544:88;25651:4;25648:1;25641:15;25675:4;25672:1;25665:15;25692:180;25740:77;25737:1;25730:88;25837:4;25834:1;25827:15;25861:4;25858:1;25851:15;25878:117;25987:1;25984;25977:12;26001:117;26110:1;26107;26100:12;26124:117;26233:1;26230;26223:12;26247:117;26356:1;26353;26346:12;26370:102;26411:6;26462:2;26458:7;26453:2;26446:5;26442:14;26438:28;26428:38;;26370:102;;;:::o;26478:225::-;26618:34;26614:1;26606:6;26602:14;26595:58;26687:8;26682:2;26674:6;26670:15;26663:33;26478:225;:::o;26709:248::-;26849:34;26845:1;26837:6;26833:14;26826:58;26918:31;26913:2;26905:6;26901:15;26894:56;26709:248;:::o;26963:224::-;27103:34;27099:1;27091:6;27087:14;27080:58;27172:7;27167:2;27159:6;27155:15;27148:32;26963:224;:::o;27193:174::-;27333:26;27329:1;27321:6;27317:14;27310:50;27193:174;:::o;27373:234::-;27513:34;27509:1;27501:6;27497:14;27490:58;27582:17;27577:2;27569:6;27565:15;27558:42;27373:234;:::o;27613:247::-;27753:34;27749:1;27741:6;27737:14;27730:58;27822:30;27817:2;27809:6;27805:15;27798:55;27613:247;:::o;27866:182::-;28006:34;28002:1;27994:6;27990:14;27983:58;27866:182;:::o;28054:248::-;28194:34;28190:1;28182:6;28178:14;28171:58;28263:31;28258:2;28250:6;28246:15;28239:56;28054:248;:::o;28308:173::-;28448:25;28444:1;28436:6;28432:14;28425:49;28308:173;:::o;28487:122::-;28560:24;28578:5;28560:24;:::i;:::-;28553:5;28550:35;28540:63;;28599:1;28596;28589:12;28540:63;28487:122;:::o;28615:::-;28688:24;28706:5;28688:24;:::i;:::-;28681:5;28678:35;28668:63;;28727:1;28724;28717:12;28668:63;28615:122;:::o;28743:120::-;28815:23;28832:5;28815:23;:::i;:::-;28808:5;28805:34;28795:62;;28853:1;28850;28843:12;28795:62;28743:120;:::o;28869:118::-;28940:22;28956:5;28940:22;:::i;:::-;28933:5;28930:33;28920:61;;28977:1;28974;28967:12;28920:61;28869:118;:::o"},"gasEstimates":{"creation":{"codeDepositCost":"2154600","executionCost":"infinite","totalCost":"infinite"},"external":{"bytecode()":"infinite","clone()":"infinite","cloneDeterministic(bytes32)":"infinite","cloned()":"infinite","hash()":"2502","initialize(bytes)":"infinite","owner()":"2586","proxiableUUID()":"366","renounceOwnership()":"infinite","self()":"infinite","setWitnessingCollateral(uint64)":"infinite","setWitnessingFees(uint64,uint64)":"infinite","setWitnessingQuorum(uint8,uint8)":"infinite","template()":"infinite","totalWitnessingCollateral()":"infinite","totalWitnessingFee()":"infinite","transferOwnership(address)":"infinite","witnessingParams()":"infinite"}},"methodIdentifiers":{"bytecode()":"f0940002","clone()":"09ed4607","cloneDeterministic(bytes32)":"daaa360c","cloned()":"a04daef0","hash()":"09bd5a60","initialize(bytes)":"439fab91","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","renounceOwnership()":"715018a6","self()":"7104ddb2","setWitnessingCollateral(uint64)":"d9b9a961","setWitnessingFees(uint64,uint64)":"ff21c3ba","setWitnessingQuorum(uint8,uint8)":"d196c2e3","template()":"6f2ddd93","totalWitnessingCollateral()":"ef53d97a","totalWitnessingFee()":"8a481dad","transferOwnership(address)":"f2fde38b","witnessingParams()":"48f9b831"}},"metadata":"{\"compiler\":{\"version\":\"0.8.7+commit.e28d00a7\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"self\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"contract Clonable\",\"name\":\"clone\",\"type\":\"address\"}],\"name\":\"Cloned\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"by\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"numWitnesses\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"minWitnessingConsensus\",\"type\":\"uint8\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"witnssingCollateral\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"witnessingReward\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"witnessingUnitaryFee\",\"type\":\"uint64\"}],\"name\":\"WitnessingParamsChanged\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"bytecode\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"clone\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_instance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_salt\",\"type\":\"bytes32\"}],\"name\":\"cloneDeterministic\",\"outputs\":[{\"internalType\":\"contract Clonable\",\"name\":\"_instance\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cloned\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"hash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"proxiableUUID\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"self\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_witnessingCollateral\",\"type\":\"uint64\"}],\"name\":\"setWitnessingCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint64\",\"name\":\"_witnessingReward\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"_witnessingUnitaryFee\",\"type\":\"uint64\"}],\"name\":\"setWitnessingFees\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint8\",\"name\":\"_numWitnesses\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"_minWitnessingConsensus\",\"type\":\"uint8\"}],\"name\":\"setWitnessingQuorum\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"template\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalWitnessingCollateral\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalWitnessingFee\",\"outputs\":[{\"internalType\":\"uint128\",\"name\":\"\",\"type\":\"uint128\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"witnessingParams\",\"outputs\":[{\"components\":[{\"internalType\":\"uint8\",\"name\":\"numWitnesses\",\"type\":\"uint8\"},{\"internalType\":\"uint8\",\"name\":\"minWitnessingConsensus\",\"type\":\"uint8\"},{\"internalType\":\"uint64\",\"name\":\"witnessingCollateral\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"witnessingReward\",\"type\":\"uint64\"},{\"internalType\":\"uint64\",\"name\":\"witnessingUnitaryFee\",\"type\":\"uint64\"}],\"internalType\":\"struct WitnetRequestMalleableBase.WitnetRequestWitnessingParams\",\"name\":\"\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{\"clone()\":{\"details\":\"This function should always provide a new address, no matter how many times is actually called from the same `msg.sender`.\"},\"cloneDeterministic(bytes32)\":{\"details\":\"This function uses the CREATE2 opcode and a `_salt` to deterministically deploythe clone. Using the same `_salt` multiple time will revert, sinceno contract can be deployed more than once at the same address.\"},\"proxiableUUID()\":{\"details\":\"Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)See https://eips.ethereum.org/EIPS/eip-1822.\"},\"renounceOwnership()\":{\"details\":\"Leaves the contract without owner. It will not be possible to call `onlyOwner` functions anymore. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"},\"setWitnessingFees(uint64,uint64)\":{\"params\":{\"_witnessingReward\":\"Amount of nanowits that every request-solving witness will be rewarded with.\",\"_witnessingUnitaryFee\":\"Amount of nanowits that will be earned by Witnet miners for each each valid  commit/reveal transaction they include in a block.\"}},\"setWitnessingQuorum(uint8,uint8)\":{\"params\":{\"_minWitnessingConsensus\":\"Threshold percentage for aborting resolution of a request if the witnessing  nodes did not arrive to a broad consensus.\",\"_numWitnesses\":\"Number of witnesses required to be involved for solving this Witnet Data Request.\"}},\"transferOwnership(address)\":{\"details\":\"Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"bytecode()\":{\"notice\":\"Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\"},\"clone()\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage.\"},\"cloneDeterministic(bytes32)\":{\"notice\":\"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage.\"},\"cloned()\":{\"notice\":\"Tells whether this contract is a clone of another (i.e. `self()`)\"},\"hash()\":{\"notice\":\"Returns SHA256 hash of current Witnet Data Request bytecode.\"},\"owner()\":{\"notice\":\"Returns the address of the current owner.\"},\"self()\":{\"notice\":\"Immutable contract address that actually attends all calls to this contract.\"},\"setWitnessingCollateral(uint64)\":{\"notice\":\"Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\"},\"setWitnessingFees(uint64,uint64)\":{\"notice\":\"Specifies how much you want to pay for rewarding each of the Witnet nodes.\"},\"setWitnessingQuorum(uint8,uint8)\":{\"notice\":\"Sets how many Witnet nodes will be \\\"hired\\\" for resolving the request.\"},\"template()\":{\"notice\":\"Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol level, including no witnessing parameters at all.\"},\"totalWitnessingCollateral()\":{\"notice\":\"Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\"},\"totalWitnessingFee()\":{\"notice\":\"Returns total amount of nanowits that will have to be paid in total for this request to be solved.\"},\"witnessingParams()\":{\"notice\":\"Returns witnessing parameters of current Witnet Data Request.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol\":\"WitnetRequestRandomness\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\",\"useLiteralContent\":true},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"witnet-solidity-bridge/contracts/interfaces/IWitnetRequest.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\n/// @title The Witnet Data Request basic interface.\\n/// @author The Witnet Foundation.\\ninterface IWitnetRequest {\\n    /// A `IWitnetRequest` is constructed around a `bytes` value containing \\n    /// a well-formed Witnet Data Request using Protocol Buffers.\\n    function bytecode() external view returns (bytes memory);\\n\\n    /// Returns SHA256 hash of Witnet Data Request as CBOR-encoded bytes.\\n    function hash() external view returns (bytes32);\\n}\\n\",\"keccak256\":\"0xb455f625c6db8ce0525cb6ba8b2df2d85b37cfac6e2c5b64876b6f0e5bd22269\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/libs/Witnet.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\npragma experimental ABIEncoderV2;\\n\\nimport \\\"../interfaces/IWitnetRequest.sol\\\";\\n\\nlibrary Witnet {\\n\\n    /// @notice Witnet function that computes the hash of a CBOR-encoded Data Request.\\n    /// @param _bytecode CBOR-encoded RADON.\\n    function hash(bytes memory _bytecode) internal pure returns (bytes32) {\\n        return sha256(_bytecode);\\n    }\\n\\n    /// Struct containing both request and response data related to every query posted to the Witnet Request Board\\n    struct Query {\\n        Request request;\\n        Response response;\\n        address from;      // Address from which the request was posted.\\n    }\\n\\n    /// Possible status of a Witnet query.\\n    enum QueryStatus {\\n        Unknown,\\n        Posted,\\n        Reported,\\n        Deleted\\n    }\\n\\n    /// Data kept in EVM-storage for every Request posted to the Witnet Request Board.\\n    struct Request {\\n        IWitnetRequest addr;    // The contract containing the Data Request which execution has been requested.\\n        address requester;      // Address from which the request was posted.\\n        bytes32 hash;           // Hash of the Data Request whose execution has been requested.\\n        uint256 gasprice;       // Minimum gas price the DR resolver should pay on the solving tx.\\n        uint256 reward;         // Escrowed reward to be paid to the DR resolver.\\n    }\\n\\n    /// Data kept in EVM-storage containing Witnet-provided response metadata and result.\\n    struct Response {\\n        address reporter;       // Address from which the result was reported.\\n        uint256 timestamp;      // Timestamp of the Witnet-provided result.\\n        bytes32 drTxHash;       // Hash of the Witnet transaction that solved the queried Data Request.\\n        bytes   cborBytes;      // Witnet-provided result CBOR-bytes to the queried Data Request.\\n    }\\n\\n    /// Data struct containing the Witnet-provided result to a Data Request.\\n    struct Result {\\n        bool success;           // Flag stating whether the request could get solved successfully, or not.\\n        CBOR value;             // Resulting value, in CBOR-serialized bytes.\\n    }\\n\\n    /// Data struct following the RFC-7049 standard: Concise Binary Object Representation.\\n    struct CBOR {\\n        Buffer buffer;\\n        uint8 initialByte;\\n        uint8 majorType;\\n        uint8 additionalInformation;\\n        uint64 len;\\n        uint64 tag;\\n    }\\n\\n    /// Iterable bytes buffer.\\n    struct Buffer {\\n        bytes data;\\n        uint32 cursor;\\n    }\\n\\n    /// Witnet error codes table.\\n    enum ErrorCodes {\\n        // 0x00: Unknown error. Something went really bad!\\n        Unknown,\\n        // Script format errors\\n        /// 0x01: At least one of the source scripts is not a valid CBOR-encoded value.\\n        SourceScriptNotCBOR,\\n        /// 0x02: The CBOR value decoded from a source script is not an Array.\\n        SourceScriptNotArray,\\n        /// 0x03: The Array value decoded form a source script is not a valid Data Request.\\n        SourceScriptNotRADON,\\n        /// Unallocated\\n        ScriptFormat0x04,\\n        ScriptFormat0x05,\\n        ScriptFormat0x06,\\n        ScriptFormat0x07,\\n        ScriptFormat0x08,\\n        ScriptFormat0x09,\\n        ScriptFormat0x0A,\\n        ScriptFormat0x0B,\\n        ScriptFormat0x0C,\\n        ScriptFormat0x0D,\\n        ScriptFormat0x0E,\\n        ScriptFormat0x0F,\\n        // Complexity errors\\n        /// 0x10: The request contains too many sources.\\n        RequestTooManySources,\\n        /// 0x11: The script contains too many calls.\\n        ScriptTooManyCalls,\\n        /// Unallocated\\n        Complexity0x12,\\n        Complexity0x13,\\n        Complexity0x14,\\n        Complexity0x15,\\n        Complexity0x16,\\n        Complexity0x17,\\n        Complexity0x18,\\n        Complexity0x19,\\n        Complexity0x1A,\\n        Complexity0x1B,\\n        Complexity0x1C,\\n        Complexity0x1D,\\n        Complexity0x1E,\\n        Complexity0x1F,\\n        // Operator errors\\n        /// 0x20: The operator does not exist.\\n        UnsupportedOperator,\\n        /// Unallocated\\n        Operator0x21,\\n        Operator0x22,\\n        Operator0x23,\\n        Operator0x24,\\n        Operator0x25,\\n        Operator0x26,\\n        Operator0x27,\\n        Operator0x28,\\n        Operator0x29,\\n        Operator0x2A,\\n        Operator0x2B,\\n        Operator0x2C,\\n        Operator0x2D,\\n        Operator0x2E,\\n        Operator0x2F,\\n        // Retrieval-specific errors\\n        /// 0x30: At least one of the sources could not be retrieved, but returned HTTP error.\\n        HTTP,\\n        /// 0x31: Retrieval of at least one of the sources timed out.\\n        RetrievalTimeout,\\n        /// Unallocated\\n        Retrieval0x32,\\n        Retrieval0x33,\\n        Retrieval0x34,\\n        Retrieval0x35,\\n        Retrieval0x36,\\n        Retrieval0x37,\\n        Retrieval0x38,\\n        Retrieval0x39,\\n        Retrieval0x3A,\\n        Retrieval0x3B,\\n        Retrieval0x3C,\\n        Retrieval0x3D,\\n        Retrieval0x3E,\\n        Retrieval0x3F,\\n        // Math errors\\n        /// 0x40: Math operator caused an underflow.\\n        Underflow,\\n        /// 0x41: Math operator caused an overflow.\\n        Overflow,\\n        /// 0x42: Tried to divide by zero.\\n        DivisionByZero,\\n        /// Unallocated\\n        Math0x43,\\n        Math0x44,\\n        Math0x45,\\n        Math0x46,\\n        Math0x47,\\n        Math0x48,\\n        Math0x49,\\n        Math0x4A,\\n        Math0x4B,\\n        Math0x4C,\\n        Math0x4D,\\n        Math0x4E,\\n        Math0x4F,\\n        // Other errors\\n        /// 0x50: Received zero reveals\\n        NoReveals,\\n        /// 0x51: Insufficient consensus in tally precondition clause\\n        InsufficientConsensus,\\n        /// 0x52: Received zero commits\\n        InsufficientCommits,\\n        /// 0x53: Generic error during tally execution\\n        TallyExecution,\\n        /// Unallocated\\n        OtherError0x54,\\n        OtherError0x55,\\n        OtherError0x56,\\n        OtherError0x57,\\n        OtherError0x58,\\n        OtherError0x59,\\n        OtherError0x5A,\\n        OtherError0x5B,\\n        OtherError0x5C,\\n        OtherError0x5D,\\n        OtherError0x5E,\\n        OtherError0x5F,\\n        /// 0x60: Invalid reveal serialization (malformed reveals are converted to this value)\\n        MalformedReveal,\\n        /// Unallocated\\n        OtherError0x61,\\n        OtherError0x62,\\n        OtherError0x63,\\n        OtherError0x64,\\n        OtherError0x65,\\n        OtherError0x66,\\n        OtherError0x67,\\n        OtherError0x68,\\n        OtherError0x69,\\n        OtherError0x6A,\\n        OtherError0x6B,\\n        OtherError0x6C,\\n        OtherError0x6D,\\n        OtherError0x6E,\\n        OtherError0x6F,\\n        // Access errors\\n        /// 0x70: Tried to access a value from an index using an index that is out of bounds\\n        ArrayIndexOutOfBounds,\\n        /// 0x71: Tried to access a value from a map using a key that does not exist\\n        MapKeyNotFound,\\n        /// Unallocated\\n        OtherError0x72,\\n        OtherError0x73,\\n        OtherError0x74,\\n        OtherError0x75,\\n        OtherError0x76,\\n        OtherError0x77,\\n        OtherError0x78,\\n        OtherError0x79,\\n        OtherError0x7A,\\n        OtherError0x7B,\\n        OtherError0x7C,\\n        OtherError0x7D,\\n        OtherError0x7E,\\n        OtherError0x7F,\\n        OtherError0x80,\\n        OtherError0x81,\\n        OtherError0x82,\\n        OtherError0x83,\\n        OtherError0x84,\\n        OtherError0x85,\\n        OtherError0x86,\\n        OtherError0x87,\\n        OtherError0x88,\\n        OtherError0x89,\\n        OtherError0x8A,\\n        OtherError0x8B,\\n        OtherError0x8C,\\n        OtherError0x8D,\\n        OtherError0x8E,\\n        OtherError0x8F,\\n        OtherError0x90,\\n        OtherError0x91,\\n        OtherError0x92,\\n        OtherError0x93,\\n        OtherError0x94,\\n        OtherError0x95,\\n        OtherError0x96,\\n        OtherError0x97,\\n        OtherError0x98,\\n        OtherError0x99,\\n        OtherError0x9A,\\n        OtherError0x9B,\\n        OtherError0x9C,\\n        OtherError0x9D,\\n        OtherError0x9E,\\n        OtherError0x9F,\\n        OtherError0xA0,\\n        OtherError0xA1,\\n        OtherError0xA2,\\n        OtherError0xA3,\\n        OtherError0xA4,\\n        OtherError0xA5,\\n        OtherError0xA6,\\n        OtherError0xA7,\\n        OtherError0xA8,\\n        OtherError0xA9,\\n        OtherError0xAA,\\n        OtherError0xAB,\\n        OtherError0xAC,\\n        OtherError0xAD,\\n        OtherError0xAE,\\n        OtherError0xAF,\\n        OtherError0xB0,\\n        OtherError0xB1,\\n        OtherError0xB2,\\n        OtherError0xB3,\\n        OtherError0xB4,\\n        OtherError0xB5,\\n        OtherError0xB6,\\n        OtherError0xB7,\\n        OtherError0xB8,\\n        OtherError0xB9,\\n        OtherError0xBA,\\n        OtherError0xBB,\\n        OtherError0xBC,\\n        OtherError0xBD,\\n        OtherError0xBE,\\n        OtherError0xBF,\\n        OtherError0xC0,\\n        OtherError0xC1,\\n        OtherError0xC2,\\n        OtherError0xC3,\\n        OtherError0xC4,\\n        OtherError0xC5,\\n        OtherError0xC6,\\n        OtherError0xC7,\\n        OtherError0xC8,\\n        OtherError0xC9,\\n        OtherError0xCA,\\n        OtherError0xCB,\\n        OtherError0xCC,\\n        OtherError0xCD,\\n        OtherError0xCE,\\n        OtherError0xCF,\\n        OtherError0xD0,\\n        OtherError0xD1,\\n        OtherError0xD2,\\n        OtherError0xD3,\\n        OtherError0xD4,\\n        OtherError0xD5,\\n        OtherError0xD6,\\n        OtherError0xD7,\\n        OtherError0xD8,\\n        OtherError0xD9,\\n        OtherError0xDA,\\n        OtherError0xDB,\\n        OtherError0xDC,\\n        OtherError0xDD,\\n        OtherError0xDE,\\n        OtherError0xDF,\\n        // Bridge errors: errors that only belong in inter-client communication\\n        /// 0xE0: Requests that cannot be parsed must always get this error as their result.\\n        /// However, this is not a valid result in a Tally transaction, because invalid requests\\n        /// are never included into blocks and therefore never get a Tally in response.\\n        BridgeMalformedRequest,\\n        /// 0xE1: Witnesses exceeds 100\\n        BridgePoorIncentives,\\n        /// 0xE2: The request is rejected on the grounds that it may cause the submitter to spend or stake an\\n        /// amount of value that is unjustifiably high when compared with the reward they will be getting\\n        BridgeOversizedResult,\\n        /// Unallocated\\n        OtherError0xE3,\\n        OtherError0xE4,\\n        OtherError0xE5,\\n        OtherError0xE6,\\n        OtherError0xE7,\\n        OtherError0xE8,\\n        OtherError0xE9,\\n        OtherError0xEA,\\n        OtherError0xEB,\\n        OtherError0xEC,\\n        OtherError0xED,\\n        OtherError0xEE,\\n        OtherError0xEF,\\n        OtherError0xF0,\\n        OtherError0xF1,\\n        OtherError0xF2,\\n        OtherError0xF3,\\n        OtherError0xF4,\\n        OtherError0xF5,\\n        OtherError0xF6,\\n        OtherError0xF7,\\n        OtherError0xF8,\\n        OtherError0xF9,\\n        OtherError0xFA,\\n        OtherError0xFB,\\n        OtherError0xFC,\\n        OtherError0xFD,\\n        OtherError0xFE,\\n        // This should not exist:\\n        /// 0xFF: Some tally error is not intercepted but should\\n        UnhandledIntercept\\n    }\\n}\\n\",\"keccak256\":\"0x7875cbaff083818824bcec302443788fb5723b161952fdf28a0ddd7c4b3a9b3e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Clonable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\nimport \\\"./Initializable.sol\\\";\\n\\nabstract contract Clonable is Initializable {\\n    /// Immutable contract address that actually attends all calls to this contract.\\n    /// @dev Differs from `address(this)` when reached within a DELEGATECALL.\\n    address immutable public self = address(this);\\n\\n    event Cloned(address indexed by, Clonable indexed self, Clonable indexed clone);\\n\\n    /// Tells whether this contract is a clone of another (i.e. `self()`)\\n    function cloned()\\n        public view\\n        returns (bool)\\n    {\\n        return (\\n            address(this) != self\\n        );\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function clone()\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            // begin minimal proxy construction bytecode:\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE new instance:\\n            _instance := create(0, ptr, 0x37)\\n        }        \\n        require(address(_instance) != address(0), \\\"Clonable: CREATE failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple times will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1167.\\n    /// @dev See https://blog.openzeppelin.com/deep-dive-into-the-minimal-proxy-contract/.\\n    function cloneDeterministic(bytes32 _salt)\\n        public virtual\\n        returns (Clonable _instance)\\n    {\\n        address _self = self;\\n        assembly {\\n            // ptr to free mem:\\n            let ptr := mload(0x40)\\n            mstore(ptr, 0x3d602d80600a3d3981f3363d3d373d3d3d363d73000000000000000000000000)\\n            // make minimal proxy delegate all calls to `self()`:\\n            mstore(add(ptr, 0x14), shl(0x60, _self))\\n            // end minimal proxy construction bytecode:\\n            mstore(add(ptr, 0x28), 0x5af43d82803e903d91602b57fd5bf30000000000000000000000000000000000)\\n            // CREATE2 new instance:\\n            _instance := create2(0, ptr, 0x37, _salt)\\n        }\\n        require(address(_instance) != address(0), \\\"Clonable: CREATE2 failed\\\");\\n        emit Cloned(msg.sender, Clonable(self), _instance);\\n    }\\n}\\n\",\"keccak256\":\"0xbb8cfcfc7f44e289bd3dff357e1bb3da5809b2a39b58b7805aa3bfc1ec47ff2d\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Context.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity ^0.8.0;\\n\\n/// @dev Provides information about the current execution context, including the\\n/// sender of the transaction and its data. While these are generally available\\n/// via msg.sender and msg.data, they should not be accessed in such a direct\\n/// manner, since when dealing with meta-transactions the account sending and\\n/// paying for execution may not be the actual sender (as far as an application\\n/// is concerned).\\nabstract contract Context {\\n    function _msgSender() internal view virtual returns (address) {\\n        return msg.sender;\\n    }\\n\\n    function _msgData() internal view virtual returns (bytes calldata) {\\n        return msg.data;\\n    }\\n\\n    function _msgValue() internal view virtual returns (uint256) {\\n        return msg.value;\\n    }\\n}\\n\",\"keccak256\":\"0x1a17c0fd9fcd98aa49c5c428a415634b9db839e560f20da81f7c223a18ad12fc\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Initializable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Initializable {\\n    /// @dev Initialize contract's storage context.\\n    function initialize(bytes calldata) external;\\n}\\n\",\"keccak256\":\"0x17c2e66648596deb4f71dbaaa4b95293c99536431e7697f3b69d205a09796f0e\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Ownable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n// OpenZeppelin Contracts v4.3.2 (access/Ownable.sol)\\n\\npragma solidity ^0.8.0;\\n\\nimport \\\"./Context.sol\\\";\\n\\n/// @dev Contract module which provides a basic access control mechanism, where\\n/// there is an account (an owner) that can be granted exclusive access to\\n/// specific functions.\\n///\\n/// By default, the owner account will be the one that deploys the contract. This\\n/// can later be changed with {transferOwnership}.\\n///\\n/// This module is used through inheritance. It will make available the modifier\\n/// `onlyOwner`, which can be applied to your functions to restrict their use to\\n/// the owner.\\n\\nabstract contract Ownable is Context {\\n    address private _owner;\\n\\n    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);\\n\\n    /// @dev Initializes the contract setting the deployer as the initial owner.\\n    constructor() {\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    /// @dev Returns the address of the current owner.\\n    function owner() public view virtual returns (address) {\\n        return _owner;\\n    }\\n\\n    /// @dev Throws if called by any account other than the owner.\\n    modifier onlyOwner() {\\n        require(owner() == _msgSender(), \\\"Ownable: caller is not the owner\\\");\\n        _;\\n    }\\n\\n    /// @dev Leaves the contract without owner. It will not be possible to call\\n    /// `onlyOwner` functions anymore. Can only be called by the current owner.\\n    /// NOTE: Renouncing ownership will leave the contract without an owner,\\n    /// thereby removing any functionality that is only available to the owner.\\n    function renounceOwnership() public virtual onlyOwner {\\n        _transferOwnership(address(0));\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Can only be called by the current owner.\\n    function transferOwnership(address newOwner) public virtual onlyOwner {\\n        require(newOwner != address(0), \\\"Ownable: new owner is the zero address\\\");\\n        _transferOwnership(newOwner);\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    /// Internal function without access restriction.\\n    function _transferOwnership(address newOwner) internal virtual {\\n        address oldOwner = _owner;\\n        _owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n}\",\"keccak256\":\"0xb8ce9f1e03440d40dbb9898c5ec2cfad520ccd3a5c76176058c44f5033c656a2\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/patterns/Proxiable.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.6.0 <0.9.0;\\n\\ninterface Proxiable {\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID() external pure returns (bytes32);\\n}\\n\",\"keccak256\":\"0x3ed71dc147c30cd8aa1ca248a045217b6ea513bae96c4c76d66496af4b8d6ff1\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestMalleableBase.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"../libs/Witnet.sol\\\";\\nimport \\\"../patterns/Clonable.sol\\\";\\nimport \\\"../patterns/Ownable.sol\\\";\\nimport \\\"../patterns/Proxiable.sol\\\";\\n\\nabstract contract WitnetRequestMalleableBase\\n    is\\n        IWitnetRequest,\\n        Clonable,\\n        Ownable,\\n        Proxiable\\n{   \\n    using Witnet for *;\\n\\n    event WitnessingParamsChanged(\\n        address indexed by,\\n        uint8 numWitnesses,\\n        uint8 minWitnessingConsensus,\\n        uint64 witnssingCollateral,\\n        uint64 witnessingReward,\\n        uint64 witnessingUnitaryFee\\n    );\\n\\n    struct WitnetRequestMalleableBaseContext {\\n        /// Contract owner address.\\n        address owner;\\n        /// Immutable bytecode template.\\n        bytes template;\\n        /// Current request bytecode.\\n        bytes bytecode;\\n        /// Current request hash.\\n        bytes32 hash;\\n        /// Current request witnessing params.\\n        WitnetRequestWitnessingParams params;\\n    }\\n\\n    struct WitnetRequestWitnessingParams {\\n        /// Number of witnesses required to be involved for solving this Witnet Data Request.\\n        uint8 numWitnesses;\\n\\n        /// Threshold percentage for aborting resolution of a request if the witnessing nodes did not arrive to a broad consensus.\\n        uint8 minWitnessingConsensus;\\n\\n        /// Amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n        uint64 witnessingCollateral;\\n\\n        /// Amount of nanowits that every request-solving witness will be rewarded with.\\n        uint64 witnessingReward;\\n\\n        /// Amount of nanowits that will be earned by Witnet miners for each each valid commit/reveal transaction they include in a block.\\n        uint64 witnessingUnitaryFee;\\n    }\\n\\n    /// Returns current Witnet Data Request bytecode, encoded using Protocol Buffers.\\n    function bytecode() external view override returns (bytes memory) {\\n        return _request().bytecode;\\n    }\\n\\n    /// Returns SHA256 hash of current Witnet Data Request bytecode.\\n    function hash() external view override returns (bytes32) {\\n        return _request().hash;\\n    }\\n\\n    /// Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction.\\n    function setWitnessingCollateral(uint64 _witnessingCollateral)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingCollateral = _witnessingCollateral;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Specifies how much you want to pay for rewarding each of the Witnet nodes.\\n    /// @param _witnessingReward Amount of nanowits that every request-solving witness will be rewarded with.\\n    /// @param _witnessingUnitaryFee Amount of nanowits that will be earned by Witnet miners for each each valid \\n    /// commit/reveal transaction they include in a block.\\n    function setWitnessingFees(uint64 _witnessingReward, uint64 _witnessingUnitaryFee)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.witnessingReward = _witnessingReward;\\n        _params.witnessingUnitaryFee = _witnessingUnitaryFee;\\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Sets how many Witnet nodes will be \\\"hired\\\" for resolving the request.\\n    /// @param _numWitnesses Number of witnesses required to be involved for solving this Witnet Data Request.\\n    /// @param _minWitnessingConsensus Threshold percentage for aborting resolution of a request if the witnessing \\n    /// nodes did not arrive to a broad consensus.\\n    function setWitnessingQuorum(uint8 _numWitnesses, uint8 _minWitnessingConsensus)\\n        public\\n        virtual\\n        onlyOwner\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = _numWitnesses;\\n        _params.minWitnessingConsensus = _minWitnessingConsensus;\\n        _malleateBytecode(\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol\\n    /// level, including no witnessing parameters at all.\\n    function template()\\n        external view\\n        returns (bytes memory)\\n    {\\n        return _request().template;\\n    }\\n\\n    /// Returns total amount of nanowits that witnessing nodes will need to collateralize all together.\\n    function totalWitnessingCollateral()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * _params.witnessingCollateral;\\n    }\\n\\n    /// Returns total amount of nanowits that will have to be paid in total for this request to be solved.\\n    function totalWitnessingFee()\\n        external view\\n        returns (uint128)\\n    {\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        return _params.numWitnesses * (2 * _params.witnessingUnitaryFee + _params.witnessingReward);\\n    }\\n\\n    /// Returns witnessing parameters of current Witnet Data Request.\\n    function witnessingParams()\\n        external view\\n        returns (WitnetRequestWitnessingParams memory)\\n    {\\n        return _request().params;\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Clonable' overriden functions -----------------------------------------------------------------------------\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract\\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function should always provide a new address, no matter how many times \\n    /// @dev is actually called from the same `msg.sender`.\\n    function clone()\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.clone();\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n    /// Deploys and returns the address of a minimal proxy clone that replicates contract \\n    /// behaviour while using its own EVM storage.\\n    /// @dev This function uses the CREATE2 opcode and a `_salt` to deterministically deploy\\n    /// @dev the clone. Using the same `_salt` multiple time will revert, since\\n    /// @dev no contract can be deployed more than once at the same address.\\n    function cloneDeterministic(bytes32 _salt)\\n        public\\n        virtual override\\n        returns (Clonable _instance)\\n    {\\n        _instance = super.cloneDeterministic(_salt);\\n        _instance.initialize(_request().template);\\n        Ownable(address(_instance)).transferOwnership(msg.sender);\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- 'Initializable' overriden functions ------------------------------------------------------------------------\\n\\n    /// @dev Initializes contract's storage context.\\n    function initialize(bytes memory _template)\\n        public\\n        virtual override\\n    {\\n        require(_request().template.length == 0, \\\"WitnetRequestMalleableBase: already initialized\\\");\\n        _initialize(_template);\\n        _transferOwnership(_msgSender());\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Ownable' overriden functions ------------------------------------------------------------------------------\\n\\n    /// Returns the address of the current owner.\\n    function owner()\\n        public view\\n        virtual override\\n        returns (address)\\n    {\\n        return _request().owner;\\n    }\\n\\n    /// @dev Transfers ownership of the contract to a new account (`newOwner`).\\n    function _transferOwnership(address newOwner)\\n        internal\\n        virtual override\\n    {\\n        address oldOwner = _request().owner;\\n        _request().owner = newOwner;\\n        emit OwnershipTransferred(oldOwner, newOwner);\\n    }\\n\\n    // ================================================================================================================\\n    // --- 'Proxiable 'overriden functions ----------------------------------------------------------------------------\\n\\n    /// @dev Complying with EIP-1822: Universal Upgradable Proxy Standard (UUPS)\\n    /// @dev See https://eips.ethereum.org/EIPS/eip-1822.\\n    function proxiableUUID()\\n        external pure\\n        virtual override\\n        returns (bytes32)\\n    {\\n        return (\\n            /* keccak256(\\\"io.witnet.requests.malleable\\\") */\\n            0x851d0a92a3ad30295bef33afc69d6874779826b7789386b336e22621365ed2c2\\n        );\\n    }\\n\\n\\n    // ================================================================================================================\\n    // --- INTERNAL FUNCTIONS -----------------------------------------------------------------------------------------    \\n\\n    /// @dev Initializes witnessing params and template bytecode.\\n    function _initialize(bytes memory _template)\\n        internal\\n    {\\n        assert(_template.length > 0);\\n        _request().template = _template;\\n\\n        WitnetRequestWitnessingParams storage _params = _request().params;\\n        _params.numWitnesses = 2;\\n        _params.minWitnessingConsensus = 51;\\n        _params.witnessingCollateral = 10 ** 9;      // 1 WIT\\n        _params.witnessingReward = 5 * 10 ** 5;      // 0.5 milliWITs\\n        _params.witnessingUnitaryFee = 25 * 10 ** 4; // 0.25 milliWITs\\n        \\n        _malleateBytecode(\\n            _params.numWitnesses,\\n            _params.minWitnessingConsensus,\\n            _params.witnessingCollateral,\\n            _params.witnessingReward,\\n            _params.witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Serializes new `bytecode` by combining immutable template with given parameters.\\n    function _malleateBytecode(\\n            uint8 _numWitnesses,\\n            uint8 _minWitnessingConsensus,\\n            uint64 _witnessingCollateral,\\n            uint64 _witnessingReward,\\n            uint64 _witnessingUnitaryFee\\n        )\\n        internal\\n        virtual\\n    {\\n        require(\\n            _witnessingReward > 0,\\n            \\\"WitnetRequestMalleableBase: no reward\\\"\\n        );\\n        require(\\n            _numWitnesses >= 1 && _numWitnesses <= 127,\\n            \\\"WitnetRequestMalleableBase: number of witnesses out of range\\\"\\n        );\\n        require(\\n            _minWitnessingConsensus >= 51 && _minWitnessingConsensus <= 99,\\n            \\\"WitnetRequestMalleableBase: witnessing consensus out of range\\\"\\n        );\\n        require(\\n            _witnessingCollateral >= 10 ** 9,\\n            \\\"WitnetRequestMalleableBase: witnessing collateral below 1 WIT\\\"\\n        );\\n\\n        _request().bytecode = abi.encodePacked(\\n            _request().template,\\n            _uint64varint(bytes1(0x10), _witnessingReward),\\n            _uint8varint(bytes1(0x18), _numWitnesses),\\n            _uint64varint(0x20, _witnessingUnitaryFee),\\n            _uint8varint(0x28, _minWitnessingConsensus),\\n            _uint64varint(0x30, _witnessingCollateral)\\n        );\\n        _request().hash = _request().bytecode.hash();\\n        emit WitnessingParamsChanged(\\n            msg.sender,\\n            _numWitnesses,\\n            _minWitnessingConsensus,\\n            _witnessingCollateral,\\n            _witnessingReward,\\n            _witnessingUnitaryFee\\n        );\\n    }\\n\\n    /// @dev Returns pointer to storage slot where State struct is located.\\n    function _request()\\n        internal pure\\n        virtual\\n        returns (WitnetRequestMalleableBaseContext storage _ptr)\\n    {\\n        assembly {\\n            _ptr.slot :=\\n                /* keccak256(\\\"io.witnet.requests.malleable.context\\\") */\\n                0x375930152e1d0d102998be6e496b0cee86c9ecd0efef01014ecff169b17dfba7\\n        }\\n    }\\n\\n    /// @dev Encode uint64 into tagged varint.\\n    /// @dev See https://developers.google.com/protocol-buffers/docs/encoding#varints.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint64varint(bytes1 t, uint64 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        // Count the number of groups of 7 bits\\n        // We need this pre-processing step since Solidity doesn't allow dynamic memory resizing\\n        uint64 tmp = n;\\n        uint64 numBytes = 2;\\n        while (tmp > 0x7F) {\\n            tmp = tmp >> 7;\\n            numBytes += 1;\\n        }\\n        bytes memory buf = new bytes(numBytes);\\n        tmp = n;\\n        buf[0] = t;\\n        for (uint64 i = 1; i < numBytes; i++) {\\n            // Set the first bit in the byte for each group of 7 bits\\n            buf[i] = bytes1(0x80 | uint8(tmp & 0x7F));\\n            tmp = tmp >> 7;\\n        }\\n        // Unset the first bit of the last byte\\n        buf[numBytes - 1] &= 0x7F;\\n        return buf;\\n    }\\n\\n    /// @dev Encode uint8 into tagged varint.\\n    /// @param t Tag\\n    /// @param n Number\\n    /// @return Marshaled bytes\\n    function _uint8varint(bytes1 t, uint8 n)\\n        internal pure\\n        returns (bytes memory)\\n    {\\n        return _uint64varint(t, uint64(n));\\n    }\\n}\\n\",\"keccak256\":\"0x53d0d402776e310c678643ed6b07d4f73511de9d1fa73732abf4251d69755b22\",\"license\":\"MIT\"},\"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol\":{\"content\":\"// SPDX-License-Identifier: MIT\\n\\npragma solidity >=0.7.0 <0.9.0;\\n\\nimport \\\"./WitnetRequestMalleableBase.sol\\\";\\n\\ncontract WitnetRequestRandomness is WitnetRequestMalleableBase {\\n    bytes internal constant _WITNET_RANDOMNESS_BYTECODE_TEMPLATE = hex\\\"0a0f120508021a01801a0210022202100b\\\";\\n\\n    constructor() {\\n        initialize(bytes(\\\"\\\"));\\n    }\\n\\n    function initialize(bytes memory)\\n        public\\n        virtual override\\n    {\\n        super.initialize(_WITNET_RANDOMNESS_BYTECODE_TEMPLATE);\\n    }\\n}\\n\",\"keccak256\":\"0xc3b4a7d0dc396fb83b71beeae2a6d7de86b300919f894fcae73b7680829d716f\",\"license\":\"MIT\"}},\"version\":1}","storageLayout":{"storage":[{"astId":8003,"contract":"witnet-solidity-bridge/contracts/requests/WitnetRequestRandomness.sol:WitnetRequestRandomness","label":"_owner","offset":0,"slot":"0","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"}}},"userdoc":{"kind":"user","methods":{"bytecode()":{"notice":"Returns current Witnet Data Request bytecode, encoded using Protocol Buffers."},"clone()":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract behaviour while using its own EVM storage."},"cloneDeterministic(bytes32)":{"notice":"Deploys and returns the address of a minimal proxy clone that replicates contract  behaviour while using its own EVM storage."},"cloned()":{"notice":"Tells whether this contract is a clone of another (i.e. `self()`)"},"hash()":{"notice":"Returns SHA256 hash of current Witnet Data Request bytecode."},"owner()":{"notice":"Returns the address of the current owner."},"self()":{"notice":"Immutable contract address that actually attends all calls to this contract."},"setWitnessingCollateral(uint64)":{"notice":"Sets amount of nanowits that a witness solving the request will be required to collateralize in the commitment transaction."},"setWitnessingFees(uint64,uint64)":{"notice":"Specifies how much you want to pay for rewarding each of the Witnet nodes."},"setWitnessingQuorum(uint8,uint8)":{"notice":"Sets how many Witnet nodes will be \"hired\" for resolving the request."},"template()":{"notice":"Returns immutable template bytecode: actual CBOR-encoded data request at the Witnet protocol level, including no witnessing parameters at all."},"totalWitnessingCollateral()":{"notice":"Returns total amount of nanowits that witnessing nodes will need to collateralize all together."},"totalWitnessingFee()":{"notice":"Returns total amount of nanowits that will have to be paid in total for this request to be solved."},"witnessingParams()":{"notice":"Returns witnessing parameters of current Witnet Data Request."}},"version":1}}}}}}